*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#3B2A1B;background:#fff}.topbar{background:#3B2A1B;color:#fff;text-align:center;font-size:11px;letter-spacing:1.5px;padding:9px}.headrow{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:20px}.logo{font:normal 27px Georgia,serif;letter-spacing:3px;color:#3B2A1B;text-decoration:none;white-space:nowrap}.logo span{color:#D0AC56}.search{display:flex;width:44%}.search input[type=text]{width:100%;padding:12px;border:1px solid #ddd}.search input[type=submit]{background:#D0AC56;color:#fff;border:0;padding:0 20px}.headlinks{display:flex;gap:20px}.headlinks a{color:#3B2A1B;text-decoration:none;font-size:13px}.mainnav{border-top:1px solid #eee;border-bottom:1px solid #ddd;display:flex;justify-content:center;align-items:center;gap:2px;background:#fff;position:relative;z-index:50}.mainnav>a,.navitem>a{display:block;padding:17px 14px;color:#3B2A1B;text-decoration:none;font-size:11px;letter-spacing:1px}.navitem{position:static}.navitem:hover>a{color:#D0AC56}.mega{position:absolute;display:none;left:0;right:0;top:100%;background:#fff;border-top:2px solid #D0AC56;box-shadow:0 8px 20px rgba(0,0,0,.15);padding:28px max(25px,calc((100% - 1180px)/2));grid-template-columns:1.2fr 1.2fr 1.2fr 1fr;gap:35px}.navitem:hover .mega{display:grid}.mega h4{font-size:11px;letter-spacing:1.5px;color:#D0AC56;margin:0 0 14px}.mega a{display:block;color:#756454;text-decoration:none;font-size:13px;padding:6px 0}.mega a:hover{color:#D0AC56}.megaPromo{min-height:170px;background:linear-gradient(135deg,#F3E9D8,#F7F2E9);padding:25px;display:flex;flex-direction:column;justify-content:center;color:#3B2A1B}.megaPromo.diamond{background:linear-gradient(135deg,#eee,#bdb4a9)}.megaPromo.silver{background:linear-gradient(135deg,#eee,#b5b5b5)}.megaPromo b{font:normal 20px Georgia,serif}.megaPromo span{font-size:12px;margin:10px 0 15px}.megaPromo a{color:#fff!important;background:#6B4A2D!important;padding:9px 12px!important;width:max-content}.offer{color:#a33!important}.hero{height:520px;background:url('https://images.pexels.com/photos/26570970/pexels-photo-26570970.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover no-repeat;position:relative}.heroText{position:absolute;left:10%;top:120px}.eyebrow{letter-spacing:3px;font-size:11px;color:#D0AC56}.hero h1{font:normal 54px Georgia,serif;line-height:1.08;margin:16px 0;color:#3B2A1B}.hero p{font-size:16px}.btn{display:inline-block;background:#3B2A1B;color:#fff!important;border:0;padding:13px 25px;text-decoration:none;font-size:11px;letter-spacing:1px;margin-top:10px}.outline{background:#fff!important;color:#3B2A1B!important;border:1px solid #3B2A1B}.section{max-width:1200px;margin:55px auto;padding:0 20px}.section>h2,.banner h2,.rate h2{font:normal 27px Georgia,serif;letter-spacing:2px;text-align:center}.catgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.cat{height:230px;margin-top:25px;display:flex;align-items:end;justify-content:center;padding-bottom:25px;color:#fff;font:normal 25px Georgia,serif;text-shadow:0 1px 4px #222}.cat1{background:linear-gradient(#E9DCC8,#6B4A2D)}.cat2{background:linear-gradient(#E9DCC8,#6B4A2D)}.cat3{background:linear-gradient(#F3E9D8,#9B856C)}.cat4{background:linear-gradient(#E9DCC8,#8B6A42)}.catgrid a{text-decoration:none}.banner{height:320px;margin:50px 0;background:url('https://images.pexels.com/photos/30276932/pexels-photo-30276932.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover no-repeat;color:#fff;text-align:center;padding-top:75px}.banner h2{color:#fff}.banner .eyebrow{color:#F7F2E9}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.product{text-align:center;position:relative}.product img{width:100%;height:285px;object-fit:cover;background:#eee}.product h3{font:normal 18px Georgia,serif;margin:12px 0 5px}.product p{font-size:12px;color:#777}.product strong{font-size:16px;color:#3B2A1B}.link{display:block;color:#3B2A1B;text-decoration:none;font-size:11px;margin-top:12px}.wish{position:absolute;right:10px;top:10px;z-index:2}.wish a{display:block;background:#fff;border-radius:50%;padding:8px;color:#3B2A1B;text-decoration:none}.rate{background:#F7F2E9;padding:50px;text-align:center}.rates{display:flex;justify-content:center;gap:90px;margin-top:25px}.rates div{font-size:11px;letter-spacing:1px}.rates b{display:block;font-size:18px;color:#3B2A1B;margin-top:8px}.pagehead{text-align:center;padding:55px 20px;background:#F7F2E9}.pagehead h1{font:normal 36px Georgia,serif;letter-spacing:2px}.filters{max-width:1200px;margin:25px auto;padding:0 20px;display:flex;gap:10px}.filters input,.filters select{padding:11px;border:1px solid #ddd;min-width:200px}.small{padding:11px 20px!important;margin:0}.listing{max-width:1200px;margin:30px auto 70px;padding:0 20px}.detail{max-width:1100px;margin:55px auto 90px;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:0 20px}.detailimg{width:100%;height:560px;object-fit:cover;background:#eee}.detailinfo h1{font:normal 40px Georgia,serif}.stars{color:#F7F2E9;letter-spacing:4px}.detailinfo h2{font-size:28px;color:#3B2A1B}.detailinfo table{width:100%;border-collapse:collapse;margin:25px 0}.detailinfo td{padding:12px;border-bottom:1px solid #eee}.cartbox{max-width:1000px;margin:50px auto 100px;padding:0 20px}.cartrow{display:grid;grid-template-columns:120px 1fr 130px 120px;align-items:center;gap:25px;padding:20px 0;border-bottom:1px solid #ddd}.cartrow img{width:120px;height:120px;object-fit:cover}.cartrow a{color:#3B2A1B}.qty a{padding:5px 10px;border:1px solid #ddd;text-decoration:none}.grand{display:flex;justify-content:space-between;font-size:23px;color:#3B2A1B;padding:25px 0}.formbox{max-width:500px;margin:60px auto 100px;padding:40px;background:#F7F9FC}.formbox.wide{max-width:700px}.formbox input,.formbox textarea,.formbox select{width:100%;padding:13px;margin:7px 0;border:1px solid #ddd}.message{display:block;margin-top:15px;color:#3B2A1B}.account{max-width:700px;margin:70px auto;padding:30px;text-align:center;min-height:350px}.account a{margin:10px;color:#3B2A1B}.offergrid{max-width:1100px;margin:50px auto 100px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.offergrid>div{padding:60px 30px;text-align:center;background:linear-gradient(135deg,#F3E9D8,#D9C3A5);min-height:250px}.offergrid h2{font:normal 24px Georgia,serif}.admin{max-width:1100px;margin:60px auto 100px;padding:20px}.admin h1{font:normal 32px Georgia,serif}.admincards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.admincards div{padding:30px;background:#F7F2E9;text-align:center;letter-spacing:1px}.admincards b{font-size:30px;color:#3B2A1B}.adminform{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.adminform input{padding:12px;border:1px solid #ddd}.grid{width:100%;border-collapse:collapse;margin-top:30px}.grid td,.grid th{padding:12px;border:1px solid #ddd;text-align:left}footer{background:#3B2A1B;color:#eee;padding:50px max(20px,calc((100% - 1200px)/2));display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:30px}footer h3{font:normal 24px Georgia,serif;color:#D0AC56}footer h4{font-size:11px;letter-spacing:2px}footer a{display:block;color:#ccc;text-decoration:none;margin:9px 0;font-size:12px}footer input{padding:11px;width:100%}.copyright{grid-column:1/-1;border-top:1px solid #3B2A1B;padding-top:18px;color:#aaa;font-size:11px}@media(max-width:850px){.headrow{flex-wrap:wrap}.search{width:100%;order:3}.mainnav{overflow:auto;white-space:nowrap;justify-content:flex-start}.mega{position:fixed;top:135px;overflow:auto;max-height:70vh;grid-template-columns:1fr 1fr}.hero{height:430px}.heroText{left:7%;top:80px}.hero h1{font-size:40px}.catgrid,.products{grid-template-columns:repeat(2,1fr)}.detail{grid-template-columns:1fr}.offergrid,.admincards{grid-template-columns:1fr}.rates{flex-direction:column;gap:20px}.cartrow{grid-template-columns:80px 1fr}.cartrow>strong,.qty{grid-column:2}footer{grid-template-columns:1fr 1fr}}
/* =========================================================
   FULL RESPONSIVE OVERRIDES - VISUAL STABILITY
   ========================================================= */
img{max-width:100%}
html,body{overflow-x:hidden}
button,input,select,textarea{font:inherit;max-width:100%}
@media (max-width:1200px){
 .headrow{padding-left:18px;padding-right:18px}
 .mainnav>a,.navitem>a{padding-left:10px;padding-right:10px}
 .mega{padding-left:28px;padding-right:28px;gap:20px}
 .section,.listing,.cartbox,.detail{max-width:1100px}
}
@media (max-width:900px){
 .topbar{font-size:9px;letter-spacing:1px;white-space:normal}
 .headrow{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px}
 .logo{font-size:22px}
 .search{grid-column:1/-1;width:100%;order:initial}
 .headlinks{gap:12px}
 .mainnav{justify-content:flex-start;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}
 .mainnav>a,.navitem>a{font-size:10px;padding:14px 11px}
 .mega{position:absolute;left:0;right:auto;width:100vw;max-height:70vh;overflow-y:auto;grid-template-columns:repeat(2,minmax(0,1fr));padding:22px 20px;gap:20px}
 .hero{height:430px;background-position:center}
 .heroText{left:7%;right:35%;top:85px}
 .hero h1{font-size:40px}
 .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 .product img{height:250px}
 .catgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cat{height:200px}
 .detail{grid-template-columns:1fr;gap:30px}
 .detailimg{height:auto;max-height:600px}
 .offergrid{grid-template-columns:1fr 1fr;padding:0 20px}
 footer{grid-template-columns:1.5fr 1fr 1fr}
}
@media (max-width:600px){
 .topbar{display:none}
 .headrow{grid-template-columns:1fr auto;padding:12px}
 .logo{font-size:19px;letter-spacing:2px}
 .headlinks{font-size:12px;gap:9px}
 .search input[type=text]{min-width:0;padding:10px;font-size:12px}
 .search input[type=submit]{padding:0 12px;font-size:10px}
 .mainnav{scrollbar-width:none}
 .mainnav::-webkit-scrollbar{display:none}
 .mainnav>a,.navitem>a{padding:12px 9px;font-size:9px}
 .mega{position:fixed;top:103px;left:0;width:100vw;max-height:calc(100vh - 103px);grid-template-columns:1fr;padding:20px;z-index:1000}
 .megaPromo{min-height:130px}
 .hero{height:430px;background-position:58% center}
 .heroText{left:22px;right:18px;top:70px}
 .hero h1{font-size:34px}
 .hero p{font-size:14px;max-width:320px}
 .section{margin:35px auto;padding:0 15px}
 .section>h2,.banner h2,.rate h2{font-size:23px}
 .catgrid{grid-template-columns:1fr 1fr;gap:10px}
 .cat{height:170px;font-size:19px;padding-bottom:18px}
 .products{grid-template-columns:1fr 1fr;gap:12px}
 .product img{height:205px}
 .product h3{font-size:15px}
 .product p{font-size:10px}
 .product strong{font-size:14px}
 .listing{padding:0 12px;margin-top:20px}
 .pagehead{padding:38px 15px}
 .pagehead h1{font-size:28px}
 .filters{padding:0 12px;display:grid;grid-template-columns:1fr;gap:8px}
 .filters input,.filters select{width:100%;min-width:0}
 .detail{margin:30px auto 60px;padding:0 15px}
 .detailinfo h1{font-size:31px}
 .detailinfo .btn{width:100%;text-align:center;margin-right:0}
 .cartbox{padding:0 12px;margin:25px auto 60px}
 .cartrow{grid-template-columns:78px 1fr;gap:12px}
 .cartrow img{width:78px;height:78px}
 .qty{grid-column:2}
 .cartrow>strong{grid-column:2}
 .grand{font-size:18px}
 .formbox{margin:35px 15px 60px;padding:25px 18px}
 .offergrid{grid-template-columns:1fr;padding:0 15px;margin-top:30px}
 .offergrid>div{min-height:210px;padding:45px 20px}
 .admin{margin:35px auto 60px;padding:15px}
 .admincards{grid-template-columns:1fr}
 .adminform{grid-template-columns:1fr}
 .grid{display:block;overflow-x:auto;white-space:nowrap}
 footer{grid-template-columns:1fr 1fr;padding:35px 20px}
 footer>div:first-child,footer>div:last-child{grid-column:1/-1}
}
@media (max-width:380px){
 .products{grid-template-columns:1fr}
 .product img{height:280px}
 .catgrid{grid-template-columns:1fr}
 .cat{height:200px}
 .hero h1{font-size:29px}
}

.pageHero{height:260px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}
.productsHero{background-image:url('https://images.pexels.com/photos/12194265/pexels-photo-12194265.jpeg?auto=compress&cs=tinysrgb&w=1400')}
.offersHero{background-image:url('https://images.pexels.com/photos/14999288/pexels-photo-14999288.jpeg?auto=compress&cs=tinysrgb&w=1800')}
.accountHero{background-image:url('https://images.pexels.com/photos/27954777/pexels-photo-27954777.jpeg?auto=compress&cs=tinysrgb&w=1600')}
.checkoutHero{background-image:url('https://images.pexels.com/photos/10475793/pexels-photo-10475793.jpeg?auto=compress&cs=tinysrgb&w=1600')}
.pageHero h1{font:normal 40px Georgia,serif;margin:12px 0;letter-spacing:2px}
.pageHero .eyebrow{color:#F7F2E9}
@media(max-width:600px){.pageHero{height:190px}.pageHero h1{font-size:28px;padding:0 15px}}
.pageHero + .pagehead{padding:28px 15px;background:#fff}.pageHero + .pagehead h1{font-size:24px;margin:7px 0}
/* Local jewellery image treatment */
.product img{display:block;border:1px solid #eee}
.cat{background-size:cover;background-position:center}
.cat1{background-image:url('https://images.pexels.com/photos/12194265/pexels-photo-12194265.jpeg?auto=compress&cs=tinysrgb&w=900')}
.cat2{background-image:url('https://images.pexels.com/photos/37485307/pexels-photo-37485307.jpeg?auto=compress&cs=tinysrgb&w=900')}
.cat3{background-image:url('https://images.pexels.com/photos/19869443/pexels-photo-19869443.jpeg?auto=compress&cs=tinysrgb&w=900')}
.cat4{background-image:url('https://images.pexels.com/photos/10475789/pexels-photo-10475789.jpeg?auto=compress&cs=tinysrgb&w=900')}

.hero{overflow:hidden;background:#3B2A1B!important}.heroImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,28,18,.58),rgba(45,28,18,.10) 70%,rgba(45,28,18,.02));z-index:1}.heroText{z-index:2}

/* V7 REAL PHOTOGRAPHY */
.heroImage{background:#6B4A2D}
.cat{background-size:cover!important;background-position:center!important;position:relative;overflow:hidden}
.cat:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.58));z-index:0}
.cat{isolation:isolate}
.cat::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(transparent,rgba(0,0,0,.55));z-index:0}
.cat{font-weight:normal}
.cat{padding-bottom:22px}
.cat1{background-image:url('https://images.pexels.com/photos/12194265/pexels-photo-12194265.jpeg?auto=compress&cs=tinysrgb&w=900')!important}
.cat2{background-image:url('https://images.pexels.com/photos/37485307/pexels-photo-37485307.jpeg?auto=compress&cs=tinysrgb&w=900')!important}
.cat3{background-image:url('https://images.pexels.com/photos/19869443/pexels-photo-19869443.jpeg?auto=compress&cs=tinysrgb&w=900')!important}
.cat4{background-image:url('https://images.pexels.com/photos/10475789/pexels-photo-10475789.jpeg?auto=compress&cs=tinysrgb&w=900')!important}
.catgrid a .cat{color:#fff;position:relative}
.hero:after{background:linear-gradient(90deg,rgba(25,15,10,.48),rgba(25,15,10,.10) 72%,rgba(25,15,10,0))}
.banner{background-image:url('https://images.pexels.com/photos/30276932/pexels-photo-30276932.jpeg?auto=compress&cs=tinysrgb&w=1800')!important}
.product img{background:#FBF8F2;object-fit:cover}

/* =========================================================
   V8 - CLEAN INDIAN JEWELLERY E-COMMERCE PHOTOGRAPHY
   Product imagery is intentionally white/minimal like a jewellery catalogue.
   ========================================================= */
.heroImage{object-fit:cover;object-position:center 42%;}
.cat1{background-image:url('https://images.pexels.com/photos/10581731/pexels-photo-10581731.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center!important;}
.cat2{background-image:url('https://images.pexels.com/photos/37485307/pexels-photo-37485307.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center!important;}
.cat3{background-image:url('https://images.pexels.com/photos/19869443/pexels-photo-19869443.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center!important;}
.cat4{background-image:url('https://images.pexels.com/photos/10475789/pexels-photo-10475789.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center!important;}
.product img{object-fit:cover;background:#fff;}
.banner{background-image:url('https://images.pexels.com/photos/32235790/pexels-photo-32235790.jpeg?auto=compress&cs=tinysrgb&w=1800')!important;background-position:center 30%!important;}
.productsHero{background-image:url('https://images.pexels.com/photos/29502969/pexels-photo-29502969.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center 45%!important;}
.offersHero{background-image:url('https://images.pexels.com/photos/12194330/pexels-photo-12194330.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center 40%!important;}
.accountHero{background-image:url('https://images.pexels.com/photos/12194385/pexels-photo-12194385.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center 35%!important;}
.checkoutHero{background-image:url('https://images.pexels.com/photos/14111400/pexels-photo-14111400.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;background-position:center 35%!important;}
.hero:after{background:linear-gradient(90deg,rgba(15,10,5,.48),rgba(15,10,5,.12) 62%,rgba(15,10,5,.02))!important;}
.cat:before{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.55))!important;}

/* =========================================================
   V8 CORRECTIONS
   ========================================================= */

/* Category labels always remain above image overlays. */
.cat{z-index:1}
.cat:before,.cat:after{z-index:0;pointer-events:none}
.cat span{position:relative;z-index:3;color:#fff!important;text-shadow:0 2px 6px rgba(0,0,0,.85),0 1px 2px #000;display:inline-block}

/* Make page headers visibly premium instead of plain white. */
.pagehead{
  background:linear-gradient(90deg,#F7F2E9,#F7F2E9,#F3E9D8)!important;
  border-top:1px solid #F7F2E9;
  border-bottom:1px solid #F7F2E9;
  color:#3B2A1B;
}
.pagehead h1{color:#3B2A1B!important}
.pageHero.subPageHero{
  height:250px!important;
  background-color:#756454!important;
  background-size:cover!important;
  background-position:center 42%!important;
  position:relative;
}
.subPageHero:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(35,20,12,.58),rgba(35,20,12,.18),rgba(35,20,12,.05));
}
.subPageHero .pageHeroText{position:relative;z-index:2}
.pageHeroText h1{color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.45)}
.pageHeroText .eyebrow{color:#F7F2E9!important}

/* Mega menu: small related jewellery photographs beside each link. */
.mega a{
  display:flex!important;
  align-items:center;
  gap:9px;
  min-height:38px;
  padding:4px 0!important;
}
.megaThumb{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:2px;
  object-fit:cover!important;
  background:#F7F2E9;
  border:1px solid #F7F2E9;
  display:block;
}
.mega a span{display:inline-block;line-height:1.2}
.mega h4{margin-bottom:10px!important}
.megaPromo a{display:inline-block!important}

/* Keep price symbols consistent. */
.product strong,.detailinfo h2,.cartrow p,.cartrow>strong,.grand b{font-variant-numeric:tabular-nums}

@media(max-width:600px){
 .megaThumb{width:30px!important;height:30px!important;min-width:30px!important}
 .mega a{min-height:34px}
 .pageHero.subPageHero{height:190px!important}
}

/* Prevent broken-image icons from destroying the layout. */
.product img,.detailimg,.cartrow img{background:#F7F2E9;min-height:120px}


/* =========================================================
   V10 RESPONSIVE MEGA MENU
   Keeps the existing desktop menu design.
   Adds touch-friendly dropdown behavior for tablets/mobile.
   ========================================================= */

/* Desktop: preserve existing hover behavior. */
@media (min-width: 901px){
    .mainnav .mega{
        top: 100%;
        width: 100%;
    }

    .mainnav .navitem:hover > .mega{
        display: grid;
    }

    .mainnav .navitem.open > .mega{
        display: none;
    }
}

/* Tablet and touch devices. */
@media (max-width: 900px){
    .mainnav{
        position: relative;
        z-index: 100;
        overflow-x: auto;
        overflow-y: visible;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .mainnav::-webkit-scrollbar{
        display: none;
    }

    .mainnav .navitem{
        position: static;
        flex: 0 0 auto;
    }

    .mainnav .navitem > a{
        position: relative;
        z-index: 2;
        cursor: pointer;
    }

    /* Hidden until a category is tapped. */
    .mainnav .navitem > .mega{
        display: none;
        position: fixed;
        left: 0;
        right: 0;
        top: var(--mega-top, 120px);
        width: 100vw;
        max-width: 100vw;
        max-height: calc(100vh - var(--mega-top, 120px));
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        z-index: 1000;
        margin: 0;
        background: #fff;
    }

    /* Open state is controlled by site.js on touch devices. */
    .mainnav .navitem.open > .mega{
        display: grid;
    }

    /* Preserve mouse/trackpad hover even in the responsive viewport.
       Touch devices still use the .open class from site.js. */
    .mainnav .navitem:hover > .mega{
        display: grid;
    }

    .mainnav .navitem.open:hover > .mega{
        display: grid;
    }

    .mainnav .mega > div{
        min-width: 0;
    }

    .mainnav .mega a{
        min-width: 0;
        overflow: hidden;
    }

    .mainnav .mega a span{
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .mainnav .megaPromo{
        min-width: 0;
    }
}

/* Larger tablets: two-column mega menu. */
@media (min-width: 601px) and (max-width: 900px){
    .mainnav .mega{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
        padding: 22px 20px;
    }
}

/* Phones: one-column mega menu so nothing is squeezed or clipped. */
@media (max-width: 600px){
    .mainnav .mega{
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px 16px 28px;
    }

    .mainnav .mega > div{
        padding-bottom: 8px;
        border-bottom: 1px solid #F7F2E9;
    }

    .mainnav .mega > div:last-child{
        border-bottom: 0;
    }

    .mainnav .mega h4{
        margin-bottom: 8px !important;
    }

    .mainnav .mega a{
        min-height: 38px;
        padding: 4px 0 !important;
        gap: 9px;
    }

    .mainnav .megaThumb{
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
    }

    .mainnav .megaPromo{
        min-height: 125px;
        padding: 18px;
    }

    /* Keep the existing nav visually unchanged; only allow it to scroll. */
    .mainnav > a,
    .mainnav .navitem > a{
        flex: 0 0 auto;
    }
}

/* Very small phones. */
@media (max-width: 380px){
    .mainnav .mega{
        padding-left: 13px;
        padding-right: 13px;
    }

    .mainnav .mega a{
        font-size: 12px;
    }

    .mainnav .megaThumb{
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
    }
}

/* Prevent the page behind the open mobile menu from moving. */
body.menu-open{
    overflow: hidden;
}


/* =========================================================
   V11 - RESPONSIVE MEGA MENU FIX
   Keeps the existing desktop Bhima-style menu unchanged.
   Requires viewport meta tag in Site.master.
   ========================================================= */

@media (max-width: 900px) {
    html, body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .mainnav {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: visible;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
        justify-content: flex-start;
        position: relative;
        z-index: 2000;
    }

    .mainnav .navitem {
        position: static;
        flex: 0 0 auto;
    }

    .mainnav .navitem > a {
        position: relative;
        z-index: 2002;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .mainnav .navitem > .mega {
        display: none;
        position: fixed;
        left: 0;
        right: 0;
        top: var(--mega-top, 120px);
        width: 100vw;
        max-width: 100vw;
        max-height: calc(100vh - var(--mega-top, 120px));
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        z-index: 3000;
        box-sizing: border-box;
        margin: 0;
        background: #fff;
    }

    .mainnav .navitem.open > .mega {
        display: grid !important;
    }

    /* Do not let touch/hover behavior hide an explicitly opened menu. */
    .mainnav .navitem:hover > .mega {
        display: none;
    }

    .mainnav .navitem.open:hover > .mega {
        display: grid !important;
    }

    .mainnav .mega > div {
        min-width: 0;
    }

    .mainnav .mega a {
        min-width: 0;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .mainnav .navitem > .mega {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
        padding: 22px 20px;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        grid-template-columns: 1fr;
        padding: 18px 16px 28px;
        gap: 14px;
    }

    .mainnav .mega > div {
        padding-bottom: 8px;
        border-bottom: 1px solid #F7F2E9;
    }

    .mainnav .mega > div:last-child {
        border-bottom: 0;
    }

    .mainnav .megaThumb {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
    }

    body.menu-open {
        overflow: hidden;
        touch-action: none;
    }
}

@media (max-width: 380px) {
    .mainnav .navitem > .mega {
        padding-left: 12px;
        padding-right: 12px;
    }

    .mainnav .megaThumb {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
    }
}

/* =========================================================
   V12 - FINAL RESPONSIVE MENU BEHAVIOR FIX
   Keeps the existing Bhima-style menu and dropdown design.
   Fixes touch/click and hover behavior below 900px.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        display: grid !important;
        transform: translateY(0);
    }

    /* Mouse/trackpad hover: show the same existing dropdown. */
    .mainnav .navitem:hover > .mega {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        display: grid !important;
    }

    /* Touch/click: JavaScript adds .open. */
    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        display: grid !important;
    }
}

/* =========================================================
   V17 - RELIABLE TOUCH SCROLL
   Uses native touch axes plus Touch Events from site.js.
   No menu redesign; desktop behavior remains unchanged.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x !important;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
    }

    .mainnav::-webkit-scrollbar {
        display: none;
    }

    .mainnav > a,
    .mainnav > .navitem {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    .mainnav .navitem > .mega {
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }

    body.menu-open {
        overflow: hidden;
        touch-action: auto !important;
    }
}

/* =========================================================
   V18 - NO HORIZONTAL TOUCH SCROLLING
   Mobile/tablet navigation wraps onto multiple rows so every
   top-level menu item is reachable without dragging left/right.
   Open mega menus flow below the navigation and use normal page
   scrolling. Desktop is intentionally untouched.
   ========================================================= */
@media (max-width: 900px) {
    html, body {
        overflow-x: hidden !important;
    }

    .mainnav {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        white-space: normal !important;
        overflow: visible !important;
        justify-content: flex-start !important;
        align-items: center !important;
        position: relative !important;
        touch-action: auto !important;
    }

    .mainnav > a,
    .mainnav > .navitem {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    .mainnav .navitem {
        position: static !important;
    }

    /* The dropdown is placed below the entire wrapped navigation. */
    .mainnav .navitem > .mega {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        -webkit-overflow-scrolling: auto !important;
        touch-action: auto !important;
        overscroll-behavior: auto !important;
        box-sizing: border-box !important;
    }

    /* The open dropdown is allowed to extend the page normally. */
    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }

    /* Do not lock the whole page when a mega menu is open. */
    body.menu-open {
        overflow: visible !important;
        touch-action: auto !important;
    }
}

@media (max-width: 600px) {
    .mainnav > a,
    .mainnav .navitem > a {
        padding: 11px 9px !important;
        font-size: 9px !important;
    }

    .mainnav .navitem > .mega {
        grid-template-columns: 1fr !important;
        padding: 18px 16px 28px !important;
        gap: 14px !important;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .mainnav .navitem > .mega {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        padding: 22px 20px !important;
        gap: 20px !important;
    }
}


/* =========================================================
   V19 - MOBILE/TABLET DROPDOWN VERTICAL SCROLL
   Keep V18's wrapped top navigation. The open mega menu gets
   its own vertical scroll area so users can move UP/DOWN
   inside the dropdown without changing the desktop menu.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        max-height: calc(100vh - 145px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 12px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 2px solid #FBF8F2 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb:hover {
        background: #756454 !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        max-height: calc(100vh - 135px) !important;
    }
}


/* =========================================================
   V21 - SIMPLE NATIVE TOUCH SCROLLING
   Based on the working V19 dropdown behavior.
   Mobile/tablet only. No JavaScript drag scrolling.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 2px !important;
        white-space: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        position: relative !important;
    }

    .mainnav::-webkit-scrollbar {
        height: 6px !important;
    }

    .mainnav::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
    }

    .mainnav::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 6px !important;
    }

    .mainnav > a,
    .mainnav > .navitem {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    .mainnav .navitem {
        position: static !important;
    }

    /* Keep the dropdown in normal document positioning. */
    .mainnav .navitem > .mega {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100vh - 145px) !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        z-index: 10000 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 12px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 2px solid #FBF8F2 !important;
    }

    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }

    body.menu-open {
        overflow: visible !important;
        touch-action: auto !important;
    }
}

@media (max-width: 600px) {
    .mainnav > a,
    .mainnav .navitem > a {
        padding: 11px 9px !important;
        font-size: 9px !important;
        flex: 0 0 auto !important;
    }

    .mainnav .navitem > .mega {
        grid-template-columns: 1fr !important;
        padding: 18px 16px 28px !important;
        max-height: calc(100vh - 135px) !important;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .mainnav .navitem > .mega {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        padding: 22px 20px !important;
        gap: 20px !important;
    }
}

/* =========================================================
   V22 - KEEP V21 HORIZONTAL MAIN MENU + RESTORE HOVER DROPDOWN
   The main navigation remains horizontally scrollable on
   mobile/tablet, but the mega menu is taken out of the
   scroll container with fixed positioning so mouse/trackpad
   hover can display it correctly.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: var(--mega-top, 120px) !important;
        width: 100vw !important;
        max-width: 100vw !important;
        max-height: calc(100vh - var(--mega-top, 120px)) !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        z-index: 30000 !important;
        margin: 0 !important;
    }

    /* Mouse/trackpad hover must work even though the nav itself scrolls. */
    .mainnav .navitem:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }

    /* Touch/click opened state continues to work. */
    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }
}

/* =========================================================
   V25 - RESTORE A REAL VERTICAL SCROLL AREA INSIDE THE MEGA MENU
   Based on the working V24 behavior. Do not change the main
   horizontal navigation or hover behavior. Only make the
   fixed mega menu a definite-height vertical scroll container.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        /* Keep the dropdown below the navigation and give it a
           definite viewport-based height so overflow-y is real. */
        top: var(--mega-top, 120px) !important;
        height: calc(100vh - var(--mega-top, 120px) - 10px) !important;
        max-height: none !important;
        min-height: 180px !important;

        overflow-x: hidden !important;
        overflow-y: scroll !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;

        /* Reserve space for the scrollbar so it is visible and
           does not change the width of the menu content. */
        scrollbar-gutter: stable !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 14px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
        border-left: 1px solid #F7F2E9 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 3px solid #FBF8F2 !important;
        min-height: 45px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb:hover {
        background: #756454 !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        height: calc(100vh - var(--mega-top, 120px) - 10px) !important;
        min-height: 180px !important;
    }
}


/* =========================================================
   V26 - STABLE COMBINATION
   Keep V25 horizontal main-menu scrolling.
   Keep the mega menu outside the scroll clipping using fixed positioning.
   Add a reliable hover bridge/delay so the pointer can cross the
   horizontal scrollbar area without closing the dropdown.
   Give the dropdown a true scroll viewport.
   ========================================================= */
@media (max-width: 900px) {
    /* Main navigation: keep native horizontal scrolling. */
    .mainnav {
        overflow-x: auto !important;
        overflow-y: visible !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x !important;
        position: relative !important;
        z-index: 2000 !important;
    }

    /* Do NOT let the nav's overflow create a clipping context for the mega. */
    .mainnav .navitem {
        position: static !important;
        flex: 0 0 auto !important;
    }

    /* Fixed dropdown: independent of the horizontal nav scroll. */
    .mainnav .navitem > .mega {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: var(--mega-top, 120px) !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: min(70vh, 620px) !important;
        max-height: calc(100vh - var(--mega-top, 120px) - 8px) !important;
        min-height: 180px !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        background: #fff !important;
        z-index: 40000 !important;

        /* The mega itself is the vertical scroll viewport. */
        overflow-x: hidden !important;
        overflow-y: scroll !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        scrollbar-gutter: stable !important;
    }

    /* Force a real scrollable layout instead of allowing grid rows to
       stretch the content to the viewport height. */
    .mainnav .navitem > .mega > div {
        min-height: 0 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 14px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
        border-left: 1px solid #F7F2E9 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 3px solid #FBF8F2 !important;
        min-height: 45px !important;
    }

    /* JS-controlled hover-open state. This is separate from :hover so
       the menu survives the small gap created by the horizontal scrollbar. */
    .mainnav .navitem.hover-open > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }

    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open.hover-open > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        height: min(72vh, 620px) !important;
        max-height: calc(100vh - var(--mega-top, 120px) - 8px) !important;
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   V27 - FINAL MOBILE/TABLET MEGA-MENU FIX
   Keep the working horizontal main-menu scroll from V26.
   Make the mega menu a real vertical scroll viewport without
   changing its jewellery/menu design.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: var(--mega-top, 120px) !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: calc(100vh - var(--mega-top, 120px) - 6px) !important;
        min-height: 180px !important;
        max-height: none !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 22px 20px 40px !important;
        background: #fff !important;
        z-index: 40000 !important;

        /* The mega itself is the scroll viewport. */
        display: grid !important;
        overflow-x: hidden !important;
        overflow-y: scroll !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        align-content: start !important;
        grid-auto-rows: max-content !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        scrollbar-gutter: stable !important;
    }

    /* Never let the grid's rows stretch to fill the scroll viewport. */
    .mainnav .navitem > .mega > div {
        min-height: 0 !important;
        height: auto !important;
        align-self: start !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 14px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
        border-left: 1px solid #F7F2E9 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 3px solid #FBF8F2 !important;
        min-height: 55px !important;
    }

    /* Open states. */
    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open.hover-open > .mega,
    .mainnav .navitem.hover-open > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .mainnav .navitem > .mega {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 20px !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        padding: 18px 16px 40px !important;
    }
}

/* =========================================================
   V28 - ONLY DROPDOWN VERTICAL SCROLL FIX
   Keep all V27 menu/hover/horizontal-scroll behavior unchanged.
   Give the existing mobile/tablet mega menu a smaller, definite
   viewport so its content must scroll vertically.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        height: 55vh !important;
        min-height: 260px !important;
        max-height: 55vh !important;
        overflow-y: scroll !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        scrollbar-gutter: stable !important;
        align-content: start !important;
        grid-auto-rows: max-content !important;
    }

    .mainnav .navitem > .mega > div {
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 14px !important;
        display: block !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
        border-left: 1px solid #F7F2E9 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 3px solid #FBF8F2 !important;
        min-height: 45px !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        height: 55vh !important;
        max-height: 55vh !important;
    }
}

/* =========================================================
   V29 - DROPDOWN VERTICAL SCROLL ONLY
   Based on V28. Do not change the main navigation, hover
   bridge, dropdown layout, colours or positioning.
   The only change here is to give the existing mega menu
   a definite scroll viewport so its content can move vertically.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        height: 42vh !important;
        max-height: 42vh !important;
        min-height: 220px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: auto !important;
        scrollbar-color: #D0AC56 #FBF8F2 !important;
        scrollbar-gutter: stable !important;
        align-content: start !important;
        grid-auto-rows: max-content !important;
    }

    .mainnav .navitem > .mega > div {
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 14px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-track {
        background: #FBF8F2 !important;
        border-left: 1px solid #F7F2E9 !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar-thumb {
        background: #D0AC56 !important;
        border-radius: 8px !important;
        border: 3px solid #FBF8F2 !important;
        min-height: 45px !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        height: 42vh !important;
        max-height: 42vh !important;
    }
}

/* =========================================================
   V30 - FINAL MOBILE/TABLET DROPDOWN SCROLL + HOVER FIX
   Keep V29 visual design and horizontal main-menu scrolling.
   Adds a visible custom vertical scrollbar to the existing mega
   menu because mobile browsers may hide native scrollbars.
   Also fixes stale hover-open state when moving between items.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        position: fixed !important;
        top: var(--mega-top, 120px) !important;
        left: 0 !important;
        right: auto !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: 42vh !important;
        max-height: 42vh !important;
        min-height: 220px !important;
        box-sizing: border-box !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-y !important;
        overscroll-behavior-y: contain !important;
        scrollbar-width: none !important;
        padding-right: 42px !important;
    }

    .mainnav .navitem > .mega::-webkit-scrollbar {
        width: 0 !important;
        height: 0 !important;
    }

    .mega-scroll-track {
        position: absolute !important;
        top: 8px !important;
        right: 8px !important;
        bottom: 8px !important;
        width: 16px !important;
        background: #FBF8F2 !important;
        border: 1px solid #F7F2E9 !important;
        border-radius: 9px !important;
        z-index: 50000 !important;
        cursor: ns-resize !important;
        display: block !important;
    }

    .mega-scroll-thumb {
        position: absolute !important;
        left: 2px !important;
        right: 2px !important;
        top: 2px !important;
        min-height: 46px !important;
        background: #D0AC56 !important;
        border-radius: 7px !important;
        cursor: grab !important;
        touch-action: none !important;
    }

    .mega-scroll-thumb:active {
        cursor: grabbing !important;
    }

    .mainnav .navitem > .mega > .mega-scroll-track {
        height: auto !important;
        min-height: 0 !important;
        align-self: auto !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        height: 42vh !important;
        max-height: 42vh !important;
        padding-right: 40px !important;
    }
}

/* V30.1 - ONLY vertical scrollbar visibility adjustment.
   Preserve all V30 horizontal menu, hover, dropdown and scrolling behavior. */
@media (max-width: 900px) {
    .mainnav .navitem > .mega {
        padding-right: 50px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    .mainnav .navitem > .mega > .mega-scroll-track {
        top: 6px !important;
        right: 16px !important;
        bottom: 6px !important;
        width: 18px !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        box-sizing: border-box !important;
    }

    .mainnav .navitem > .mega > .mega-scroll-track > .mega-scroll-thumb {
        left: 2px !important;
        right: 2px !important;
        min-height: 46px !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 600px) {
    .mainnav .navitem > .mega {
        padding-right: 50px !important;
    }

    .mainnav .navitem > .mega > .mega-scroll-track {
        right: 16px !important;
        width: 18px !important;
    }
}

/* V30 BASE - ONLY reliable vertical scrollbar dragging */
@media (max-width:900px){
 .mainnav .navitem > .mega > .mega-scroll-track{pointer-events:auto!important;touch-action:none!important;}
 .mainnav .navitem > .mega > .mega-scroll-track > .mega-scroll-thumb{pointer-events:auto!important;touch-action:none!important;user-select:none!important;-webkit-user-select:none!important;}
}

/* =========================================================
   FIND STORE
   ========================================================= */

.store-locator{
    max-width:1050px;
    margin:55px auto 90px;
    padding:0 20px;
}

.store-search-box{
    display:flex;
    align-items:center;
    gap:22px;
    padding:28px 32px;
    border:1px solid #F7F2E9;
    background:#F7F9FC;
    box-shadow:0 8px 24px rgba(65,45,30,.06);
}

.store-search-icon,
.store-card-icon,
.recent-empty-icon{
    flex:0 0 auto;
    width:54px;
    height:54px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#F7F2E9;
    color:#3B2A1B;
}

.store-search-icon svg,
.store-card-icon svg,
.recent-empty-icon svg{
    width:28px;
    height:28px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.store-search-box h2{
    font:normal 25px Georgia,serif;
    margin:0 0 7px;
    color:#3B2A1B;
}

.store-search-box p{
    margin:0;
    color:#74675d;
    font-size:13px;
    line-height:1.6;
}

.store-info-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    margin-top:25px;
}

.store-info-card{
    padding:32px;
    border:1px solid #F7F2E9;
    background:#fff;
    text-align:center;
}

.store-card-icon{
    margin:0 auto 15px;
    width:50px;
    height:50px;
}

.store-info-card h3{
    font:normal 21px Georgia,serif;
    margin:8px 0;
}

.store-info-card p{
    color:#74675d;
    font-size:13px;
    line-height:1.7;
    max-width:430px;
    margin:0 auto 10px;
}

/* =========================================================
   RECENTLY VIEWED
   ========================================================= */

.recent-page{
    max-width:1200px;
    margin:50px auto 90px;
    padding:0 20px;
}

.recent-products{
    min-height:100px;
}

.recent-card{
    transition:transform .2s ease;
}

.recent-card:hover{
    transform:translateY(-3px);
}

.recent-footer{
    text-align:center;
    margin-top:38px;
}

.recent-empty{
    max-width:550px;
    margin:20px auto 80px;
    text-align:center;
    padding:45px 25px;
    border:1px solid #F7F2E9;
    background:#F7F9FC;
}

.recent-empty-icon{
    margin:0 auto 18px;
}

.recent-empty h2{
    font:normal 25px Georgia,serif;
    margin:0 0 8px;
    color:#3B2A1B;
}

.recent-empty p{
    color:#74675d;
    font-size:13px;
    margin:0 0 22px;
}

@media(max-width:600px){
    .store-locator,.recent-page{
        margin-top:30px;
        padding:0 15px;
    }
    .store-search-box{
        align-items:flex-start;
        padding:22px 18px;
        gap:14px;
    }
    .store-search-icon{
        width:44px;
        height:44px;
    }
    .store-search-icon svg{
        width:23px;
        height:23px;
    }
    .store-search-box h2{
        font-size:21px;
    }
    .store-info-grid{
        grid-template-columns:1fr;
    }
    .store-info-card{
        padding:26px 20px;
    }
}


/* =========================================================
   V31 - RESPONSIVE PINCODE / MEGA-SCROLLBAR ISOLATION
   Keep the custom vertical scrollbar hidden unless its mega menu
   is actually open. This prevents it from appearing when the user
   moves over PINCODE or other catalogue controls.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem:not(.open):not(.hover-open) > .mega > .mega-scroll-track {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    .mainnav .navitem.open > .mega > .mega-scroll-track,
    .mainnav .navitem.hover-open > .mega > .mega-scroll-track {
        visibility: visible !important;
        opacity: 1 !important;
    }
}

/*
   V34 - MOBILE/TOUCH + POINTER HOVER
   On a real touch-only phone there is no hover, so the existing tap/click
   behavior remains the primary interaction. When the mobile viewport is
   controlled by a mouse/trackpad (including responsive browser testing),
   allow the same hover dropdown used on desktop.
*/
@media (max-width: 900px) and (hover: hover) and (pointer: fine) {
    .mainnav .navitem:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }

    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        display: grid !important;
    }
}

/* V8 real product photography */
.product img, .products .product img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    display: block;
    background: #f8f6f2;
}


/* =========================================================
   NOOPURA HOMEPAGE HERO CAROUSEL - PROFESSIONAL RESPONSIVE
   Five real jewellery photographs, CSS-only animation.
   This section intentionally overrides the older single-image
   .hero rules above without changing the rest of the website.
   ========================================================= */

.hero {
    position: relative !important;
    width: 100% !important;
    height: clamp(430px, 43vw, 610px) !important;
    min-height: 430px !important;
    overflow: hidden !important;
    background: #03144B !important;
    isolation: isolate;
}

.hero-slides {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    background: #03144B;
}

.hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    animation: noopuraHeroFade 32s infinite;
    transform: scale(1.02);
    will-change: opacity, transform;
}

.hero-slide:nth-child(1) {
    background-image: url('https://images.pexels.com/photos/26570970/pexels-photo-26570970.jpeg?auto=compress&cs=tinysrgb&w=2000');
    animation-delay: 0s;
}

.hero-slide:nth-child(2) {
    background-image: url('https://images.pexels.com/photos/30276932/pexels-photo-30276932.jpeg?auto=compress&cs=tinysrgb&w=2000');
    animation-delay: -6.4s;
}

.hero-slide:nth-child(3) {
    background-image: url('https://images.pexels.com/photos/12194265/pexels-photo-12194265.jpeg?auto=compress&cs=tinysrgb&w=2000');
    animation-delay: -12.8s;
}

.hero-slide:nth-child(4) {
    background-image: url('https://images.pexels.com/photos/32235790/pexels-photo-32235790.jpeg?auto=compress&cs=tinysrgb&w=2000');
    animation-delay: -19.2s;
}

.hero-slide:nth-child(5) {
    background-image: url('https://images.pexels.com/photos/14999288/pexels-photo-14999288.jpeg?auto=compress&cs=tinysrgb&w=2000');
    animation-delay: -25.6s;
}

.hero-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg,
            rgba(20,12,8,.76) 0%,
            rgba(20,12,8,.50) 30%,
            rgba(20,12,8,.16) 62%,
            rgba(20,12,8,.04) 100%);
}

@keyframes noopuraHeroFade {
    0% { opacity: 0; transform: scale(1.04); }
    3% { opacity: 1; transform: scale(1.02); }
    16% { opacity: 1; transform: scale(1.00); }
    21% { opacity: 0; transform: scale(1.00); }
    100% { opacity: 0; transform: scale(1.04); }
}

.hero-copy {
    position: absolute !important;
    z-index: 5;
    left: clamp(28px, 8vw, 125px);
    top: 50%;
    transform: translateY(-50%);
    width: min(560px, 48vw);
    color: #fff;
    text-align: left;
}

.hero-copy .eyebrow {
    color: #F7F2E9 !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3.5px;
    margin-bottom: 14px;
    text-transform: uppercase;
}

.hero-copy h1 {
    margin: 0 0 18px;
    color: #fff !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(38px, 4.4vw, 64px);
    font-weight: 400;
    line-height: 1.06;
    letter-spacing: 1px;
    text-shadow: 0 3px 16px rgba(0,0,0,.42);
}

.hero-copy p {
    max-width: 500px;
    margin: 0 0 18px;
    color: rgba(255,255,255,.94);
    font-size: clamp(14px, 1.35vw, 17px);
    line-height: 1.65;
    text-shadow: 0 2px 8px rgba(0,0,0,.38);
}

.hero-copy .btn {
    margin-top: 8px;
    padding: 14px 28px;
    background: #D0AC56 !important;
    border: 1px solid rgba(255,255,255,.30);
    box-shadow: 0 8px 24px rgba(0,0,0,.20);
    font-weight: 700;
    letter-spacing: 1.5px;
    transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.hero-copy .btn:hover {
    background: #D0AC56 !important;
    transform: translateY(-2px);
    box-shadow: 0 11px 28px rgba(0,0,0,.28);
}

.hero-copy .hero-secondary {
    margin-left: 9px;
    background: rgba(255,255,255,.96) !important;
    color: #756454 !important;
    border-color: rgba(255,255,255,.80);
}

.hero-copy .hero-secondary:hover {
    background: #fff !important;
}

.hero-nav {
    position: absolute;
    z-index: 6;
    right: 38px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.hero-nav span {
    display: block;
    width: 28px;
    height: 3px;
    border-radius: 2px;
    background: rgba(255,255,255,.48);
}

.hero-nav span:first-child {
    background: #D0AC56;
    width: 42px;
}

.hero-badge {
    position: absolute;
    z-index: 6;
    right: clamp(24px, 5vw, 80px);
    top: 50%;
    transform: translateY(-50%);
    width: 118px;
    height: 118px;
    border: 1px solid rgba(255,255,255,.38);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(25,16,10,.28);
    backdrop-filter: blur(3px);
    box-shadow: 0 8px 30px rgba(0,0,0,.16);
    text-align: center;
}

.hero-badge strong {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 27px;
    font-weight: 400;
}

.hero-badge span {
    margin-top: 4px;
    color: #F7F2E9;
    font-size: 9px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.hero:hover .hero-slide,
.hero:hover .hero-copy,
.hero:hover .hero-badge {
    animation-play-state: paused;
}

/* Accessibility: respect reduced-motion preference. */
@media (prefers-reduced-motion: reduce) {
    .hero-slide {
        animation: none !important;
        opacity: 0 !important;
    }
    .hero-slide:first-child {
        opacity: 1 !important;
    }
}

/* =========================================================
   HOMEPAGE CATEGORY / BANNER POLISH
   ========================================================= */

.catgrid .cat {
    border-radius: 2px;
    box-shadow: 0 8px 24px rgba(55,35,20,.08);
    transition: transform .25s ease, box-shadow .25s ease;
}

.catgrid a:hover .cat {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(55,35,20,.16);
}

.banner {
    position: relative;
    overflow: hidden;
}

.banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(30,18,12,.62), rgba(30,18,12,.18), rgba(30,18,12,.38));
}

.banner > div {
    position: relative;
    z-index: 2;
}

/* =========================================================
   RESPONSIVE HOMEPAGE HERO
   ========================================================= */

@media (max-width: 1100px) {
    .hero {
        height: 500px !important;
        min-height: 500px !important;
    }
    .hero-copy {
        left: 6vw;
        width: min(560px, 58vw);
    }
    .hero-badge {
        right: 4vw;
        width: 96px;
        height: 96px;
    }
}

@media (max-width: 900px) {
    .hero {
        height: 470px !important;
        min-height: 470px !important;
    }
    .hero-copy {
        left: 32px;
        width: min(560px, 70vw);
    }
    .hero-copy h1 {
        font-size: 43px;
    }
    .hero-copy p {
        font-size: 14px;
        max-width: 430px;
    }
    .hero-badge {
        right: 25px;
        top: auto;
        bottom: 28px;
        transform: none;
        width: 82px;
        height: 82px;
    }
    .hero-badge strong { font-size: 21px; }
    .hero-badge span { font-size: 7px; }
    .hero-nav { right: 125px; bottom: 39px; }
}

@media (max-width: 600px) {
    .hero {
        height: 500px !important;
        min-height: 500px !important;
    }
    .hero-slide {
        background-position: 62% center;
    }
    .hero-slide::after {
        background: linear-gradient(180deg,
            rgba(15,9,6,.32) 0%,
            rgba(15,9,6,.45) 42%,
            rgba(15,9,6,.82) 100%);
    }
    .hero-copy {
        left: 22px;
        right: 22px;
        top: auto;
        bottom: 68px;
        transform: none;
        width: auto;
        max-width: none;
    }
    .hero-copy .eyebrow {
        font-size: 9px;
        letter-spacing: 2.5px;
        margin-bottom: 9px;
    }
    .hero-copy h1 {
        font-size: 34px;
        line-height: 1.08;
        margin-bottom: 11px;
    }
    .hero-copy p {
        font-size: 13px;
        line-height: 1.5;
        margin-bottom: 10px;
        max-width: 330px;
    }
    .hero-copy .btn {
        padding: 12px 20px;
        font-size: 10px;
    }
    .hero-copy .hero-secondary {
        display: none;
    }
    .hero-badge {
        display: none;
    }
    .hero-nav {
        left: 22px;
        right: auto;
        bottom: 25px;
        gap: 5px;
    }
    .hero-nav span { width: 20px; height: 2px; }
    .hero-nav span:first-child { width: 30px; }
}

@media (max-width: 380px) {
    .hero {
        height: 455px !important;
        min-height: 455px !important;
    }
    .hero-copy {
        bottom: 60px;
        left: 18px;
        right: 18px;
    }
    .hero-copy h1 {
        font-size: 29px;
    }
    .hero-copy p {
        font-size: 12px;
    }
}

/* =========================================================
   NOOPURA HERO V2 - MANUAL IMAGE NAVIGATION + SIGNATURE MARK
   ========================================================= */

/* JavaScript controls the active image. Disable the previous
   CSS-only animation so Previous / Next always stays in sync. */
.hero-slide {
    animation: none !important;
    opacity: 0 !important;
    transform: scale(1.025) !important;
    transition: opacity .65s ease, transform 7s ease;
}

.hero-slide.hero-active {
    opacity: 1 !important;
    transform: scale(1) !important;
    z-index: 1;
}

.hero-slides {
    z-index: 0;
}

/* Elegant Noopura signature instead of the 925+ badge */
.hero-signature {
    position: absolute;
    z-index: 7;
    right: clamp(35px, 5vw, 82px);
    top: 50%;
    transform: translateY(-50%);
    width: 145px;
    height: 145px;
    border: 1px solid rgba(240,211,155,.58);
    border-radius: 50%;
    background: rgba(25,16,10,.25);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-shadow: 0 12px 38px rgba(0,0,0,.22), inset 0 0 0 5px rgba(255,255,255,.035);
}

.hero-signature::before,
.hero-signature::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(240,211,155,.22);
    border-radius: 50%;
}

.hero-signature::before {
    inset: 7px;
}

.hero-signature::after {
    inset: 12px;
}

.hero-signature-mark {
    position: relative;
    z-index: 2;
    color: #F7F2E9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
    font-style: italic;
}

.hero-signature-name {
    position: relative;
    z-index: 2;
    margin-top: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.hero-signature-line {
    position: relative;
    z-index: 2;
    width: 34px;
    height: 1px;
    margin: 7px 0 5px;
    background: #D0AC56;
}

.hero-signature-caption {
    position: relative;
    z-index: 2;
    color: #F7F2E9;
    font-size: 7px;
    font-weight: 600;
    letter-spacing: 1.7px;
}

/* Previous / next buttons + dots */
.hero-controls {
    position: absolute;
    z-index: 10;
    right: 35px;
    bottom: 27px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.hero-arrow {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 50%;
    background: rgba(20,12,8,.48);
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: Arial, sans-serif;
    font-size: 15px;
    line-height: 1;
    transition: all .2s ease;
}

.hero-arrow:hover,
.hero-arrow:focus {
    background: #D0AC56;
    border-color: #D0AC56;
    outline: none;
    transform: translateY(-1px);
}

.hero-dots {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 2px;
}

.hero-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.48);
    cursor: pointer;
    transition: width .25s ease, background .25s ease, transform .25s ease;
}

.hero-dot:hover,
.hero-dot:focus {
    background: rgba(255,255,255,.9);
    outline: none;
}

.hero-dot.active {
    width: 25px;
    border-radius: 5px;
    background: #D0AC56;
}

/* Keep the hero controls comfortably away from the signature on desktop. */
@media (min-width: 901px) {
    .hero-controls {
        right: 35px;
    }
}

@media (max-width: 1100px) {
    .hero-signature {
        right: 28px;
        width: 108px;
        height: 108px;
    }
    .hero-signature-mark { font-size: 28px; }
    .hero-signature-name { font-size: 9px; letter-spacing: 2px; }
    .hero-signature-caption { font-size: 6px; letter-spacing: 1.2px; }
    .hero-signature-line { margin: 5px 0 4px; }
}

@media (max-width: 900px) {
    .hero-signature {
        right: 24px;
        top: auto;
        bottom: 76px;
        transform: none;
        width: 86px;
        height: 86px;
    }
    .hero-signature::before { inset: 5px; }
    .hero-signature::after { inset: 9px; }
    .hero-signature-mark { font-size: 23px; }
    .hero-signature-name { font-size: 7px; letter-spacing: 1.5px; }
    .hero-signature-caption { font-size: 5px; letter-spacing: .9px; }
    .hero-signature-line { width: 24px; margin: 4px 0 3px; }
    .hero-controls {
        right: 22px;
        bottom: 22px;
    }
    .hero-arrow {
        width: 30px;
        height: 30px;
        font-size: 13px;
    }
}

@media (max-width: 600px) {
    .hero-signature {
        display: flex;
        right: 18px;
        top: 18px;
        bottom: auto;
        width: 76px;
        height: 76px;
        background: rgba(25,16,10,.30);
    }
    .hero-signature-mark { font-size: 21px; }
    .hero-signature-name { font-size: 6px; letter-spacing: 1.2px; }
    .hero-signature-caption { font-size: 4.5px; letter-spacing: .7px; }
    .hero-signature-line { width: 20px; }

    .hero-controls {
        left: 18px;
        right: 18px;
        bottom: 20px;
        justify-content: space-between;
        gap: 7px;
    }

    .hero-dots {
        flex: 1;
        justify-content: center;
    }

    .hero-arrow {
        width: 32px;
        height: 32px;
        background: rgba(20,12,8,.58);
    }

    .hero-dot {
        width: 6px;
        height: 6px;
    }

    .hero-dot.active {
        width: 20px;
    }
}

@media (max-width: 380px) {
    .hero-signature {
        width: 68px;
        height: 68px;
        right: 14px;
        top: 14px;
    }
    .hero-signature-mark { font-size: 19px; }
    .hero-signature-name { font-size: 5.5px; }
    .hero-signature-caption { font-size: 4px; }
    .hero-controls {
        left: 14px;
        right: 14px;
    }
}


/* =========================================================
   NOOPURA LOGO SIGNATURE IN HERO
   ========================================================= */
.hero-logo-signature {
    position:absolute !important;
    z-index:7 !important;
    right:clamp(24px,5vw,82px) !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:250px !important;
    height:auto !important;
    display:block !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
.hero-logo-card {
    background:rgba(255,255,255,.96);
    border:1px solid rgba(211,170,93,.85);
    border-radius:10px;
    padding:16px 18px 12px;
    box-shadow:0 18px 45px rgba(0,0,0,.28), 0 0 0 5px rgba(255,255,255,.08);
    position:relative;
}
.hero-logo-card:before,
.hero-logo-card:after {
    content:"";
    position:absolute;
    left:50%;
    width:58px;
    height:1px;
    background:#D0AC56;
    transform:translateX(-50%);
}
.hero-logo-card:before { top:7px; }
.hero-logo-card:after { bottom:7px; }
.hero-logo-image {
    width:100%;
    height:auto;
    max-height:105px;
    object-fit:contain;
    display:block;
}

/* =========================================================
   PREMIUM FOOTER
   ========================================================= */
.noopura-footer {
    background:linear-gradient(135deg,#02154F 0%,#3B2A1B 48%,#02154F 100%);
    color:#F7F2E9;
    margin-top:0;
    position:relative;
    overflow:hidden;
}
.noopura-footer:before {
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height:2px;
    background:linear-gradient(90deg,transparent,#D0AC56,#F7F2E9,#D0AC56,transparent);
}
.footer-main {
    max-width:1240px;
    margin:0 auto;
    padding:62px 28px 48px;
    display:grid;
    grid-template-columns:1.6fr 1fr 1fr 1.45fr;
    gap:48px;
}
.footer-brand { min-width:0; }
.footer-logo-link { display:inline-block; background:#fff; border-radius:7px; padding:8px 13px 5px; border:1px solid rgba(205,164,88,.55); }
.footer-logo-image { width:190px; max-width:100%; height:auto; display:block; }
.footer-tagline { color:#F7F2E9; font-size:13px; line-height:1.8; max-width:310px; margin:18px 0 20px; }
.footer-contact-list { display:flex; flex-direction:column; gap:10px; }
.footer-contact-list a { color:#F7F2E9; text-decoration:none; font-size:12px; transition:color .2s ease; }
.footer-contact-list a:hover { color:#D0AC56; }
.footer-contact-icon { color:#D0AC56; margin-right:7px; }
.footer-column h4 { color:#D0AC56; font-size:11px; letter-spacing:2.4px; margin:2px 0 18px; }
.footer-column a { color:#F7F2E9; text-decoration:none; font-size:12px; display:block; margin:0 0 12px; transition:color .2s ease,transform .2s ease; }
.footer-column a:hover { color:#fff; transform:translateX(3px); }
.footer-social-column p { color:#F7F2E9; font-size:12px; line-height:1.7; margin:0 0 16px; }
.footer-socials { display:flex; gap:10px; margin:5px 0 24px; }
.footer-socials a { width:38px; height:38px; border:1px solid rgba(213,174,100,.45); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0; color:#D0AC56; background:rgba(255,255,255,.035); }
.footer-socials a:hover { background:#D0AC56; color:#fff; border-color:#D0AC56; transform:translateY(-2px); }
.footer-socials svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.footer-socials a:nth-child(2) svg path:first-child { fill:currentColor; stroke:none; }
.footer-newsletter > span { color:#F7F2E9; font-size:9px; letter-spacing:2px; display:block; margin-bottom:8px; }
.footer-newsletter-row { display:flex; border:1px solid rgba(215,181,116,.38); background:rgba(255,255,255,.035); }
.footer-newsletter-row input { flex:1; min-width:0; background:transparent; border:0; outline:none; color:#fff; padding:11px 12px; font-size:11px; }
.footer-newsletter-row input::placeholder { color:#9e9083; }
.footer-newsletter-row button { border:0; background:#D0AC56; color:#fff; padding:0 15px; font-size:10px; letter-spacing:1px; cursor:pointer; }
.footer-difference {
    margin-top: 2px;
    padding-top: 2px;
}
.footer-difference-eyebrow {
    display:block;
    color:#D0AC56;
    font-size:9px;
    font-weight:700;
    letter-spacing:2px;
    line-height:1.4;
    margin-bottom:8px;
}
.footer-difference-intro {
    color:#F7F2E9;
    font-size:11px;
    line-height:1.65;
    margin:0 0 14px;
    max-width:430px;
}
.footer-difference-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:11px 18px;
}
.footer-difference-item {
    display:flex;
    align-items:flex-start;
    gap:8px;
    min-width:0;
}
.footer-difference-mark {
    flex:0 0 auto;
    color:#D0AC56;
    font-size:12px;
    line-height:1.35;
    margin-top:1px;
}
.footer-difference-item b {
    display:block;
    color:#F4E6BD;
    font-size:10px;
    line-height:1.35;
    letter-spacing:.2px;
    font-weight:700;
}
.footer-difference-item small {
    display:block;
    color:#C5D0E0;
    font-size:9.5px;
    line-height:1.5;
    margin-top:2px;
}

.footer-bottom { max-width:1240px; margin:0 auto; padding:17px 28px 20px; border-top:1px solid rgba(255,255,255,.10); display:flex; justify-content:space-between; gap:20px; color:#897d72; font-size:10px; letter-spacing:.3px; }

/* =========================================================
   WHATSAPP VIDEO CALL BUTTON
   ========================================================= */
.noopura-whatsapp {
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:9999;
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px 14px 10px 10px;
    border-radius:28px;
    background:#1e9f58;
    color:#fff;
    text-decoration:none;
    box-shadow:0 8px 25px rgba(0,0,0,.22);
    font-size:11px;
    font-weight:700;
    letter-spacing:.4px;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.noopura-whatsapp:hover { background:#178849; color:#fff; transform:translateY(-2px); box-shadow:0 12px 30px rgba(0,0,0,.28); }
.whatsapp-icon { width:32px; height:32px; border-radius:50%; background:#fff; color:#1e9f58; display:flex; align-items:center; justify-content:center; }
.whatsapp-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.whatsapp-icon svg path:first-child { fill:currentColor; stroke:none; }
.whatsapp-text { white-space:nowrap; }

@media (max-width:900px) {
    .hero-logo-signature { width:190px !important; right:24px !important; top:auto !important; bottom:72px !important; transform:none !important; }
    .hero-logo-card { padding:11px 12px 9px; }
    .hero-logo-image { max-height:76px; }
    .footer-main { grid-template-columns:1.3fr 1fr 1fr; gap:30px; padding:48px 22px 35px; }
    .footer-social-column { grid-column:1/-1; }
}
@media (max-width:600px) {
    .footer-difference-grid { grid-template-columns:1fr; gap:10px; }
    .footer-difference-intro { max-width:100%; }
}
@media (max-width:380px) {
    .footer-difference-grid { gap:9px; }
}
@media (max-width:600px) {
    .hero-logo-signature { width:145px !important; right:16px !important; top:16px !important; bottom:auto !important; }
    .hero-logo-card { padding:8px 9px 6px; border-radius:7px; }
    .hero-logo-image { max-height:55px; }
    .hero-logo-card:before,.hero-logo-card:after { width:38px; }
    .footer-main { grid-template-columns:1fr 1fr; padding:42px 18px 30px; gap:30px 22px; }
    .footer-brand,.footer-social-column { grid-column:1/-1; }
    .footer-logo-image { width:170px; }
    .footer-bottom { flex-direction:column; padding:16px 18px 20px; gap:6px; }
    .noopura-whatsapp { right:14px; bottom:14px; padding:9px 11px 9px 9px; }
    .whatsapp-icon { width:30px; height:30px; }
    .whatsapp-text { font-size:10px; }
}
@media (max-width:380px) {
    .hero-logo-signature { width:125px !important; right:12px !important; top:12px !important; }
    .hero-logo-image { max-height:46px; }
    .footer-main { grid-template-columns:1fr; }
    .footer-column { grid-column:1; }
}


/* =========================================================
   NOOPURA FINAL V4 POLISH
   1. Real butterfly from the supplied Noopura logo on hero
   2. Stable four-column premium footer
   3. Responsive footer without word-by-word wrapping
   4. Floating WhatsApp video-call request button
   ========================================================= */

.hero-butterfly-signature {
    position:absolute;
    z-index:7;
    right:clamp(24px,5vw,82px);
    top:50%;
    transform:translateY(-50%);
    width:150px;
    height:150px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(211,170,93,.85);
    border-radius:50%;
    box-shadow:0 18px 45px rgba(0,0,0,.28),0 0 0 5px rgba(255,255,255,.08);
    overflow:hidden;
}
.hero-butterfly-signature:after {
    content:"";
    position:absolute;
    inset:8px;
    border:1px solid rgba(199,154,77,.55);
    border-radius:50%;
    pointer-events:none;
}
.hero-butterfly-image {
    width:115px;
    height:auto;
    display:block;
    position:relative;
    z-index:1;
}

/* Premium footer layout: wider brand and social areas prevent narrow wrapping. */
.noopura-footer { width:100%; background:linear-gradient(135deg,#02154F 0%,#3B2A1B 48%,#02154F 100%); color:#F7F2E9; position:relative; overflow:hidden; }
.noopura-footer:before { content:""; position:absolute; left:0; right:0; top:0; height:2px; background:linear-gradient(90deg,transparent,#D0AC56,#F7F2E9,#D0AC56,transparent); }
.footer-main { width:100%; max-width:1320px; margin:0 auto; padding:64px 34px 52px; display:grid; grid-template-columns:minmax(270px,1.65fr) minmax(150px,1fr) minmax(175px,1fr) minmax(300px,1.55fr); gap:54px; box-sizing:border-box; }
.footer-brand,.footer-column,.footer-social-column { min-width:0; }
.footer-logo-link { display:inline-flex; align-items:center; justify-content:center; background:#fff; border-radius:8px; padding:9px 14px 6px; border:1px solid rgba(205,164,88,.55); max-width:100%; box-sizing:border-box; }
.footer-logo-image { width:190px; max-width:100%; height:auto; display:block; }
.footer-tagline { color:#F7F2E9; font-size:13px; line-height:1.8; max-width:330px; margin:19px 0 24px; }
.footer-contact-list { display:flex; flex-direction:column; gap:13px; }
.footer-contact-list a { color:#F7F2E9; text-decoration:none; font-size:12px; display:flex; align-items:center; gap:8px; white-space:normal; }
.footer-contact-list a:hover { color:#D0AC56; }
.footer-contact-icon { color:#D0AC56; width:16px; flex:0 0 16px; text-align:center; }
.footer-column h4,.footer-social-column h4 { color:#D0AC56; font-size:11px; letter-spacing:2.4px; margin:2px 0 19px; }
.footer-column a { color:#F7F2E9; text-decoration:none; font-size:12px; display:block; margin:0 0 13px; line-height:1.45; transition:color .2s ease,transform .2s ease; }
.footer-column a:hover { color:#fff; transform:translateX(3px); }
.footer-social-column p { color:#F7F2E9; font-size:12px; line-height:1.75; max-width:360px; margin:0 0 18px; }
.footer-socials { display:flex; gap:11px; margin:5px 0 25px; }
.footer-socials a { width:40px; height:40px; border:1px solid rgba(213,174,100,.45); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0; color:#D0AC56; background:rgba(255,255,255,.035); transition:background .2s ease,color .2s ease,transform .2s ease,border-color .2s ease; }
.footer-socials a:hover { background:#D0AC56; color:#fff; border-color:#D0AC56; transform:translateY(-3px); }
.footer-socials svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.footer-socials a:nth-child(2) svg path:first-child { fill:currentColor; stroke:none; }
.footer-newsletter > span { color:#F7F2E9; font-size:9px; letter-spacing:2px; display:block; margin-bottom:9px; }
.footer-newsletter-row { display:flex; width:100%; max-width:340px; height:42px; border:1px solid rgba(215,181,116,.38); background:rgba(255,255,255,.035); box-sizing:border-box; }
.footer-newsletter-row input { flex:1; min-width:0; width:auto; background:transparent; border:0; outline:none; color:#fff; padding:0 12px; font-size:11px; box-sizing:border-box; }
.footer-newsletter-row input::placeholder { color:#9e9083; }
.footer-newsletter-row button { flex:0 0 66px; border:0; background:#D0AC56; color:#fff; padding:0; font-size:10px; letter-spacing:1px; cursor:pointer; }
.footer-bottom { width:100%; max-width:1320px; margin:0 auto; padding:19px 34px 22px; border-top:1px solid rgba(255,255,255,.10); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:20px; box-sizing:border-box; color:#897d72; font-size:10px; letter-spacing:.3px; }
.footer-bottom > span:last-child { text-align:right; }
.footer-bottom-links { display:flex; justify-content:center; align-items:center; gap:20px; flex-wrap:wrap; }
.footer-bottom-links a { color:#9b8d80; text-decoration:none; }
.footer-bottom-links a:hover { color:#D0AC56; }

/* Floating WhatsApp: fixed to the viewport but gently moves so it never feels stuck. */
.noopura-whatsapp { position:fixed; right:24px; bottom:24px; z-index:99999; display:flex; align-items:center; gap:9px; padding:10px 15px 10px 9px; border-radius:30px; background:#1fa85a; color:#fff; text-decoration:none; box-shadow:0 10px 28px rgba(0,0,0,.25); font-size:11px; font-weight:700; letter-spacing:.4px; animation:noopuraWhatsappFloat 3.4s ease-in-out infinite; transition:background .2s ease,box-shadow .2s ease,transform .2s ease; }
.noopura-whatsapp:hover { background:#178849; color:#fff; text-decoration:none; box-shadow:0 14px 34px rgba(0,0,0,.32); animation-play-state:paused; transform:translateY(-3px) scale(1.02); }
.whatsapp-icon { width:34px; height:34px; flex:0 0 34px; border-radius:50%; background:#fff; color:#1fa85a; display:flex; align-items:center; justify-content:center; }
.whatsapp-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.whatsapp-icon svg path:first-child { fill:currentColor; stroke:none; }
.whatsapp-text { white-space:nowrap; }
@keyframes noopuraWhatsappFloat { 0%,100%{ transform:translate3d(0,0,0); } 25%{ transform:translate3d(-2px,-4px,0); } 50%{ transform:translate3d(1px,-7px,0); } 75%{ transform:translate3d(2px,-3px,0); } }

@media (max-width:1100px) {
    .footer-main { grid-template-columns:minmax(240px,1.5fr) minmax(145px,1fr) minmax(165px,1fr); gap:34px; padding:52px 26px 42px; }
    .footer-social-column { grid-column:1/-1; }
    .footer-social-column p { max-width:560px; }
    .footer-bottom { padding-left:26px; padding-right:26px; }
}
@media (max-width:700px) {
    .hero-butterfly-signature { width:105px; height:105px; right:16px; top:16px; transform:none; }
    .hero-butterfly-image { width:80px; }
    .footer-main { grid-template-columns:1fr 1fr; padding:44px 22px 34px; gap:34px 24px; }
    .footer-brand,.footer-social-column { grid-column:1/-1; }
    .footer-bottom { grid-template-columns:1fr; text-align:center; padding:18px 22px 22px; gap:10px; }
    .footer-bottom > span:last-child { text-align:center; }
    .footer-bottom-links { gap:8px 16px; }
    .noopura-whatsapp { right:15px; bottom:15px; }
}
@media (max-width:450px) {
    .hero-butterfly-signature { width:88px; height:88px; right:12px; top:12px; }
    .hero-butterfly-image { width:68px; }
    .footer-main { grid-template-columns:1fr; padding:40px 20px 30px; }
    .footer-brand,.footer-social-column { grid-column:auto; }
    .footer-logo-image { width:175px; }
    .noopura-whatsapp { right:12px; bottom:12px; padding:8px 12px 8px 8px; }
    .whatsapp-icon { width:32px; height:32px; flex-basis:32px; }
    .whatsapp-text { font-size:10px; }
}

/* =========================================================
   NOOPURA V6 - FINAL PREMIUM FOOTER FIX
   Fixes the global footer{display:grid} rule that was causing
   the footer-bottom links to appear on the far right/clipped.
   ========================================================= */

html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

/* IMPORTANT: the premium footer is a vertical component.
   Do not allow the old global footer grid rule to affect it. */
footer.noopura-footer {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    clear: both;
}

footer.noopura-footer .footer-main {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 68px 34px 54px;
    display: grid;
    grid-template-columns: minmax(280px, 1.55fr) minmax(150px, .9fr) minmax(175px, 1fr) minmax(300px, 1.45fr);
    gap: 48px;
    align-items: start;
    box-sizing: border-box;
}

footer.noopura-footer .footer-brand {
    min-width: 0;
}

footer.noopura-footer .footer-logo-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 10px;
    padding: 10px 15px 7px;
    border: 1px solid rgba(211,170,93,.70);
    box-shadow: 0 8px 24px rgba(0,0,0,.16);
}

footer.noopura-footer .footer-logo-image {
    width: 190px;
    max-width: 100%;
    height: auto;
    display: block;
}

footer.noopura-footer .footer-tagline {
    max-width: 300px;
    margin: 20px 0 25px;
    color: #F7F2E9;
    font-size: 13px;
    line-height: 1.8;
}

footer.noopura-footer .footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

footer.noopura-footer .footer-contact-list a {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #F7F2E9;
    font-size: 12px;
    line-height: 1.4;
    text-decoration: none;
    white-space: nowrap;
}

footer.noopura-footer .footer-contact-list a:hover {
    color: #F7F2E9;
}

footer.noopura-footer .footer-contact-icon {
    width: 17px;
    flex: 0 0 17px;
    color: #D0AC56;
    text-align: center;
}

footer.noopura-footer .footer-column,
footer.noopura-footer .footer-social-column {
    min-width: 0;
}

footer.noopura-footer .footer-column h4,
footer.noopura-footer .footer-social-column h4 {
    margin: 3px 0 20px;
    color: #D0AC56;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.5px;
    line-height: 1.2;
}

footer.noopura-footer .footer-column a {
    display: block;
    margin: 0 0 13px;
    color: #F7F2E9;
    font-size: 12px;
    line-height: 1.45;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

footer.noopura-footer .footer-column a:hover {
    color: #fff;
    transform: translateX(3px);
}

footer.noopura-footer .footer-social-column p {
    max-width: 350px;
    margin: 0 0 18px;
    color: #F7F2E9;
    font-size: 12px;
    line-height: 1.75;
}

footer.noopura-footer .footer-socials {
    display: flex;
    gap: 10px;
    margin: 3px 0 27px;
}

footer.noopura-footer .footer-socials a {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    border: 1px solid rgba(213,174,100,.48);
    border-radius: 50%;
    color: #D0AC56;
    background: rgba(255,255,255,.035);
    transition: background .2s ease, color .2s ease, transform .2s ease, border-color .2s ease;
}

footer.noopura-footer .footer-socials a:hover {
    background: #D0AC56;
    color: #fff;
    border-color: #D0AC56;
    transform: translateY(-3px);
}

footer.noopura-footer .footer-socials svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

footer.noopura-footer .footer-socials a:nth-child(2) svg path:first-child {
    fill: currentColor;
    stroke: none;
}

footer.noopura-footer .footer-newsletter > span {
    display: block;
    margin-bottom: 9px;
    color: #F7F2E9;
    font-size: 9px;
    letter-spacing: 2px;
}

footer.noopura-footer .footer-newsletter-row {
    width: 100%;
    max-width: 350px;
    height: 44px;
    display: flex;
    border: 1px solid rgba(215,181,116,.40);
    background: rgba(255,255,255,.035);
    box-sizing: border-box;
}

footer.noopura-footer .footer-newsletter-row input {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    padding: 0 13px;
    font-size: 11px;
    box-sizing: border-box;
}

footer.noopura-footer .footer-newsletter-row input::placeholder {
    color: #9e9083;
}

footer.noopura-footer .footer-newsletter-row button {
    flex: 0 0 70px;
    border: 0;
    background: #D0AC56;
    color: #fff;
    padding: 0;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    cursor: pointer;
}

footer.noopura-footer .footer-newsletter-row button:hover {
    background: #D0AC56;
}

/* Clean, full-width bottom bar. Nothing can escape to the right. */
footer.noopura-footer .footer-bottom {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px 34px 23px;
    border-top: 1px solid rgba(255,255,255,.10);
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 22px;
    color: #8f8175;
    font-size: 10px;
    line-height: 1.5;
    letter-spacing: .25px;
    box-sizing: border-box;
}

footer.noopura-footer .footer-bottom > span {
    min-width: 0;
}

footer.noopura-footer .footer-bottom > span:last-child {
    text-align: right;
}

footer.noopura-footer .footer-bottom-links {
    min-width: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

footer.noopura-footer .footer-bottom-links a {
    display: inline-block;
    margin: 0;
    color: #9f9185;
    font-size: 10px;
    line-height: 1.4;
    text-decoration: none;
    white-space: nowrap;
}

footer.noopura-footer .footer-bottom-links a:hover {
    color: #D0AC56;
}

/* Subtle premium divider above the footer content. */
footer.noopura-footer:before {
    height: 2px;
}

/* Keep the WhatsApp button independent from the footer layout. */
.noopura-whatsapp {
    position: fixed !important;
    right: 24px !important;
    bottom: 24px !important;
    z-index: 99999 !important;
}

@media (max-width:1100px) {
    footer.noopura-footer .footer-main {
        grid-template-columns: minmax(240px,1.45fr) minmax(145px,1fr) minmax(165px,1fr);
        gap: 34px;
        padding: 52px 26px 42px;
    }

    footer.noopura-footer .footer-social-column {
        grid-column: 1 / -1;
    }

    footer.noopura-footer .footer-social-column p {
        max-width: 600px;
    }

    footer.noopura-footer .footer-bottom {
        padding-left: 26px;
        padding-right: 26px;
    }
}

@media (max-width:700px) {
    footer.noopura-footer .footer-main {
        grid-template-columns: 1fr 1fr;
        padding: 46px 22px 34px;
        gap: 34px 24px;
    }

    footer.noopura-footer .footer-brand,
    footer.noopura-footer .footer-social-column {
        grid-column: 1 / -1;
    }

    footer.noopura-footer .footer-bottom {
        grid-template-columns: 1fr;
        text-align: center;
        padding: 18px 22px 22px;
        gap: 9px;
    }

    footer.noopura-footer .footer-bottom > span:last-child {
        text-align: center;
    }

    footer.noopura-footer .footer-bottom-links {
        gap: 8px 16px;
    }

    .noopura-whatsapp {
        right: 15px !important;
        bottom: 15px !important;
    }
}

@media (max-width:450px) {
    footer.noopura-footer .footer-main {
        grid-template-columns: 1fr;
        padding: 40px 20px 30px;
    }

    footer.noopura-footer .footer-brand,
    footer.noopura-footer .footer-social-column {
        grid-column: auto;
    }

    footer.noopura-footer .footer-logo-image {
        width: 175px;
    }

    footer.noopura-footer .footer-bottom-links {
        flex-direction: column;
        gap: 8px;
    }

    .noopura-whatsapp {
        right: 12px !important;
        bottom: 12px !important;
    }
}


/* =========================================================
   NOOPURA V2 - NAVIGATION + ACTIVE MENU + PREMIUM FOOTER
   ========================================================= */

/* Keep every top-level menu item visually consistent. */
.mainnav > a,
.mainnav > .navitem > a,
.mainnav > a.offer {
    color: #3B2A1B !important;
    background: transparent !important;
    font-weight: 600;
    position: relative;
    transition: color .2s ease, background-color .2s ease;
}

/* Offers / Best Sellers / New Arrivals use exactly the same base
   treatment as the other menu items. */
.mainnav > a.offer {
    color: #3B2A1B !important;
}

/* Elegant hover state without changing the menu palette. */
.mainnav > a:hover,
.mainnav > .navitem > a:hover,
.mainnav > a.offer:hover {
    color: #D0AC56 !important;
    background: #F7F9FC !important;
}

/* Selected/current menu item. */
.mainnav > a.nav-active,
.mainnav > .navitem > a.nav-active {
    color: #756454 !important;
    background: #F7F9FC !important;
}

.mainnav > a.nav-active:after,
.mainnav > .navitem > a.nav-active:after {
    content: "";
    position: absolute;
    left: 13px;
    right: 13px;
    bottom: 5px;
    height: 2px;
    background: #D0AC56;
    border-radius: 2px;
}

/* When a mega-menu parent is active, keep it highlighted even when
   the pointer is not over it. */
.mainnav > .navitem > a.nav-active {
    box-shadow: inset 0 -1px 0 rgba(181,138,69,.15);
}

/* =========================================================
   PREMIUM FOOTER
   ========================================================= */

footer.noopura-footer {
    background:
        radial-gradient(circle at 82% 8%, rgba(181,138,69,.10), transparent 28%),
        linear-gradient(135deg, #3B2A1B 0%, #3B2A1B 48%, #3B2A1B 100%) !important;
    color: #eee !important;
    border-top: 1px solid rgba(212,169,91,.45);
}

footer.noopura-footer:before {
    background: linear-gradient(90deg, transparent, #D0AC56, transparent) !important;
}

footer.noopura-footer .footer-trust-strip {
    max-width: 1280px;
    margin: 0 auto;
    padding: 22px 34px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    border-bottom: 1px solid rgba(255,255,255,.09);
}

footer.noopura-footer .footer-trust-item {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 12px 14px;
    border: 1px solid rgba(212,169,91,.14);
    background: rgba(255,255,255,.025);
    border-radius: 8px;
}

footer.noopura-footer .footer-trust-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #D0AC56;
    border: 1px solid rgba(223,184,109,.42);
    background: rgba(223,184,109,.07);
}

footer.noopura-footer .footer-trust-icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.45;
    stroke-linecap: round;
    stroke-linejoin: round;
}

footer.noopura-footer .footer-trust-item b {
    display: block;
    color: #F7F2E9;
    font-size: 11px;
    letter-spacing: .8px;
    margin-bottom: 4px;
}

footer.noopura-footer .footer-trust-item small {
    display: block;
    color: #9f9185;
    font-size: 10px;
    line-height: 1.4;
}

footer.noopura-footer .footer-main {
    max-width: 1280px;
    padding-top: 58px;
    padding-bottom: 52px;
}

footer.noopura-footer .footer-logo-link {
    padding: 12px 18px 9px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,.24);
}

footer.noopura-footer .footer-logo-image {
    width: 205px;
}

footer.noopura-footer .footer-tagline {
    font-size: 13px;
    line-height: 1.85;
    color: #F7F2E9;
}

footer.noopura-footer .footer-contact-list a {
    font-size: 12px;
}

footer.noopura-footer .footer-contact-icon {
    width: 23px;
    height: 23px;
    flex: 0 0 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

footer.noopura-footer .footer-contact-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

footer.noopura-footer .footer-socials-large {
    gap: 13px;
    margin: 18px 0 27px;
}

footer.noopura-footer .footer-socials-large a {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    border-radius: 14px;
    border: 1px solid rgba(223,184,109,.45);
    background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
    box-shadow: 0 7px 18px rgba(0,0,0,.16);
}

footer.noopura-footer .footer-socials-large svg {
    width: 25px;
    height: 25px;
    stroke-width: 1.5;
}

footer.noopura-footer .footer-socials-large a:hover {
    transform: translateY(-4px);
    background: #D0AC56;
    border-color: #dfbd78;
    box-shadow: 0 10px 22px rgba(0,0,0,.25);
}

footer.noopura-footer .footer-newsletter-row {
    min-height: 46px;
    border-radius: 5px;
    overflow: hidden;
}

footer.noopura-footer .footer-newsletter-row input {
    padding: 13px 14px;
}

footer.noopura-footer .footer-newsletter-row button {
    min-width: 70px;
    font-weight: 700;
}

footer.noopura-footer .footer-bottom {
    max-width: 1280px;
    padding-top: 20px;
    padding-bottom: 22px;
}

@media (max-width: 1100px) {
    footer.noopura-footer .footer-trust-strip {
        grid-template-columns: 1fr 1fr;
        padding: 20px 26px;
    }
}

@media (max-width: 700px) {
    footer.noopura-footer .footer-trust-strip {
        grid-template-columns: 1fr;
        padding: 18px 20px;
    }

    footer.noopura-footer .footer-trust-item {
        padding: 13px;
    }

    footer.noopura-footer .footer-main {
        padding-top: 45px;
    }

    footer.noopura-footer .footer-socials-large a {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
    }

    .mainnav > a.nav-active:after,
    .mainnav > .navitem > a.nav-active:after {
        left: 9px;
        right: 9px;
        bottom: 3px;
    }
}

@media (max-width: 450px) {
    footer.noopura-footer .footer-logo-image {
        width: 180px;
    }

    footer.noopura-footer .footer-socials-large {
        gap: 10px;
    }

    footer.noopura-footer .footer-socials-large a {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }
}

/* =========================================================
   NOOPURA V22 - FIXED HEADER
   Keeps the top contact bar, logo/search/action row and the
   main navigation visible while the page is scrolled.
   The JavaScript sets --noopura-header-height dynamically.
   ========================================================= */
.site-header-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 50000;
    background: #fff;
    box-shadow: 0 2px 12px rgba(45, 30, 20, .10);
}

body {
    padding-top: var(--noopura-header-height, 0px);
}

/* Keep the dropdown above page content when the header is fixed. */
.site-header-fixed .mainnav {
    z-index: 50001;
}

/* =========================================================
   NOOPURA V22 - BACK TO TOP
   ========================================================= */
.noopura-back-to-top {
    position: fixed;
    right: 22px;
    bottom: 26px;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 50%;
    background: #D0AC56;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    z-index: 49000;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity .25s ease, transform .25s ease, visibility .25s ease, background .2s ease;
    box-shadow: 0 8px 22px rgba(45, 30, 20, .28);
}

.noopura-back-to-top.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.noopura-back-to-top:hover {
    background: #756454;
}

.noopura-back-to-top:focus-visible {
    outline: 2px solid #F7F2E9;
    outline-offset: 3px;
}

.noopura-back-to-top svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 900px) {
    .noopura-back-to-top {
        width: 44px;
        height: 44px;
        right: 16px;
        bottom: 78px;
    }
}

@media (max-width: 600px) {
    .noopura-back-to-top {
        width: 42px;
        height: 42px;
        right: 14px;
        bottom: 76px;
    }
}

/* =========================================================
   NOOPURA HOMEPAGE V26 - PREMIUM SPLIT SHOWCASE
   Homepage content only. The Site.master header/navigation is not
   modified by this section.
   ========================================================= */
.hero.hero-split {
    display: grid !important;
    grid-template-columns: minmax(0, 68%) minmax(300px, 32%);
    height: clamp(430px, 43vw, 610px) !important;
    min-height: 430px !important;
    overflow: hidden !important;
    background: #F7F2E9 !important;
}

.hero-split .hero-main-panel {
    position: relative;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    background: #03144B;
}

.hero-split .hero-slides {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hero-split .hero-copy {
    left: clamp(24px, 7vw, 105px);
    width: min(560px, 62vw);
}

.hero-split .hero-controls {
    left: 28px;
    right: 28px;
    justify-content: space-between;
}

.hero-split .hero-dots {
    margin: 0 auto;
}

.hero-split .hero-butterfly-signature {
    right: 28px;
    top: 30px;
    transform: none;
    width: 96px;
    height: 96px;
}

.hero-split .hero-butterfly-image {
    width: 74px;
}

.hero-promo-panel {
    position: relative;
    min-width: 0;
    min-height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    background:
        radial-gradient(circle at 18% 15%, rgba(218,177,101,.18), transparent 28%),
        linear-gradient(145deg, #3B2A1B 0%, #3B2A1B 52%, #170f0c 100%);
}

.hero-promo-panel::before {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(221,183,112,.28);
    pointer-events: none;
}

.hero-promo-inner {
    position: relative;
    z-index: 3;
    width: min(360px, 82%);
    padding: 38px 24px;
}

.hero-promo-kicker {
    color: #D0AC56;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 12px;
}

.hero-promo-mark {
    width: 52px;
    height: 52px;
    margin: 0 auto 18px;
    border: 1px solid rgba(225,189,125,.75);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #D0AC56;
    font: italic 31px Georgia, serif;
}

.hero-promo-inner h2 {
    margin: 0 0 16px;
    color: #fff !important;
    font: 400 clamp(30px, 3.1vw, 46px)/1.03 Georgia, "Times New Roman", serif;
    letter-spacing: 1px;
}

.hero-promo-inner p {
    max-width: 330px;
    margin: 0 auto 22px;
    color: #F7F2E9;
    font: 400 14px/1.65 Georgia, "Times New Roman", serif;
}

.hero-promo-button {
    display: inline-block;
    padding: 12px 22px;
    border: 1px solid #D0AC56;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.hero-promo-button:hover {
    background: #D0AC56;
    color: #3B2A1B;
    transform: translateY(-2px);
}

.hero-promo-ring {
    position: absolute;
    border: 1px solid rgba(215,176,109,.18);
    border-radius: 50%;
    pointer-events: none;
}

.hero-promo-ring-one {
    width: 280px;
    height: 280px;
    right: -170px;
    top: -80px;
}

.hero-promo-ring-two {
    width: 190px;
    height: 190px;
    left: -130px;
    bottom: -70px;
}

@media (max-width: 900px) {
    .hero.hero-split {
        grid-template-columns: 1fr;
        height: auto !important;
        min-height: 0 !important;
    }

    .hero-split .hero-main-panel {
        height: clamp(390px, 72vw, 560px);
    }

    .hero-promo-panel {
        min-height: 390px;
    }

    .hero-promo-inner {
        padding: 44px 20px;
    }
}

@media (max-width: 600px) {
    .hero-split .hero-main-panel {
        height: 430px;
    }

    .hero-split .hero-copy {
        left: 22px;
        right: 22px;
        width: auto;
        top: 46%;
    }

    .hero-split .hero-copy h1 {
        font-size: 32px;
        margin-bottom: 12px;
    }

    .hero-split .hero-copy p {
        font-size: 12px;
        line-height: 1.5;
        max-width: 310px;
    }

    .hero-split .hero-copy .btn {
        padding: 11px 16px;
        font-size: 10px;
    }

    .hero-split .hero-secondary {
        margin-left: 5px;
    }

    .hero-split .hero-butterfly-signature {
        width: 68px;
        height: 68px;
        right: 14px;
        top: 14px;
    }

    .hero-split .hero-butterfly-image {
        width: 52px;
    }

    .hero-split .hero-controls {
        left: 14px;
        right: 14px;
        bottom: 16px;
    }

    .hero-promo-panel {
        min-height: 350px;
    }

    .hero-promo-inner h2 {
        font-size: 34px;
    }
}

@media (max-width: 380px) {
    .hero-split .hero-main-panel {
        height: 400px;
    }

    .hero-split .hero-copy h1 {
        font-size: 28px;
    }

    .hero-promo-panel {
        min-height: 330px;
    }
}

/* Common customer + administrator login */
.login-note{max-width:560px;margin:0 auto 22px;line-height:1.7;color:#6b625b;text-align:center;font-size:15px}
.login-register{text-align:center;margin:18px 0 0;color:#6b625b;font-size:14px}.login-register a{color:#756454;text-decoration:none;font-weight:600}.login-register a:hover{text-decoration:underline}

/* =========================================================
   AUTHENTICATED HEADER STATES
   ========================================================= */
.head-admin-action .head-icon,.head-logout-action .head-icon{color:#D0AC56}
.head-admin-action .head-label{font-weight:600;color:#756454}
.head-logout-action .head-label{color:#756454}
@media(max-width:1100px){.headlinks{gap:12px}.head-label{font-size:11px}}
@media(max-width:850px){.headlinks{width:100%;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:8px}.head-action{padding:6px 8px}}


/* =========================================================
   V35 FORM VALIDATION
   ========================================================= */

.formbox > label {
    display: block;
    margin: 13px 0 6px;
    color: #5f5147;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .35px;
}

.formbox > input,
.formbox > textarea,
.formbox > select {
    width: 100%;
}

.validation-intro {
    margin: 0 0 16px;
    padding: 10px 12px;
    border-left: 3px solid #D0AC56;
    background: #F7F9FC;
    color: #75685e;
    font-size: 10px;
    line-height: 1.6;
}

.validation-intro strong {
    color: #756454;
}

.password-help {
    margin: -3px 0 16px;
    color: #8b7c70;
    font-size: 10px;
    line-height: 1.55;
}

.formbox .btn {
    margin-top: 8px;
}

@media (max-width: 600px) {
    .formbox > label {
        font-size: 10px;
    }

    .validation-intro {
        font-size: 9px;
    }
}

/* =========================================================
   V37 SITE-WIDE FORM READABILITY + VALIDATION
   Applies to Login, Register, Checkout and other customer forms.
   ========================================================= */
.formbox > label,
.formbox label {
    display: block;
    margin: 16px 0 7px;
    color: #3B2A1B;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: .15px;
}

.formbox input:not([type="submit"]),
.formbox input:not([type="button"]),
.formbox input:not([type="hidden"]),
.formbox textarea,
.formbox select {
    min-height: 50px;
    padding: 13px 14px;
    border: 1px solid #F7F2E9;
    border-radius: 4px;
    background: #fff;
    color: #3B2A1B;
    font-size: 16px;
    line-height: 1.45;
}

.formbox textarea { min-height: 125px; resize: vertical; }
.formbox input::placeholder,
.formbox textarea::placeholder { color: #9b9189; opacity: 1; }

.formbox input:focus,
.formbox textarea:focus,
.formbox select:focus {
    outline: none;
    border-color: #D0AC56;
    box-shadow: 0 0 0 3px rgba(162,123,66,.12);
}

/* Site-wide validation states. */
.formbox input.validation-input-error,
.formbox select.validation-input-error,
.formbox textarea.validation-input-error,
.filters input.validation-input-error,
.filters select.validation-input-error {
    border: 2px solid #c4473b !important;
    background: #fff9f8;
    box-shadow: 0 0 0 3px rgba(196,71,59,.08) !important;
}

.formbox input.validation-input-valid,
.formbox select.validation-input-valid,
.formbox textarea.validation-input-valid {
    border: 2px solid #3d8a58 !important;
    background: #fbfffc;
}

.formbox label.validation-error,
label.validation-error {
    display: block;
    margin: 7px 0 0;
    color: #b63228;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 700;
    letter-spacing: 0;
}

.formbox .validation-status,
.validation-status {
    margin: 0 0 18px;
    padding: 13px 15px;
    border-radius: 4px;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 700;
}

.validation-status.is-error {
    color: #9f2f26;
    background: #fff3f1;
    border: 1px solid #e4aaa3;
}
.validation-status.is-success {
    color: #286c3f;
    background: #f1faf4;
    border: 1px solid #a9d4b6;
}

.formbox .message {
    display: block;
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 600;
}

.formbox .btn {
    min-height: 48px;
    padding: 0 22px;
    font-size: 12px;
    letter-spacing: .8px;
}

/* Product collection/filter controls. */
.filters input,
.filters select {
    min-height: 46px;
    padding: 11px 13px;
    font-size: 14px;
    border-radius: 4px;
}

@media (max-width: 600px) {
    .formbox { padding: 28px 20px; }
    .formbox > label,
    .formbox label { font-size: 14px; }
    .formbox input:not([type="submit"]),
    .formbox textarea,
    .formbox select { font-size: 16px; }
    .formbox label.validation-error,
    label.validation-error { font-size: 13px; }
}

/* V38: readable customer form fields */
.formbox input,.formbox textarea,.formbox select{
    min-height:48px;
    padding:13px 14px;
    font-size:15px;
    line-height:1.4;
}
.formbox label{
    display:block;
    font-size:14px;
    font-weight:700;
    margin-top:12px;
    color:#3B2A1B;
}

/* =========================================================
   V39 PROFESSIONAL LOGIN
   Login intentionally has no page/sub-page hero. The public
   site header remains, while the login content is self-contained.
   ========================================================= */
.login-page{
    min-height:calc(100vh - 170px);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:48px 24px 64px;
    background:linear-gradient(135deg,#F7F2E9 0%,#fff 52%,#F7F2E9 100%);
}
.login-shell{
    width:100%;
    max-width:1080px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 460px;
    background:#fff;
    border:1px solid #F7F2E9;
    box-shadow:0 24px 70px rgba(67,47,31,.12);
    border-radius:18px;
    overflow:hidden;
}
.login-brand-panel{
    position:relative;
    min-height:650px;
    padding:54px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:linear-gradient(145deg,#3B2A1B 0%,#3B2A1B 58%,#756454 100%);
    color:#fff;
}
.login-brand-panel:after{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    right:-120px;
    bottom:-130px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    box-shadow:0 0 0 35px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025);
}
.login-brand{position:relative;z-index:1;display:inline-flex;align-items:center;width:max-content;text-decoration:none}
.login-brand img{width:175px;height:auto;display:block;filter:brightness(0) invert(1);}
.login-brand-copy{position:relative;z-index:1;max-width:470px;margin-top:auto;padding-top:70px}
.login-kicker{display:block;font-size:11px;letter-spacing:2.2px;font-weight:800;color:#756454;text-transform:uppercase}
.login-brand-panel .login-kicker{color:#F7F2E9}
.login-brand-copy h1{margin:14px 0 16px;font-family:Georgia,serif;font-size:52px;line-height:1.05;font-weight:500;letter-spacing:-1px;color:#fff}
.login-brand-copy p{margin:0;max-width:420px;font-size:16px;line-height:1.8;color:rgba(255,255,255,.78)}
.login-brand-line{width:72px;height:1px;background:#D0AC56;margin:30px 0 14px}
.login-brand-caption{font-size:12px;letter-spacing:.6px;color:rgba(255,255,255,.65)}
.login-card{padding:58px 52px 44px;background:#fff;display:flex;flex-direction:column;justify-content:center}
.login-card-head{margin-bottom:22px}
.login-card-head h2{margin:8px 0 8px;font-family:Georgia,serif;font-size:38px;line-height:1.1;font-weight:500;color:#3B2A1B}
.login-card-head p{margin:0;color:#81756d;font-size:14px;line-height:1.6}
.login-field{margin-top:21px}
.login-field>label{display:block;margin:0 0 8px;font-size:13px;font-weight:800;letter-spacing:.15px;color:#3B2A1B}
.login-field>label span{color:#a83d35}
.login-password-wrap{position:relative}
.login-password-wrap input{padding-right:54px!important}
.password-toggle{position:absolute;right:7px;top:7px;width:42px;height:42px;border:0;background:transparent!important;color:#667085;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:6px}
.password-toggle:hover{background:#FBF8F2!important;color:#756454}
.password-toggle:focus{outline:2px solid rgba(162,123,66,.28);outline-offset:1px}
.eye-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.eye-closed{display:none}
.password-toggle.is-visible .eye-open{display:none}
.password-toggle.is-visible .eye-closed{display:block}
.login-options{display:flex;align-items:center;min-height:34px;margin:8px 0 14px}
.remember-check{display:flex!important;align-items:center;gap:8px;margin:0!important;color:#66594f!important;font-size:13px!important;font-weight:600!important;line-height:1.3!important}
.remember-check input{width:17px!important;height:17px!important;min-height:17px!important;padding:0!important;margin:0!important;accent-color:#756454;cursor:pointer}
.remember-check label{margin:0!important;font-size:13px!important;font-weight:600!important;color:#66594f!important;cursor:pointer}
.login-submit{width:100%!important;min-height:52px!important;border:1px solid #756454!important;border-radius:7px!important;background:#756454!important;color:#fff!important;font-size:13px!important;font-weight:800!important;letter-spacing:1.4px!important;box-shadow:0 8px 20px rgba(117,78,43,.16);cursor:pointer}
.login-submit:hover,.login-submit:focus{background:#756454!important;color:#fff!important;border-color:#756454!important}
.login-message{min-height:0;color:#b63228!important;font-size:13px!important;margin-top:10px!important}
.login-divider{display:flex;align-items:center;gap:12px;margin:28px 0 16px;color:#a0968e;font-size:9px;letter-spacing:1.6px;font-weight:800}
.login-divider:before,.login-divider:after{content:"";height:1px;background:#F7F2E9;flex:1}
.login-register-btn{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #F7F2E9;border-radius:7px;text-decoration:none;color:#756454;font-size:12px;font-weight:800;letter-spacing:.8px;background:#fff}
.login-register-btn:hover{background:#F7F2E9;border-color:#F7F2E9;color:#3B2A1B}
.login-back{display:block;text-align:center;margin-top:18px;text-decoration:none;color:#8a7c72;font-size:12px}
.login-back:hover{color:#3B2A1B}
.login-page .validation-status{display:none;margin:0 0 16px}
.login-page .validation-status.is-error,.login-page .validation-status.is-success{display:block}
.login-page .formbox input.validation-input-error,.login-page input.validation-input-error{border:2px solid #c4473b!important;background:#fff8f7!important;box-shadow:0 0 0 3px rgba(196,71,59,.07)!important}
.login-page input.validation-input-valid{border:2px solid #3d8a58!important;background:#fbfffc!important}
.login-page label.validation-error{margin:7px 0 0;color:#b63228;font-size:12px;font-weight:700}

@media(max-width:850px){
    .login-page{padding:28px 16px 45px}
    .login-shell{grid-template-columns:1fr;max-width:520px}
    .login-brand-panel{min-height:250px;padding:30px 30px 34px}
    .login-brand-panel:after{width:220px;height:220px;right:-110px;bottom:-110px}
    .login-brand img{width:145px}
    .login-brand-copy{padding-top:34px;margin-top:0}
    .login-brand-copy h1{font-size:38px;margin:10px 0 10px}
    .login-brand-copy p{font-size:14px;line-height:1.65;max-width:390px}
    .login-brand-line,.login-brand-caption{display:none}
    .login-card{padding:38px 30px 34px}
}
@media(max-width:480px){
    .login-page{padding:14px 10px 28px;min-height:calc(100vh - 125px)}
    .login-shell{border-radius:12px}
    .login-brand-panel{min-height:190px;padding:23px 22px 25px}
    .login-brand img{width:125px}
    .login-brand-copy{padding-top:24px}
    .login-brand-copy h1{font-size:31px}
    .login-brand-copy p{font-size:13px}
    .login-card{padding:31px 21px 27px}
    .login-card-head h2{font-size:32px}
}

/* =========================================================
   V40 - LOGIN POLISH
   Based on V39. Login fields intentionally match the
   site-wide product/customer form treatment.
   ========================================================= */
body.login-only-page {
    overflow-x: hidden;
}

body.login-only-page footer {
    display: none !important;
}

.login-page {
    min-height: calc(100vh - var(--noopura-header-height, 150px));
    height: calc(100vh - var(--noopura-header-height, 150px));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px 24px;
    overflow: hidden;
    background: linear-gradient(135deg, #F7F2E9 0%, #fff 52%, #F7F2E9 100%);
}

.login-shell {
    width: 100%;
    max-width: 1080px;
    height: min(570px, calc(100vh - var(--noopura-header-height, 150px) - 36px));
    min-height: 500px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    background: #fff;
    border: 1px solid #F7F2E9;
    box-shadow: 0 18px 55px rgba(67,47,31,.12);
    border-radius: 14px;
    overflow: hidden;
}

.login-brand-panel {
    min-height: 0;
    height: 100%;
    padding: 34px 44px;
    justify-content: space-between;
    background: linear-gradient(145deg, #3B2A1B 0%, #3B2A1B 58%, #756454 100%);
}

.login-brand {
    width: 230px;
    max-width: 62%;
}

.login-brand img {
    width: 100%;
    height: auto;
    display: block;
    filter: none;
    object-fit: contain;
}

.login-brand-copy {
    max-width: 430px;
    margin-top: auto;
    padding-top: 30px;
}

.login-brand-copy h1 {
    font-size: clamp(34px, 3.7vw, 48px);
    margin: 10px 0 12px;
}

.login-brand-copy p {
    font-size: 14px;
    line-height: 1.65;
}

.login-card {
    min-height: 0;
    padding: 34px 42px 30px;
    justify-content: center;
    overflow: hidden;
}

.login-card-head {
    margin-bottom: 14px;
}

.login-card-head h2 {
    font-size: 36px;
    margin: 6px 0 6px;
}

.login-card-head p {
    font-size: 14px;
}

.login-field {
    margin-top: 16px;
}

.login-field > label {
    margin: 0 0 7px;
    font-size: 14px;
    line-height: 1.4;
}

/* Exact visual family used by the product/customer fields. */
.login-field input:not([type="submit"]),
.login-field input:not([type="button"]) {
    width: 100%;
    min-height: 50px;
    height: 50px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid #F7F2E9;
    border-radius: 4px;
    background: #fff;
    color: #3B2A1B;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.45;
    box-shadow: none;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}

.login-field input::placeholder {
    color: #9b9189;
    opacity: 1;
}

.login-field input:focus {
    border-color: #D0AC56;
    box-shadow: 0 0 0 3px rgba(162,123,66,.12);
}

.login-password-wrap input {
    padding-right: 54px !important;
}

.password-toggle {
    right: 5px;
    top: 4px;
    width: 42px;
    height: 42px;
    border: 0 !important;
    background: transparent !important;
    color: #667085;
    box-shadow: none !important;
}

.password-toggle:hover {
    background: #FBF8F2 !important;
    color: #756454;
}

.login-options {
    min-height: 30px;
    margin: 9px 0 12px;
}

.login-submit {
    min-height: 50px !important;
    height: 50px !important;
    margin-top: 4px !important;
    border-radius: 4px !important;
    background: #3B2A1B !important;
    border: 1px solid #756454 !important;
    color: #fff !important;
}

.login-divider {
    margin: 17px 0 11px;
}

.login-register-btn {
    min-height: 44px;
    border-radius: 4px;
}

.login-back {
    margin-top: 10px;
}

@media (max-height: 720px) and (min-width: 851px) {
    .login-shell {
        height: calc(100vh - var(--noopura-header-height, 150px) - 28px);
        min-height: 0;
    }
    .login-brand-panel { padding: 26px 38px; }
    .login-card { padding: 24px 38px 22px; }
    .login-card-head { margin-bottom: 8px; }
    .login-field { margin-top: 11px; }
    .login-brand-copy { padding-top: 18px; }
    .login-brand-copy h1 { font-size: 38px; margin: 7px 0 9px; }
    .login-brand-copy p { font-size: 13px; }
    .login-divider { margin-top: 11px; }
}

@media (max-width: 850px) {
    .login-page {
        height: auto;
        min-height: calc(100vh - var(--noopura-header-height, 150px));
        padding: 18px 16px 28px;
        overflow: visible;
    }
    .login-shell {
        height: auto;
        min-height: 0;
        grid-template-columns: 1fr;
        max-width: 520px;
    }
    .login-brand-panel {
        height: auto;
        min-height: 205px;
        padding: 25px 28px;
    }
    .login-brand { width: 190px; }
    .login-brand-copy { padding-top: 22px; }
    .login-brand-copy h1 { font-size: 34px; }
    .login-brand-copy p { font-size: 13px; }
    .login-card { padding: 32px 30px 30px; }
}

@media (max-width: 480px) {
    .login-page {
        padding: 10px 10px 22px;
    }
    .login-brand-panel {
        min-height: 165px;
        padding: 20px 21px 22px;
    }
    .login-brand { width: 160px; }
    .login-brand-copy { padding-top: 17px; }
    .login-brand-copy h1 { font-size: 29px; }
    .login-brand-copy p { display: none; }
    .login-card { padding: 27px 21px 25px; }
    .login-card-head h2 { font-size: 31px; }
    .login-field input:not([type="submit"]),
    .login-field input:not([type="button"]) {
        min-height: 48px;
        height: 48px;
        font-size: 16px;
    }
}


/* V41/V42 login viewport safety: never clip the sign-in controls. */
.login-page {
    overflow-x: hidden;
    overflow-y: auto;
}
.login-shell {
    overflow: visible;
}
.login-card {
    overflow: visible;
}
@media (min-width: 851px) {
    .login-page {
        min-height: calc(100vh - var(--noopura-header-height, 150px));
        height: auto;
        align-items: flex-start;
        padding-top: 12px;
        padding-bottom: 24px;
    }
    .login-shell {
        height: auto;
        min-height: 0;
        max-height: none;
    }
    .login-brand-panel { min-height: 560px; height: auto; }
    .login-card { min-height: 560px; height: auto; }
}

/* =========================================================
   V68 - LOGIN ONE-FRAME POLISH + REMEMBER ME VISUAL STATE
   ========================================================= */
.login-brand-panel {
    justify-content: flex-start !important;
    padding-top: 38px !important;
}
.login-brand-copy {
    margin-top: 0 !important;
    padding-top: 52px !important;
    max-width: 440px !important;
}
.login-brand-copy h1 {
    margin-top: 10px !important;
    margin-bottom: 12px !important;
}
.login-brand-copy p {
    max-width: 410px !important;
}
.login-brand-line {
    margin-top: 22px !important;
    margin-bottom: 12px !important;
}
.remember-check input:checked {
    accent-color: #756454 !important;
}
@media (max-width: 900px) {
    .login-brand-panel {
        justify-content: flex-start !important;
        padding-top: 30px !important;
    }
    .login-brand-copy {
        padding-top: 28px !important;
    }
}


/* =========================================================
   V71 - CUSTOMER REGISTRATION / GOOGLE SIGN-IN POLISH
   ========================================================= */
/* V72: Register page keeps the normal Noopura top bar, logo/search/action header, navigation and footer. */
body.register-page-active { overflow-x:hidden; }
.register-page{min-height:calc(100vh - var(--noopura-header-height, 0px));display:flex;align-items:center;justify-content:center;padding:34px 24px 46px;background:linear-gradient(135deg,#F7F2E9 0%,#fff 52%,#F7F2E9 100%);}
.register-shell{width:100%;max-width:1080px;display:grid;grid-template-columns:minmax(0,1fr) 500px;background:#fff;border:1px solid #F7F2E9;border-radius:14px;box-shadow:0 18px 55px rgba(67,47,31,.12);overflow:hidden;}
.register-brand-panel{padding:42px 46px;background:linear-gradient(145deg,#3B2A1B 0%,#3B2A1B 58%,#756454 100%);color:#fff;display:flex;flex-direction:column;justify-content:flex-start;min-height:690px;}
.register-brand{width:220px;max-width:70%;display:block}.register-brand img{width:100%;display:block;height:auto;object-fit:contain}.register-brand-copy{max-width:430px;padding-top:90px}.register-kicker{display:block;letter-spacing:2.8px;font-size:10px;font-weight:800;color:#F7F2E9}.register-brand-copy h1{font:normal 45px Georgia,serif;line-height:1.1;margin:12px 0;color:#fff}.register-brand-copy p{font-size:14px;line-height:1.7;color:#F7F2E9;margin:0;max-width:410px}.register-brand-line{width:72px;height:1px;background:#F7F2E9;margin:25px 0 12px}.register-brand-caption{font:normal 16px Georgia,serif;color:#F7F2E9;letter-spacing:.2px}
.register-card{padding:38px 46px 34px;background:#fff}.register-card-head h2{font:normal 35px Georgia,serif;color:#3B2A1B;margin:7px 0 7px}.register-card-head p{font-size:13px;line-height:1.65;color:#766b63;margin:0 0 12px}.register-field{margin-top:13px}.register-field>label{display:block;font-size:14px;font-weight:700;color:#3B2A1B;margin:0 0 7px}.register-field>label span{color:#b63228}.register-field input:not([type=submit]){width:100%;height:48px;min-height:48px;padding:12px 14px;border:1px solid #F7F2E9;border-radius:4px;background:#fff;color:#3B2A1B;font-size:15px;outline:none}.register-field input:focus{border-color:#D0AC56;box-shadow:0 0 0 3px rgba(162,123,66,.12)}.register-password-wrap{position:relative}.register-password-wrap input{padding-right:54px!important}.register-password-toggle{position:absolute!important;right:5px!important;top:3px!important;width:42px!important;height:42px!important;border:0!important;background:transparent!important;color:#667085!important;box-shadow:none!important}.register-password-toggle:hover{background:#FBF8F2!important}.register-field-error{min-height:0;margin-top:5px;color:#b63228;font-size:12px;font-weight:700}.register-field input.validation-input-error{border:2px solid #c4473b!important;background:#fff8f7!important;box-shadow:0 0 0 3px rgba(196,71,59,.07)!important}.register-field input.validation-input-valid{border:2px solid #3d8a58!important;background:#fbfffc!important}.register-password-help{font-size:12px;line-height:1.5;color:#786d64;margin:10px 0 14px}.register-submit{width:100%;height:50px;border:1px solid #756454;border-radius:5px;background:#756454;color:#fff;font-size:12px;font-weight:800;letter-spacing:1.4px;cursor:pointer;box-shadow:0 8px 20px rgba(117,78,43,.16)}.register-submit:hover,.register-submit:focus{background:#756454}.register-message{display:block;margin-top:9px;font-size:13px;line-height:1.5;font-weight:700}.register-message.is-success{color:#2f7d4a;background:#f3fbf5;border:1px solid #b9ddc3;border-radius:5px;padding:10px 12px}.register-message.is-error{color:#b63228;background:#fff8f7;border:1px solid #e2aaa4;border-radius:5px;padding:10px 12px}.register-divider{display:flex;align-items:center;gap:12px;margin:19px 0 12px;color:#a0968e;font-size:9px;letter-spacing:1.6px;font-weight:800}.register-divider:before,.register-divider:after{content:"";height:1px;background:#F7F2E9;flex:1}.google-register-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;border:1px solid #F7F2E9;border-radius:5px;background:#fff;text-decoration:none;color:#3B2A1B;font-size:13px;font-weight:800;letter-spacing:.2px;cursor:pointer}.google-register-btn:hover{background:#F7F2E9;border-color:#F7F2E9}.google-g{font-family:Arial,sans-serif;font-size:20px;font-weight:700;color:#4285f4}.google-message{display:block;margin-top:8px;font-size:12px;line-height:1.5}.google-message.is-error{color:#b63228}.register-google-note{font-size:11.5px;line-height:1.55;color:#81766e;margin:9px 0 0}.register-login-link{text-align:center;margin:18px 0 0;font-size:13px;color:#756a62}.register-login-link a{color:#756454;font-weight:800;text-decoration:none}.register-back{display:block;text-align:center;margin-top:10px;color:#8a7c72;text-decoration:none;font-size:12px}.register-back:hover{color:#3B2A1B}.oauth-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px;background:#F7F2E9}.oauth-result-card{width:100%;max-width:560px;background:#fff;border:1px solid #F7F2E9;border-radius:14px;padding:45px;box-shadow:0 18px 55px rgba(67,47,31,.12);text-align:center}.oauth-result-card h1{font:normal 31px Georgia,serif;color:#3B2A1B;margin:12px 0 18px}.oauth-message{display:block;font-size:14px;line-height:1.6;color:#62564d}.oauth-message.is-error{color:#b63228;background:#fff8f7;border:1px solid #e2aaa4;padding:12px;border-radius:5px}.oauth-back{display:inline-block;margin-top:22px;padding:12px 22px;background:#3B2A1B;color:#fff;text-decoration:none;border-radius:4px;font-size:12px;font-weight:800;letter-spacing:1px}
@media(max-width:850px){.register-page{padding:26px 15px 38px;align-items:flex-start}.register-shell{grid-template-columns:1fr;max-width:540px}.register-brand-panel{min-height:250px;padding:30px 30px 32px}.register-brand{width:170px}.register-brand-copy{padding-top:34px}.register-brand-copy h1{font-size:36px}.register-brand-copy p{font-size:13px}.register-card{padding:31px 30px 28px}}
@media(max-width:480px){.register-page{padding:18px 10px 30px}.register-brand-panel{min-height:205px;padding:23px 22px}.register-brand{width:145px}.register-brand-copy{padding-top:23px}.register-brand-copy h1{font-size:30px}.register-brand-copy p{font-size:12.5px}.register-card{padding:27px 21px 25px}.register-card-head h2{font-size:30px}.register-field input:not([type=submit]){font-size:16px}}

/* V71 - Google sign-in button shared by Register and Login */
.google-login-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:44px;border:1px solid #F7F2E9;border-radius:4px;background:#fff;text-decoration:none;color:#3B2A1B;font-size:12px;font-weight:800;cursor:pointer}.google-login-btn:hover{background:#F7F2E9;border-color:#F7F2E9}.login-google-divider{margin-top:16px}.login-page .google-message{display:block;margin-top:7px;font-size:11.5px;line-height:1.5}.login-page .google-message.is-error{color:#b63228;background:#fff8f7;border:1px solid #e2aaa4;border-radius:4px;padding:8px 10px}

/* V72 - Keep Site.master chrome visible on Register.aspx. */


/* =========================================================
   NOOPURA V60 - ACCOUNT / USER MENU / WISHLIST POLISH
   Responsive header account menu: hover on desktop, tap on touch.
   ========================================================= */
.head-action,.head-account-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:60px;color:#3B2A1B;text-decoration:none;font-size:11px;line-height:1.2;background:transparent;border:0;cursor:pointer;padding:4px 6px;position:relative}
.head-action:hover,.head-account-trigger:hover,.head-account-trigger:focus-visible{color:#D0AC56}
.head-icon{width:25px;height:25px;display:flex;align-items:center;justify-content:center;color:#3B2A1B}
.head-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.head-label{font-size:10px;white-space:nowrap;letter-spacing:.15px}
.wishlist-header-badge,.cart-header-badge{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;margin-left:3px;border-radius:50%;background:#3B2A1B;color:#fff;font-size:9px;font-weight:700;vertical-align:middle}
.head-account-menu{position:relative;display:flex;align-items:stretch;z-index:6000}
.head-account-trigger{min-width:90px}
.head-account-label-row{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:16px}
.account-menu-chevron{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #3B2A1B;transition:transform .18s ease;margin-top:1px}
.head-account-menu:hover .account-menu-chevron,.head-account-menu.is-open .account-menu-chevron{transform:rotate(180deg)}
.head-account-dropdown{position:absolute;right:0;top:calc(100% + 6px);width:290px;max-width:calc(100vw - 24px);background:#fff;border:1px solid #F7F2E9;border-top:3px solid #3B2A1B;box-shadow:0 18px 45px rgba(48,33,23,.18);padding:8px;z-index:7000;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-5px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
/* Desktop: open naturally on mouse hover. */
@media (hover:hover) and (pointer:fine){
  .head-account-menu:hover .head-account-dropdown,.head-account-menu:focus-within .head-account-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
}
/* Touch/click fallback: JS adds .is-open. */
.head-account-menu.is-open .head-account-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.head-account-summary{display:flex;align-items:center;gap:11px;padding:13px 11px 14px;background:#F7F2E9;margin-bottom:5px}
.head-account-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#3B2A1B;color:#fff;font:normal 18px Georgia,serif;flex:0 0 42px}
.head-account-summary strong{display:block;color:#3B2A1B;font-size:12px;margin-bottom:3px}
.head-account-summary small{display:block;max-width:205px;color:#82766c;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.head-account-dropdown>a{display:flex;align-items:center;gap:9px;padding:12px 10px;color:#3B2A1B;text-decoration:none;font-size:11px;border-radius:3px}
.head-account-dropdown>a:hover,.head-account-dropdown>a:focus-visible{background:#F7F2E9;color:#3B2A1B}
.head-account-dropdown>a b{margin-left:auto;color:#3B2A1B;font-size:10px}
.dropdown-item-icon{width:20px;text-align:center;color:#3B2A1B;font-size:15px}
.head-account-divider{height:1px;background:#F7F2E9;margin:5px 6px}
.head-dropdown-logout{color:#756454!important}
.head-dropdown-logout:hover,.head-dropdown-logout:focus-visible{background:#F7F2E9!important;color:#756454!important}

.account-page{max-width:1180px;margin:0 auto;padding:52px 20px 90px}.account-user{display:block}.account-welcome{display:flex;align-items:center;gap:20px;padding:30px 34px;background:linear-gradient(135deg,#F7F9FC,#F7F2E9);border:1px solid #F7F2E9;margin-bottom:24px}.account-avatar{width:72px;height:72px;border-radius:50%;flex:0 0 72px;display:flex;align-items:center;justify-content:center;background:#3B2A1B;color:#fff;font:normal 29px Georgia,serif;box-shadow:0 7px 18px rgba(101,71,35,.18)}.account-eyebrow{font-size:10px;letter-spacing:2.5px;color:#D0AC56;font-weight:700}.account-welcome h1{margin:7px 0 5px;color:#3B2A1B;font:normal 32px Georgia,serif}.account-welcome p{margin:0;color:#786d64;font-size:13px}.account-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.account-card{display:flex;align-items:center;gap:15px;padding:22px 20px;background:#fff;border:1px solid #F7F2E9;text-decoration:none;color:#3B2A1B;box-shadow:0 7px 22px rgba(58,40,26,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.account-card:hover{transform:translateY(-2px);border-color:#D0AC56;box-shadow:0 12px 28px rgba(58,40,26,.09)}.account-card-icon{width:45px;height:45px;flex:0 0 45px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#F7F2E9;color:#3B2A1B}.account-card-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.account-heart-icon svg{fill:none}.account-card-copy{display:flex;flex-direction:column;gap:5px}.account-card-copy strong{font:normal 19px Georgia,serif;color:#3B2A1B}.account-card-copy small{font-size:11px;color:#81766d}.account-card-count,.account-card-arrow{margin-left:auto;min-width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#3B2A1B;color:#fff;font-size:11px;font-weight:700}.account-card-arrow{background:#F7F2E9;color:#3B2A1B;font-size:20px;font-weight:400}.account-details-panel{margin-top:25px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#3B2A1B;color:#fff}.account-details-panel h2{margin:7px 0 7px;font:normal 25px Georgia,serif}.account-details-panel p{margin:0;max-width:620px;color:#F7F2E9;font-size:12px;line-height:1.7}.account-details-panel .account-eyebrow{color:#D0AC56}.account-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.account-detail-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:0 13px;border:1px solid #D0AC56;color:#F7F2E9;text-decoration:none;font-size:9px;letter-spacing:1px}.account-detail-actions a:hover{background:#3B2A1B;border-color:#3B2A1B;color:#fff}.account-detail-actions .account-signout{border-color:#756454;color:#F7F2E9}.account-guest{max-width:720px;margin:20px auto;padding:65px 35px;text-align:center;background:#F7F2E9;border:1px solid #F7F2E9}.account-guest-icon{width:72px;height:72px;margin:0 auto 22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#F7F2E9;color:#3B2A1B}.account-guest-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.account-guest h1{margin:8px 0 10px;font:normal 36px Georgia,serif;color:#3B2A1B}.account-guest p{max-width:520px;margin:0 auto;color:#766b63;font-size:13px;line-height:1.7}.account-guest-actions{margin-top:25px;display:flex;justify-content:center;gap:10px}.account-primary-btn,.account-secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 21px;text-decoration:none;font-size:10px;letter-spacing:1.1px}.account-primary-btn{background:#3B2A1B;color:#fff}.account-secondary-btn{border:1px solid #F7F2E9;color:#756454;background:#fff}

@media(max-width:1100px){
  .headrow{padding-left:16px;padding-right:16px}
  .headlinks{gap:9px}
  .head-account-trigger{min-width:82px}
}
@media(max-width:850px){
  .headrow{flex-wrap:wrap;position:relative;overflow:visible}
  .headlinks{width:100%;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:8px;overflow:visible}
  .head-account-menu{z-index:8000}
  .head-account-trigger{min-width:78px;padding-left:5px;padding-right:5px}
  .head-account-dropdown{right:50%;transform:translate(50%,-5px);top:calc(100% + 7px);width:290px}
  .head-account-menu.is-open .head-account-dropdown{transform:translate(50%,0)}
  .account-page{padding:35px 15px 65px}.account-welcome{padding:24px}.account-details-panel{display:block}.account-detail-actions{justify-content:flex-start;margin-top:20px}
}
@media(max-width:600px){
  .headlinks{gap:3px}
  .head-action,.head-account-trigger{min-width:62px;padding:5px 3px}
  .head-label{font-size:9px}
  .head-icon{width:23px;height:23px}.head-icon svg{width:20px;height:20px}
  .head-account-dropdown{width:min(300px,calc(100vw - 20px));max-width:calc(100vw - 20px)}
  .account-quick-grid{grid-template-columns:1fr}.account-welcome{align-items:flex-start}.account-avatar{width:58px;height:58px;flex-basis:58px}.account-welcome h1{font-size:25px}.account-guest{padding:50px 20px}.account-guest h1{font-size:29px}.account-guest-actions{flex-direction:column}.account-primary-btn,.account-secondary-btn{width:100%}
}
@media(max-width:380px){
  .head-action,.head-account-trigger{min-width:56px}
  .head-label{font-size:8.5px}
  .head-account-dropdown{width:calc(100vw - 14px);max-width:calc(100vw - 14px)}
}

/* =========================================================
   NOOPURA V60 - USER MENU FINAL POSITION / RESPONSIVE FIX
   - Keeps the customer dropdown above the main navigation.
   - Keeps the dropdown compact.
   - Prevents mobile/tablet clipping and blank-looking menus.
   - Desktop: hover opens the menu.
   - Touch devices: existing tap/click fallback remains active.
   ========================================================= */
.site-header-fixed > header{
    position:relative !important;
    z-index:50002 !important;
}

.site-header-fixed > header > .headrow{
    position:relative !important;
    z-index:50004 !important;
    overflow:visible !important;
}

.site-header-fixed > header > .mainnav{
    position:relative !important;
    z-index:50003 !important;
}

.site-header-fixed .head-account-menu{
    position:relative !important;
    z-index:50010 !important;
}

.site-header-fixed .head-account-dropdown{
    width:250px !important;
    max-width:calc(100vw - 20px) !important;
    right:0 !important;
    left:auto !important;
    top:calc(100% + 2px) !important;
    z-index:50020 !important;
    box-sizing:border-box !important;
}

/* The dropdown must sit over the navigation, not below it. */
.site-header-fixed .head-account-menu:hover .head-account-dropdown,
.site-header-fixed .head-account-menu:focus-within .head-account-dropdown,
.site-header-fixed .head-account-menu.is-open .head-account-dropdown{
    z-index:50020 !important;
}

@media (max-width:850px){
    .site-header-fixed > header > .headrow{
        z-index:50004 !important;
    }

    .site-header-fixed > header > .mainnav{
        z-index:50003 !important;
    }

    .site-header-fixed .head-account-dropdown{
        width:270px !important;
        max-width:calc(100vw - 16px) !important;
        right:0 !important;
        left:auto !important;
        top:calc(100% + 3px) !important;
        transform:translateY(-5px) !important;
    }

    .site-header-fixed .head-account-menu:hover .head-account-dropdown,
    .site-header-fixed .head-account-menu:focus-within .head-account-dropdown,
    .site-header-fixed .head-account-menu.is-open .head-account-dropdown{
        transform:translateY(0) !important;
    }
}

@media (max-width:600px){
    .site-header-fixed .head-account-dropdown{
        width:260px !important;
        max-width:calc(100vw - 12px) !important;
        padding:6px !important;
    }

    .site-header-fixed .head-account-summary{
        padding:11px 9px 12px !important;
    }

    .site-header-fixed .head-account-dropdown>a{
        min-height:42px;
        padding:10px 9px !important;
        font-size:11px !important;
    }
}

@media (max-width:380px){
    .site-header-fixed .head-account-dropdown{
        width:250px !important;
        max-width:calc(100vw - 8px) !important;
    }
}


/* V60 Mobile account dropdown touch selection fix */
@media(max-width:900px){
 .head-account-menu{z-index:10000}
 .head-account-dropdown{z-index:10001;touch-action:manipulation}
 .head-account-dropdown>a{min-height:46px;-webkit-tap-highlight-color:transparent}
}


/* =========================================================
   V32 - MOBILE TOUCH DROPDOWN STABILITY
   Do not allow a touch-device :hover state to override the
   JavaScript-controlled .open state. Desktop is unchanged.
   ========================================================= */
/* V32 touch-device hover suppression removed: responsive viewports may use mouse/trackpad hover. */


/* =========================================================
   V33 - FINAL MOBILE TAP DROPDOWN FIX
   The top-level menu trigger is tap-controlled on mobile/tablet.
   Prevent the browser's touch -> mouse synthesis from changing
   the menu state a second time. Desktop styling is unchanged.
   ========================================================= */
@media (max-width: 900px) {
    .mainnav .navitem > a {
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent;
    }

    /* The mega menu itself remains interactive when it is opened by
       either hover or the mobile .open state. */

    .mainnav .navitem.open > .mega,
    .mainnav .navitem.open:hover > .mega {
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}

/* =========================================================
   V39 PRODUCT DETAILS: CLEAN ACTIONS + AMAZON-STYLE HOVER ZOOM
   Keeps the existing product detail design and only improves
   button spacing/state presentation and image hover behavior.
   ========================================================= */
.detail-image-column{min-width:0;position:relative}
.detail-image-zoom{position:relative;width:100%;overflow:visible}
.detail-image-zoom .detailimg{display:block;width:100%;height:560px;object-fit:cover;cursor:crosshair}
.detail-zoom-hint{display:none;position:absolute;left:14px;bottom:14px;padding:7px 10px;background:rgba(45,33,27,.78);color:#fff;font-size:9px;letter-spacing:1px;pointer-events:none}
.detail-zoom-pane{position:absolute;left:calc(100% + 18px);top:0;width:520px;height:520px;background-repeat:no-repeat;background-size:220% 220%;background-color:#F7F2E9;border:1px solid #F7F2E9;box-shadow:0 12px 30px rgba(45,33,27,.16);opacity:0;visibility:hidden;pointer-events:none;z-index:80;transition:opacity .12s ease,visibility .12s ease}
.detail-zoom-pane.is-visible{opacity:1;visibility:visible}
.detail-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}
.detail-actions .btn{margin-top:0;min-height:44px}
.detail-actions .product-wishlist-button{min-width:210px}
.product-wishlist-button.is-wishlisted{background:#3B2A1B!important;border-color:#3B2A1B!important;color:#fff!important;box-shadow:0 6px 16px rgba(72,48,24,.14)}
@media (hover:hover) and (pointer:fine) and (min-width:851px){
  .detail-image-zoom:hover .detail-zoom-hint{display:block}
}
@media (max-width:850px){
  .detail-image-zoom{overflow:visible}
  .detail-image-zoom .detailimg{height:auto;max-height:600px;cursor:zoom-in}
  .detail-zoom-pane{left:0;top:0;width:100%;height:100%;max-height:600px;background-size:220% 220%;z-index:80}
  .detail-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}
  .detail-actions .btn,.detail-actions .product-wishlist-button{width:100%;min-width:0;margin-right:0}
}

/* =========================================================
   V41 - PREMIUM RESPONSIVE PRODUCT DETAIL EXPERIENCE
   Visual-only refinement built on V40. Existing product logic,
   wishlist state and image zoom remain intact.
   ========================================================= */
.product-detail-v41{max-width:1240px;margin:0 auto;padding:20px 28px 85px;color:#3B2A1B}
.product-breadcrumb-v41{display:flex;align-items:center;gap:9px;margin:4px 0 24px;color:#9a8a7c;font-size:12px;letter-spacing:.7px;text-transform:uppercase;white-space:nowrap;overflow:hidden}
.product-breadcrumb-v41 a{color:#756454;text-decoration:none}.product-breadcrumb-v41 strong{font-weight:700;color:#3B2A1B;overflow:hidden;text-overflow:ellipsis}.product-breadcrumb-v41 span{color:#F7F2E9}
.detail-v41{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:72px;align-items:start}
.detail-gallery-v41{min-width:0}.detail-gallery-stage-v41{position:relative;background:linear-gradient(145deg,#F7F2E9,#F7F2E9);border:1px solid #F7F2E9;padding:18px;min-height:540px}
.detail-gallery-stage-v41:before{content:"";position:absolute;inset:10px;border:1px solid rgba(167,125,56,.13);pointer-events:none}
.detail-image-zoom{position:relative;width:100%;height:100%;overflow:visible;z-index:2}.detail-image-frame-v41{height:500px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #F7F2E9;overflow:hidden}
.detail-image-zoom .detailimg{display:block;width:100%;height:100%;object-fit:contain;background:#fff;cursor:crosshair;transition:transform .35s ease}
.detail-image-zoom:hover .detailimg{transform:scale(1.015)}
.detail-gallery-badge-v41{position:absolute;left:22px;top:22px;padding:8px 10px;background:rgba(255,255,255,.92);border:1px solid #F7F2E9;color:#756454;font-size:9px;letter-spacing:1.7px;font-weight:700}
.detail-gallery-caption-v41{display:flex;justify-content:space-between;gap:15px;padding:12px 2px 0;color:#95867a;font-size:11px;letter-spacing:1px;text-transform:uppercase}.detail-gallery-caption-v41 span:first-child{color:#756454;font-weight:700}
.detail-mobile-zoom-v41{display:none;position:absolute;right:20px;top:20px;width:38px;height:38px;border-radius:50%;border:1px solid #F7F2E9;background:rgba(255,255,255,.95);color:#756454;font-size:22px;line-height:1;align-items:center;justify-content:center;z-index:5}
.detail-info-v41{padding:10px 0 0}.detail-category-v41{font-size:11px;color:#D0AC56;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;margin-bottom:12px}.detail-info-v41 h1{margin:0;color:#3B2A1B;font:normal 40px/1.1 Georgia,serif;letter-spacing:.2px;max-width:640px}.detail-rating-v41{display:flex;align-items:center;gap:12px;margin:17px 0 18px}.detail-rating-v41 .stars{font-size:15px;letter-spacing:3px;color:#756454}.rating-label{font-size:12px;color:#897a6e;letter-spacing:.4px}.detail-price-row-v41{display:flex;align-items:baseline;gap:5px;padding:17px 0 18px;border-top:1px solid #F7F2E9;border-bottom:1px solid #F7F2E9}.detail-price-row-v41 h2{margin:0;color:#756454;font-size:34px;font-weight:700}.detail-currency-v41{font-size:21px;color:#756454;font-weight:700}.detail-offer-box-v54{margin:0 0 18px;padding:11px 13px 10px;border:1px solid #F7F2E9;background:#F7F2E9;max-width:430px}.detail-offer-price-line-v54{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.detail-offer-price-v54{font-size:22px;line-height:1.1;font-weight:800;color:#3B2A1B}.detail-offer-mrp-v54{font-size:11px;color:#8b8178}.detail-offer-price-hint-v54{font-size:9px;color:#756454;font-weight:700;letter-spacing:1px}.detail-offer-mrp-v54 label{text-decoration:line-through;text-decoration-thickness:1px}.detail-offer-benefit-v54{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:5px;font-size:11px;line-height:1.2}.detail-offer-benefit-v54>span{color:#756454;font-weight:600}.detail-offer-benefit-v54 strong{font-size:10px;color:#9a5d45;letter-spacing:.4px}.detail-offer-box-v54+.detail-offer-label-v41{margin-top:0}.detail-intro-v41{margin:19px 0 24px;color:#71665d;font-size:15px;line-height:1.75;max-width:620px}.detail-spec-card-v41{border:1px solid #F7F2E9;background:#F7F2E9;padding:18px 19px 6px}.detail-spec-heading-v41{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #F7F2E9;color:#756454;font-size:11px;font-weight:700;letter-spacing:1.7px}.detail-spec-heading-v41 span:last-child{color:#b7a99d;font-weight:400}.detail-spec-grid-v41{display:grid;grid-template-columns:repeat(3,1fr)}.detail-spec-grid-v41>div{padding:15px 10px 13px 0;border-right:1px solid #F7F2E9}.detail-spec-grid-v41>div:not(:first-child){padding-left:16px}.detail-spec-grid-v41>div:last-child{border-right:0}.detail-spec-grid-v41 span{display:block;color:#95867b;font-size:11px;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}.detail-spec-grid-v41 strong{color:#3B2A1B;font-size:14px;font-weight:600}.detail-spec-grid-v41 .in-stock-v41{color:#7d704f}.detail-actions-v41{display:grid!important;grid-template-columns:1.15fr .85fr;gap:10px;margin-top:22px}.detail-actions-v41 .btn{width:100%;min-width:0!important;min-height:50px;margin:0!important;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:1.1px}.detail-cart-btn-v41{box-shadow:0 8px 20px rgba(102,73,34,.16)}.detail-wish-btn-v41{background:#fff!important}.detail-action-note-v41{margin:9px 0 0;color:#9a8c81;font-size:11px;line-height:1.6}.detail-accordion-v41{margin-top:25px;border-top:1px solid #F7F2E9}.detail-accordion-v41 details{border-bottom:1px solid #F7F2E9}.detail-accordion-v41 summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:17px 2px;cursor:pointer;color:#3B2A1B;font-size:11px;font-weight:700;letter-spacing:1.5px}.detail-accordion-v41 summary::-webkit-details-marker{display:none}.detail-accordion-v41 summary b{font-size:18px;color:#3B2A1B;font-weight:300;transition:transform .2s ease}.detail-accordion-v41 details[open] summary b{transform:rotate(45deg)}.detail-accordion-v41 details>div{padding:0 2px 18px;color:#756a62;font-size:13px;line-height:1.8}.detail-accordion-specs-v41{display:grid!important;grid-template-columns:repeat(3,1fr);gap:12px}.detail-accordion-specs-v41 span{padding:11px;background:#F7F2E9;border:1px solid #F7F2E9}.detail-accordion-specs-v41 strong{display:block;margin-top:4px;color:#3B2A1B}.detail-trust-v41{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #F7F2E9;border-bottom:1px solid #F7F2E9;background:#fff}.detail-trust-v41>div{display:flex;align-items:center;gap:13px;padding:22px 24px;border-right:1px solid #F7F2E9}.detail-trust-v41>div:last-child{border-right:0}.detail-trust-icon-v41{width:35px;height:35px;flex:0 0 35px;border:1px solid #F7F2E9;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#3B2A1B;font-size:15px}.detail-trust-v41 section{display:flex;flex-direction:column;gap:4px}.detail-trust-v41 strong{font-size:10px;letter-spacing:1.3px;color:#756454}.detail-trust-v41 small{font-size:12px;color:#968a80;line-height:1.35}.detail-zoom-pane{left:calc(100% + 22px);top:0;width:500px;height:500px;background-size:220% 220%;border:1px solid #F7F2E9;box-shadow:0 18px 45px rgba(45,33,27,.18)}
@media (max-width:1100px){.product-detail-v41{padding-left:20px;padding-right:20px}.detail-v41{gap:42px;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.detail-gallery-stage-v41{min-height:520px}.detail-image-frame-v41{height:480px}.detail-info-v41 h1{font-size:36px}.detail-zoom-pane{width:430px;height:430px}}
@media (max-width:850px){.product-detail-v41{padding:13px 14px 60px}.product-breadcrumb-v41{margin-bottom:16px}.detail-v41{display:block}.detail-gallery-stage-v41{min-height:0;padding:10px}.detail-gallery-stage-v41:before{inset:7px}.detail-image-frame-v41{height:min(72vw,520px)}.detail-image-zoom .detailimg{cursor:zoom-in}.detail-gallery-badge-v41{left:14px;top:14px;font-size:9px;padding:7px 8px}.detail-mobile-zoom-v41{display:flex}.detail-gallery-caption-v41{font-size:10px;padding-top:10px}.detail-info-v41{padding-top:28px}.detail-info-v41 h1{font-size:30px;line-height:1.15}.detail-rating-v41{margin:13px 0}.detail-price-row-v41{padding:13px 0}.detail-price-row-v41 h2{font-size:30px} .detail-offer-box-v54{max-width:none;margin-bottom:16px;padding:10px 12px}.detail-offer-price-v54{font-size:21px}.detail-offer-benefit-v54{font-size:10px}.detail-intro-v41{font-size:14px;margin:16px 0 20px}.detail-spec-grid-v41{grid-template-columns:1fr 1fr}.detail-spec-grid-v41>div{border-right:0;border-bottom:1px solid #F7F2E9}.detail-spec-grid-v41>div:nth-child(2){padding-left:10px;border-left:1px solid #F7F2E9}.detail-spec-grid-v41>div:last-child{grid-column:1/-1;padding-left:0;border-bottom:0}.detail-actions-v41{grid-template-columns:1fr;gap:8px}.detail-actions-v41 .btn{min-height:48px}.detail-trust-v41{grid-template-columns:1fr;margin-top:38px}.detail-trust-v41>div{border-right:0;border-bottom:1px solid #F7F2E9;padding:16px}.detail-trust-v41>div:last-child{border-bottom:0}.detail-zoom-pane{left:0;top:0;width:100%;height:100%;max-height:none;background-size:220% 220%;z-index:80}.detail-zoom-hint{display:none!important}.detail-accordion-specs-v41{grid-template-columns:1fr}.detail-accordion-specs-v41 span{display:block}}
@media (max-width:430px){.product-detail-v41{padding-left:11px;padding-right:11px}.product-breadcrumb-v41{font-size:9px}.detail-gallery-stage-v41{padding:7px}.detail-image-frame-v41{height:94vw;max-height:430px}.detail-info-v41 h1{font-size:28px}.detail-spec-card-v41{padding:15px}.detail-spec-grid-v41>div{padding-top:12px;padding-bottom:11px}.detail-trust-v41 small{font-size:11px}}
.v41-source-fields{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* V43 — Cart page: focused, premium shopping experience */
.cart-page{max-width:1240px;margin:0 auto;padding:58px 24px 90px;color:#3B2A1B}
.cart-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 0 34px;padding-bottom:28px;border-bottom:1px solid #F7F2E9}
.cart-heading h1{font:normal 42px Georgia,serif;letter-spacing:1px;margin:8px 0 8px;color:#3B2A1B}
.cart-heading p{font-size:15px;color:#75685f;margin:0;line-height:1.6}
.cart-heading .eyebrow{font-size:11px;letter-spacing:2.5px;color:#D0AC56}
.cart-continue{display:inline-flex;align-items:center;gap:10px;color:#756454;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap;border-bottom:1px solid #F7F2E9;padding-bottom:5px}
.cart-continue span{font-size:18px;line-height:1}
.cart-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(320px,.75fr);gap:30px;align-items:start}
.cart-items-card{background:#fff;border:1px solid #F7F2E9;box-shadow:0 10px 28px rgba(55,39,28,.05)}
.cart-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid #F7F2E9;background:#F7F2E9}
.cart-card-head h2{font:normal 24px Georgia,serif;margin:0;color:#3B2A1B}
.cart-card-head span{font-size:12px;color:#8a7b70}
.cart-item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:24px 26px;border-bottom:1px solid #F7F2E9}
.cart-item-image{display:block;background:#F7F2E9;aspect-ratio:1/1;overflow:hidden;border:1px solid #F7F2E9}
.cart-item-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cart-item-image:hover img{transform:scale(1.04)}
.cart-item-info{min-width:0;padding:3px 0}
.cart-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.cart-item-kicker{font-size:9px;letter-spacing:1.7px;color:#D0AC56;margin-bottom:7px}
.cart-item h3{font:normal 22px Georgia,serif;margin:0;color:#3B2A1B;line-height:1.25}
.cart-item-total{font-size:18px;color:#756454;white-space:nowrap}
.cart-item-price{font-size:13px;color:#777069;margin:8px 0 22px}
.cart-item-price span{font-size:10px;color:#a18f80;letter-spacing:.2px}
.cart-item-actions{display:flex;align-items:center;gap:20px}
.cart-qty{display:inline-flex;align-items:center;border:1px solid #F7F2E9;background:#fff;height:38px}
.cart-qty a{display:flex;align-items:center;justify-content:center;width:38px;height:36px;color:#756454;text-decoration:none;font-size:19px;line-height:1}
.cart-qty a:hover{background:#F7F2E9;color:#756454}
.cart-qty span{display:flex;align-items:center;justify-content:center;min-width:42px;height:36px;border-left:1px solid #F7F2E9;border-right:1px solid #F7F2E9;font-size:13px;font-weight:700;color:#3B2A1B}
.cart-remove{font-size:12px;color:#756454;text-decoration:none;border-bottom:1px solid #F7F2E9;padding-bottom:2px}
.cart-remove:hover{color:#D0AC56;border-color:#D0AC56}
.cart-summary{position:sticky;top:20px;background:#F7F2E9;border:1px solid #F7F2E9;box-shadow:0 12px 32px rgba(55,39,28,.07)}
.cart-summary-inner{padding:28px 28px 24px}
.summary-kicker{font-size:10px;letter-spacing:2px;color:#D0AC56;margin-bottom:7px}
.cart-summary h2{font:normal 25px Georgia,serif;margin:0 0 24px;color:#3B2A1B}
.summary-line,.summary-total{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;color:#6f6259}
.summary-line{margin:12px 0}
.summary-line strong{color:#3B2A1B;font-size:14px}
.summary-free{color:#4d7a5a!important;letter-spacing:.5px}
.summary-divider{height:1px;background:#F7F2E9;margin:22px 0}
.summary-total{font-size:17px;color:#3B2A1B;margin-bottom:22px}
.summary-total strong{font-size:25px;color:#756454}

.cart-price-change{display:flex;align-items:flex-start;gap:12px;margin:0 0 18px;padding:15px 16px;border:1px solid #e2c66f;background:#fffaf0;border-radius:10px;color:#756454;box-shadow:0 5px 16px rgba(35,28,18,.05)}
.cart-price-change-icon{width:26px;height:26px;flex:0 0 26px;border-radius:50%;display:grid;place-items:center;background:#D0AC56;color:#fff;font-weight:800;font-size:13px}
.cart-price-change-copy{flex:1;min-width:0;font-size:12px;line-height:1.55}.cart-price-change-copy strong{color:#3B2A1B}.cart-price-change-copy small{display:block;margin-top:5px;color:#806f61;font-size:11px;line-height:1.5}
.cart-refresh-prices{flex:0 0 auto;border:0;background:#3B2A1B;color:#fff;padding:11px 14px;min-height:42px;font-size:10px;font-weight:800;letter-spacing:1px;cursor:pointer;border-radius:4px}
.cart-refresh-prices:hover{background:#756454}
@media (max-width:700px){.cart-price-change{flex-direction:column}.cart-refresh-prices{width:100%}}
.cart-checkout{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;background:#3B2A1B;color:#fff!important;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:1.2px;box-shadow:0 8px 18px rgba(132,91,39,.16);transition:background .2s ease,transform .2s ease}
.cart-checkout:hover{background:#756454;transform:translateY(-1px)}
.cart-checkout span{font-size:17px}
.secure-note{display:flex;gap:10px;align-items:flex-start;margin:20px 0 22px;padding:14px;background:#fff;border:1px solid #F7F2E9;color:#4d443e}
.secure-note>span{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:#edf5ee;color:#3f7650;font-size:13px;font-weight:700}
.secure-note strong,.secure-note small{display:block}.secure-note strong{font-size:12px}.secure-note small{font-size:11px;color:#81756c;margin-top:3px}
.cart-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-top:18px;border-top:1px solid #F7F2E9}
.cart-trust>div{text-align:center}.cart-trust span{display:block;font-size:15px;color:#3B2A1B;margin-bottom:7px}.cart-trust strong{display:block;font-size:10px;color:#3B2A1B}.cart-trust small{display:block;font-size:9px;color:#887b71;margin-top:3px;line-height:1.3}
.cart-empty-note{display:flex;align-items:center;gap:15px;margin:20px 26px;padding:16px 18px;background:#F7F2E9;border:1px dashed #F7F2E9;color:#66574d}
.cart-empty-icon{font-size:25px;color:#D0AC56}.cart-empty-note strong,.cart-empty-note span{display:block}.cart-empty-note strong{font-size:12px}.cart-empty-note div span{font-size:11px;color:#8b7d73;margin-top:3px}.cart-empty-note a{margin-left:auto;color:#756454;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.7px;white-space:nowrap}
@media(max-width:850px){.cart-page{padding:35px 15px 60px}.cart-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:22px;padding-bottom:22px}.cart-heading h1{font-size:34px}.cart-heading p{font-size:14px}.cart-layout{grid-template-columns:1fr;gap:18px}.cart-summary{position:static;order:-1}.cart-summary-inner{padding:22px}.cart-card-head{padding:18px}.cart-item{grid-template-columns:100px minmax(0,1fr);gap:15px;padding:18px}.cart-item h3{font-size:18px}.cart-item-total{font-size:16px}.cart-item-price{margin-bottom:15px}.cart-item-actions{gap:14px}.cart-empty-note{margin:15px 18px}.cart-trust{gap:4px}}
@media(max-width:520px){.cart-page{padding-left:12px;padding-right:12px}.cart-heading h1{font-size:30px}.cart-heading p{font-size:13px}.cart-item{grid-template-columns:82px minmax(0,1fr);gap:12px;padding:15px}.cart-item-top{display:block}.cart-item-total{display:block;margin-top:9px}.cart-item h3{font-size:16px}.cart-item-kicker{font-size:8px}.cart-item-price{font-size:12px;margin:6px 0 12px}.cart-item-actions{flex-wrap:wrap;gap:10px}.cart-qty{height:35px}.cart-qty a{width:34px;height:33px}.cart-qty span{min-width:38px;height:33px}.cart-card-head h2{font-size:21px}.cart-card-head span{font-size:10px}.cart-summary h2{font-size:23px}.summary-total strong{font-size:22px}.cart-empty-note{align-items:flex-start;flex-wrap:wrap;margin:12px 15px}.cart-empty-note a{margin-left:40px}.cart-trust strong{font-size:9px}.cart-trust small{font-size:8px}}

/* =========================================================
   V44 — PROFESSIONAL CHECKOUT
   Focused checkout experience: no decorative page hero,
   clear delivery/payment form, persistent order summary.
   ========================================================= */
.checkout-page{
    max-width:1240px;
    margin:0 auto;
    padding:54px 24px 90px;
    color:#3B2A1B;
}
.checkout-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    padding-bottom:28px;
    margin-bottom:28px;
    border-bottom:1px solid #F7F2E9;
}
.checkout-heading h1{
    margin:10px 0 7px;
    font:normal 38px Georgia,serif;
    letter-spacing:1.2px;
    color:#3B2A1B;
}
.checkout-heading p{
    margin:0;
    color:#74675d;
    font-size:14px;
    line-height:1.6;
}
.checkout-secure-badge{
    display:flex;
    align-items:center;
    gap:11px;
    min-width:205px;
    padding:13px 15px;
    border:1px solid #F7F2E9;
    background:#FBFCFE;
}
.checkout-secure-badge>span{
    width:32px;height:32px;border-radius:50%;
    display:grid;place-items:center;
    background:#F7F2E9;color:#3B2A1B;font-weight:700;
}
.checkout-secure-badge strong{display:block;font-size:12px;color:#3B2A1B;letter-spacing:.2px}
.checkout-secure-badge small{display:block;margin-top:3px;font-size:11px;color:#8b7c70}
.checkout-layout{
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(330px,.8fr);
    gap:28px;
    align-items:start;
}
.checkout-form-card{
    background:#fff;
    border:1px solid #F7F2E9;
    box-shadow:0 12px 35px rgba(55,39,28,.06);
    padding:34px;
}
.checkout-card-head{
    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    gap:15px;
    align-items:start;
}
.checkout-card-head.compact{margin-top:2px}
.checkout-step{
    width:38px;height:38px;border-radius:50%;
    display:grid;place-items:center;
    background:#F7F2E9;color:#3B2A1B;
    font-size:11px;font-weight:700;letter-spacing:.7px;
}
.checkout-kicker{
    color:#756454;
    font-size:10px;
    font-weight:700;
    letter-spacing:1.7px;
}
.checkout-card-head h2,
.checkout-summary h2{
    margin:5px 0 6px;
    font:normal 24px Georgia,serif;
    color:#3B2A1B;
}
.checkout-card-head p{margin:0;color:#80736a;font-size:13px;line-height:1.55}
.checkout-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 18px;
    margin:24px 0 0 55px;
}
.checkout-field{margin-bottom:17px}
.checkout-field-full{grid-column:1/-1}
.checkout-field label,
.checkout-payment-box>label{
    display:block;
    margin:0 0 7px;
    color:#3B2A1B;
    font-size:13px;
    font-weight:700;
}
.checkout-field label span,
.checkout-payment-box label span{color:#a35d42}
.checkout-field input,
.checkout-field textarea,
.checkout-payment-box select{
    width:100%;
    min-height:50px;
    padding:13px 14px;
    border:1px solid #F7F2E9;
    border-radius:4px;
    background:#fff;
    color:#3B2A1B;
    font:normal 15px/1.45 Arial,Helvetica,sans-serif;
    transition:border-color .18s ease,box-shadow .18s ease;
}
.checkout-field textarea{min-height:112px;resize:vertical}
.checkout-field input:focus,
.checkout-field textarea:focus,
.checkout-payment-box select:focus{
    outline:none;
    border-color:#D0AC56;
    box-shadow:0 0 0 3px rgba(162,123,66,.12);
}
.checkout-section-divider{
    height:1px;background:#F7F2E9;margin:9px 0 28px 55px;
}
.checkout-payment-box{margin:23px 0 0 55px;padding:18px;background:#F7F9FC;border:1px solid #F7F2E9}
.checkout-payment-box select{background:#fff}
.checkout-payment-note{display:flex;gap:9px;align-items:flex-start;margin-top:11px;color:#80736a;font-size:11px;line-height:1.5}
.checkout-payment-note>span:first-child{color:#D0AC56;font-size:10px;margin-top:2px}
.checkout-submit-area{margin:24px 0 0 55px;padding-top:22px;border-top:1px solid #F7F2E9}
.checkout-place-order{
    width:100%;
    min-height:54px;
    border:0;
    background:#3B2A1B;
    color:#fff;
    cursor:pointer;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.4px;
    transition:background .18s ease,transform .18s ease;
}
.checkout-place-order:hover{background:#756454;transform:translateY(-1px)}
.checkout-place-order:disabled{opacity:.6;cursor:not-allowed;transform:none}
.checkout-submit-area p{margin:10px 0 0;text-align:center;color:#8b7c70;font-size:11px;line-height:1.5}
.checkout-form-card .validation-status{margin:20px 0 0 55px}
.checkout-form-card .message{margin:14px 0 0 55px;font-size:13px;line-height:1.55;font-weight:600}
.checkout-summary{
    position:sticky;
    top:20px;
    background:#F7F2E9;
    border:1px solid #F7F2E9;
    box-shadow:0 12px 32px rgba(55,39,28,.07);
}
.checkout-summary-inner{padding:28px}
.checkout-summary h2{margin-bottom:20px}
.checkout-summary-items{border-top:1px solid #F7F2E9;border-bottom:1px solid #F7F2E9;padding:5px 0;margin-bottom:17px}
.checkout-order-item{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 0}
.checkout-order-image{width:62px;height:62px;position:relative;display:block;background:#eee;border:1px solid #F7F2E9}
.checkout-order-image img{width:100%;height:100%;object-fit:cover;display:block}
.checkout-order-image>span{position:absolute;right:-7px;top:-7px;min-width:21px;height:21px;padding:0 5px;border-radius:50%;display:grid;place-items:center;background:#3B2A1B;color:#fff;font-size:10px;font-weight:700}
.checkout-order-info{min-width:0}
.checkout-order-info strong{display:block;font-size:12px;color:#3B2A1B;line-height:1.35;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.checkout-order-info small{display:block;margin-top:4px;color:#8a7b70;font-size:10px}
.checkout-order-total{font-size:12px;color:#756454;white-space:nowrap}
.checkout-summary-line,.checkout-summary-total{display:flex;justify-content:space-between;gap:20px;align-items:center}
.checkout-summary-line{padding:7px 0;color:#6f6259;font-size:13px}
.checkout-summary-line strong{color:#3B2A1B;font-size:13px}
.checkout-summary .summary-free{color:#3e7a51}
.checkout-summary-divider{height:1px;background:#F7F2E9;margin:12px 0}
.checkout-summary-total{padding:3px 0 6px;color:#3B2A1B;font-size:15px;font-weight:700}
.checkout-summary-total strong{font-size:25px;color:#3B2A1B}
.checkout-trust-list{margin-top:22px;padding-top:18px;border-top:1px solid #F7F2E9;display:grid;gap:12px}
.checkout-trust-list>div{display:flex;gap:10px;align-items:flex-start}
.checkout-trust-list>div>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#F7F2E9;color:#3B2A1B;font-size:11px;font-weight:700}
.checkout-trust-list strong{display:block;color:#3B2A1B;font-size:11px}
.checkout-trust-list small{display:block;margin-top:2px;color:#897a70;font-size:10px}

@media(max-width:850px){
    .checkout-page{padding:36px 15px 65px}
    .checkout-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px;padding-bottom:21px}
    .checkout-heading h1{font-size:32px}
    .checkout-heading p{font-size:13px}
    .checkout-secure-badge{min-width:0;width:100%}
    .checkout-layout{grid-template-columns:1fr;gap:18px}
    .checkout-summary{position:static;order:-1}
    .checkout-summary-inner{padding:22px}
    .checkout-form-card{padding:24px 20px}
    .checkout-fields{grid-template-columns:1fr;margin-left:0}
    .checkout-field-full{grid-column:auto}
    .checkout-section-divider{margin-left:0}
    .checkout-payment-box,.checkout-submit-area{margin-left:0}
    .checkout-form-card .validation-status,.checkout-form-card .message{margin-left:0}
}
@media(max-width:520px){
    .checkout-page{padding:28px 12px 55px}
    .checkout-heading h1{font-size:29px}
    .checkout-card-head{grid-template-columns:34px minmax(0,1fr);gap:11px}
    .checkout-step{width:34px;height:34px;font-size:10px}
    .checkout-card-head h2,.checkout-summary h2{font-size:21px}
    .checkout-card-head p{font-size:12px}
    .checkout-form-card{padding:21px 16px}
    .checkout-payment-box{padding:15px}
    .checkout-order-item{grid-template-columns:56px minmax(0,1fr) auto;gap:9px}
    .checkout-order-image{width:56px;height:56px}
    .checkout-order-info strong{font-size:11px}
    .checkout-order-total{font-size:11px}
    .checkout-summary-total strong{font-size:22px}
    .checkout-place-order{min-height:56px;font-size:12px}
}



/* =========================================================
   NOOPURA - PROFESSIONAL PAYMENT METHOD UI
   ========================================================= */
.checkout-payment-box{
    margin:23px 0 0 55px;
    padding:22px;
    background:linear-gradient(180deg,#F7F2E9 0%,#F7F9FC 100%);
    border:1px solid #F7F2E9;
    border-radius:8px;
    box-shadow:0 8px 24px rgba(55,39,28,.045);
}
.checkout-payment-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:14px;
}
.checkout-payment-label{
    display:block;
    margin:0;
    color:#3B2A1B;
    font-size:13px;
    font-weight:700;
}
.checkout-payment-label span{color:#a35d42}
.checkout-payment-heading p{
    margin:5px 0 0;
    color:#82756c;
    font-size:11px;
    line-height:1.5;
}
.checkout-payment-secure{
    flex:0 0 auto;
    padding:6px 9px;
    border:1px solid #F7F2E9;
    border-radius:999px;
    background:#fff;
    color:#756454;
    font-size:8px;
    font-weight:700;
    letter-spacing:1.2px;
}
.checkout-payment-native-select{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
}
.checkout-payment-options{
    display:grid;
    gap:11px;
}
.checkout-payment-option{
    position:relative;
    width:100%;
    min-height:84px;
    display:grid;
    grid-template-columns:22px 46px minmax(0,1fr) 20px;
    gap:13px;
    align-items:center;
    padding:15px 15px;
    border:1px solid #F7F2E9;
    border-radius:7px;
    background:#fff;
    color:#3B2A1B;
    text-align:left;
    font:inherit;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.checkout-payment-option:hover{
    border-color:#F7F2E9;
    box-shadow:0 7px 18px rgba(70,49,31,.07);
    transform:translateY(-1px);
}
.checkout-payment-option:focus{
    outline:none;
    border-color:#3B2A1B;
    box-shadow:0 0 0 3px rgba(157,118,59,.13);
}
.checkout-payment-option.is-selected{
    border-color:#3B2A1B;
    background:#FFFFFF;
    box-shadow:0 7px 20px rgba(105,76,43,.09);
}
.checkout-payment-radio{
    width:17px;
    height:17px;
    border:1.5px solid #b9aaa0;
    border-radius:50%;
    display:block;
    position:relative;
    box-sizing:border-box;
}
.checkout-payment-option.is-selected .checkout-payment-radio{
    border-color:#3B2A1B;
}
.checkout-payment-option.is-selected .checkout-payment-radio:after{
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    left:3.5px;
    top:3.5px;
    border-radius:50%;
    background:#3B2A1B;
}
.checkout-payment-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:50%;
    box-sizing:border-box;
    font-weight:700;
}
.checkout-payment-icon-online{
    background:#F7F2E9;
    border:1px solid #F7F2E9;
    color:#756454;
    font-family:Georgia,serif;
    font-size:21px;
}
.checkout-payment-icon-online:after{
    content:"";
    position:absolute;
    width:8px;
    height:8px;
    margin:23px 0 0 22px;
    border-radius:50%;
    background:#fff;
    border:1px solid #F7F2E9;
}
.checkout-payment-icon-cod{
    background:#F7F2E9;
    border:1px solid #F7F2E9;
    color:#5c6f5f;
    font-size:16px;
}
.checkout-payment-copy{
    min-width:0;
}
.checkout-payment-copy strong{
    display:block;
    color:#3B2A1B;
    font-size:13px;
    line-height:1.35;
    font-weight:700;
}
.checkout-payment-copy small{
    display:block;
    margin-top:4px;
    color:#7c7068;
    font-size:11px;
    line-height:1.45;
}
.checkout-payment-copy em{
    display:block;
    margin-top:5px;
    color:#756454;
    font-size:9px;
    font-style:normal;
    font-weight:700;
    letter-spacing:.55px;
    text-transform:uppercase;
}
.checkout-payment-arrow{
    color:#F7F2E9;
    font-size:24px;
    line-height:1;
    text-align:right;
    transition:transform .18s ease,color .18s ease;
}
.checkout-payment-option.is-selected .checkout-payment-arrow{
    color:#3B2A1B;
    transform:translateX(2px);
}
.checkout-payment-note{
    display:flex;
    gap:9px;
    align-items:flex-start;
    margin-top:13px;
    padding-top:12px;
    border-top:1px solid #F7F2E9;
    color:#7c7068;
    font-size:10px;
    line-height:1.55;
}
.checkout-payment-note strong{color:#756454}
.checkout-payment-note-icon{
    flex:0 0 auto;
    color:#3B2A1B;
    font-size:14px;
    line-height:1.2;
}
@media(max-width:850px){
    .checkout-payment-box{margin-left:0}
}
@media(max-width:520px){
    .checkout-payment-box{padding:16px}
    .checkout-payment-heading{gap:10px}
    .checkout-payment-heading p{font-size:10px}
    .checkout-payment-option{
        grid-template-columns:20px 40px minmax(0,1fr) 15px;
        gap:10px;
        min-height:78px;
        padding:12px 11px;
    }
    .checkout-payment-icon{width:40px;height:40px}
    .checkout-payment-copy strong{font-size:12px}
    .checkout-payment-copy small{font-size:10px}
    .checkout-payment-copy em{font-size:8px}
    .checkout-payment-arrow{font-size:20px}
}

/* =========================================================
   NOOPURA V60 - RECENTLY VIEWED PREMIUM PAGE
   ========================================================= */
.recent-page-premium{max-width:1240px;margin:0 auto;padding:56px 28px 88px;box-sizing:border-box;color:#3B2A1B}
.recent-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.recent-intro-copy{max-width:760px}
.recent-eyebrow{display:block;color:#756454;font-size:12px;font-weight:700;letter-spacing:2.3px;margin-bottom:10px}
.recent-intro h1{font:500 46px/1.12 Georgia,'Times New Roman',serif;margin:0;color:#3B2A1B}
.recent-intro p{font-size:16px;line-height:1.7;color:#756b63;margin:12px 0 0}
.recent-intro-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.recent-shop-btn,.recent-clear-btn{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:1.1px;box-sizing:border-box;cursor:pointer}
.recent-shop-btn{background:#D0AC56;color:#fff;border:1px solid #D0AC56}
.recent-shop-btn:hover{background:#756454;color:#fff}
.recent-clear-btn{background:#fff;color:#756454;border:1px solid #F7F2E9}
.recent-clear-btn:hover{border-color:#D0AC56;color:#D0AC56}
.recent-divider{height:1px;background:#F7F2E9;margin:30px 0 34px}
.recent-products-premium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;min-height:0}
.recent-product-card{background:#fff;border:1px solid #F7F2E9;box-shadow:0 10px 28px rgba(61,42,25,.06);transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}
.recent-product-card:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(61,42,25,.11)}
.recent-product-image-wrap{position:relative;background:#F7F2E9;aspect-ratio:1/1;overflow:hidden}
.recent-product-image-link{display:block;width:100%;height:100%}
.recent-product-image-wrap img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.recent-product-card:hover .recent-product-image-wrap img{transform:scale(1.035)}
.recent-viewed-tag{position:absolute;left:14px;top:14px;background:rgba(45,33,26,.88);color:#fff;padding:7px 10px;font-size:9px;letter-spacing:1.3px;font-weight:700}
.recent-product-info{padding:23px 24px 25px}
.recent-product-category{display:block;color:#756454;font-size:10px;font-weight:700;letter-spacing:1.7px;margin-bottom:8px}
.recent-product-info h2{font:500 24px/1.25 Georgia,'Times New Roman',serif;margin:0 0 8px;color:#3B2A1B}
.recent-product-spec{font-size:13px;color:#766c64;margin:0 0 14px;line-height:1.5}
.recent-product-price{display:block;font-size:21px;color:#756454;margin-bottom:18px}
.recent-view-product{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #F7F2E9;padding-top:14px;color:#3B2A1B;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:1.1px}
.recent-view-product span{font-size:17px;line-height:1}
.recent-footer-premium{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:32px;padding-top:22px;border-top:1px solid #F7F2E9;color:#7a7068;font-size:13px}
.recent-footer-premium .recent-clear-btn{min-height:42px}
.recent-empty-premium{max-width:650px;margin:30px auto 80px;padding:62px 28px;background:#FBFCFE;border:1px solid #F7F2E9;text-align:center;box-shadow:0 10px 28px rgba(61,42,25,.05)}
.recent-empty-premium .recent-empty-icon{margin:0 auto 18px;width:64px;height:64px}
.recent-empty-premium .recent-empty-icon svg{width:30px;height:30px}
.recent-empty-label{display:block;color:#756454;font-size:10px;font-weight:700;letter-spacing:2px;margin-bottom:8px}
.recent-empty-premium h2{font:500 30px/1.2 Georgia,'Times New Roman',serif;margin:0 0 10px;color:#3B2A1B}
.recent-empty-premium p{font-size:15px;line-height:1.7;color:#756b63;max-width:500px;margin:0 auto 25px}

@media(max-width:900px){
 .recent-page-premium{padding:42px 22px 70px}
 .recent-intro h1{font-size:40px}
 .recent-intro p{font-size:15px}
 .recent-intro-actions{flex-direction:column;align-items:stretch}
 .recent-shop-btn,.recent-clear-btn{min-width:190px}
 .recent-products-premium{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .recent-product-info{padding:20px}
 .recent-product-info h2{font-size:21px}
}
@media(max-width:600px){
 .recent-page-premium{padding:32px 16px 58px}
 .recent-intro{display:block}
 .recent-intro h1{font-size:33px}
 .recent-intro p{font-size:15px}
 .recent-intro-actions{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
 .recent-shop-btn,.recent-clear-btn{width:100%;min-width:0;padding:0 10px;font-size:10px}
 .recent-divider{margin:24px 0 26px}
 .recent-products-premium{grid-template-columns:1fr;gap:20px}
 .recent-product-image-wrap{aspect-ratio:1/1}
 .recent-product-info{padding:21px 20px 23px}
 .recent-product-info h2{font-size:22px}
 .recent-product-price{font-size:20px}
 .recent-footer-premium{display:flex;flex-direction:column;align-items:stretch;text-align:center}
 .recent-footer-premium .recent-clear-btn{width:100%}
 .recent-empty-premium{padding:50px 20px;margin:20px auto 55px}
 .recent-empty-premium h2{font-size:27px}
}


/* =========================================================
   NOOPURA V61 - MOBILE WISHLIST/CART COUNT VISIBILITY
   Keeps desktop header unchanged. On phones the count badge
   sits over the icon so it cannot be squeezed out by wrapping.
   ========================================================= */
@media (max-width: 600px) {
    .head-action {
        position: relative;
    }

    .wishlist-header-badge,
    .cart-header-badge {
        position: absolute;
        top: -2px;
        right: 1px;
        z-index: 3;
        min-width: 18px;
        height: 18px;
        padding: 0 4px;
        margin-left: 0;
        font-size: 9px;
        line-height: 18px;
        flex-shrink: 0;
        box-sizing: border-box;
    }

    .head-label {
        position: relative;
        display: block;
        padding-top: 1px;
    }
}

@media (max-width: 380px) {
    .wishlist-header-badge,
    .cart-header-badge {
        top: -3px;
        right: 0;
        min-width: 17px;
        height: 17px;
        line-height: 17px;
        font-size: 8px;
    }
}


/* =========================================================
   NOOPURA V61 - CHECKOUT RESULT / VALIDATION UX
   ========================================================= */
.checkout-result {
    display: block;
    width: min(1180px, calc(100% - 30px));
    margin: 0 auto 18px;
    padding: 14px 18px;
    box-sizing: border-box;
    border: 1px solid #F7F2E9;
    border-left: 4px solid #3B2A1B;
    border-radius: 4px;
    background: #F7F9FC;
    color: #756454;
    font-size: 14px;
    line-height: 1.5;
    scroll-margin-top: 24px;
}

.checkout-result:empty {
    display: none;
}

.checkout-result.checkout-success,
.checkout-result.is-success {
    border-left-color: #6c8a57;
    background: #f7fbf4;
}

@media (max-width: 600px) {
    .checkout-result {
        width: calc(100% - 24px);
        margin-bottom: 14px;
        padding: 13px 14px;
        font-size: 13px;
    }
}


/* =========================================================
   NOOPURA V62 - MOBILE HEADER BADGES + PREMIUM CHECKOUT RESULT
   ========================================================= */
.head-action .head-icon{
    position:relative;
    overflow:visible;
}
.wishlist-header-badge-icon,
.cart-header-badge-icon{
    display:none;
}

@media (max-width:600px){
    /* Keep the existing desktop badge exactly as-is, but put a second
       mobile-only badge on the icon itself. This avoids label wrapping,
       clipping and flex compression on narrow phones. */
    .head-action .head-icon{
        overflow:visible !important;
    }
    .wishlist-header-badge-label,
    .cart-header-badge-label{
        display:none !important;
    }
    .wishlist-header-badge-icon,
    .cart-header-badge-icon{
        position:absolute !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        top:-7px !important;
        right:-7px !important;
        z-index:20 !important;
        min-width:17px !important;
        height:17px !important;
        padding:0 4px !important;
        margin:0 !important;
        border-radius:999px !important;
        background:#756454 !important;
        color:#fff !important;
        border:2px solid #fff !important;
        box-shadow:0 2px 7px rgba(50,35,25,.22) !important;
        font-size:8px !important;
        font-weight:800 !important;
        line-height:13px !important;
        white-space:nowrap !important;
        box-sizing:border-box !important;
    }
}

@media (max-width:380px){
    .wishlist-header-badge-icon,
    .cart-header-badge-icon{
        top:-6px !important;
        right:-6px !important;
        min-width:16px !important;
        height:16px !important;
        font-size:8px !important;
        padding:0 3px !important;
    }
}

/* Premium checkout confirmation. */
.checkout-result{
    position:relative;
    display:flex !important;
    align-items:center;
    gap:13px;
    width:min(1180px,calc(100% - 30px));
    min-height:62px;
    margin:0 auto 22px;
    padding:15px 20px 15px 58px;
    border:1px solid #b9ddc4 !important;
    border-left:5px solid #3d8b58 !important;
    border-radius:10px !important;
    background:linear-gradient(135deg,#f3fbf5 0%,#fbfffc 100%) !important;
    color:#2f7d4a !important;
    font-size:14px;
    font-weight:700;
    line-height:1.55;
    box-shadow:0 10px 28px rgba(47,125,74,.10);
    scroll-margin-top:22px;
    outline:none !important;
    animation:checkoutResultReveal .75s cubic-bezier(.2,.8,.2,1) both;
}
.checkout-result:focus,
.checkout-result:focus-visible{
    outline:none !important;
    box-shadow:0 10px 28px rgba(47,125,74,.10),0 0 0 3px rgba(61,139,88,.08) !important;
}
.checkout-result:before{
    content:'✓';
    position:absolute;
    left:18px;
    top:50%;
    transform:translateY(-50%);
    width:27px;
    height:27px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#3d8b58;
    color:#fff;
    font-size:14px;
    font-weight:800;
    box-shadow:0 4px 10px rgba(47,125,74,.18);
}
.checkout-result.checkout-success,
.checkout-result.is-success{
    border-color:#b9ddc4 !important;
    border-left-color:#3d8b58 !important;
    background:linear-gradient(135deg,#f3fbf5 0%,#fbfffc 100%) !important;
    color:#2f7d4a !important;
}
@keyframes checkoutResultReveal{
    from{opacity:0;transform:translateY(-8px)}
    to{opacity:1;transform:translateY(0)}
}

/* Hide the server result container until it actually contains a message.
   The premium result uses display:flex !important, so this rule must also
   use !important; otherwise an empty ASP.NET Label leaves a blank green card
   visible when the checkout page is first opened. */
.checkout-result:empty{
    display:none !important;
    animation:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
}

@media (max-width:600px){
    .checkout-result{
        width:calc(100% - 24px);
        min-height:58px;
        margin-bottom:16px;
        padding:13px 15px 13px 51px;
        font-size:13px;
        border-radius:9px !important;
    }
    .checkout-result:before{
        left:15px;
        width:25px;
        height:25px;
        font-size:13px;
    }
}

/* Checkout result error state: validation/order failures must never look like success. */
.checkout-result.checkout-error,
.checkout-result.is-error{
    border-color:#e7b7b1 !important;
    border-left-color:#b63228 !important;
    background:linear-gradient(135deg,#fff5f3 0%,#fffafa 100%) !important;
    color:#9f2f26 !important;
    box-shadow:0 10px 28px rgba(182,50,40,.09) !important;
}
.checkout-result.checkout-error:before,
.checkout-result.is-error:before{
    content:'!';
    background:#b63228;
    color:#fff;
    box-shadow:0 4px 10px rgba(182,50,40,.18);
}
.checkout-result.checkout-error:focus-visible,
.checkout-result.is-error:focus-visible{
    box-shadow:0 10px 28px rgba(182,50,40,.09),0 0 0 3px rgba(182,50,40,.08) !important;
}
\n\n/* =========================================================\n   NOOPURA V68 - PROFESSIONAL RESPONSIVE PRODUCT SEARCH\n   ========================================================= */\n.noo-search{\n    position:relative;\n    z-index:1200;\n    align-items:stretch;\n    gap:0;\n}\n.noo-search input[type="text"]{\n    min-width:0;\n    height:46px;\n    padding:0 46px 0 16px !important;\n    border:1px solid #F7F2E9 !important;\n    border-right:0 !important;\n    border-radius:2px 0 0 2px;\n    background:#fff;\n    color:#3B2A1B;\n    font-size:14px;\n    transition:border-color .2s ease, box-shadow .2s ease;\n}\n.noo-search input[type="text"]:focus{\n    border-color:#F7F2E9 !important;\n    box-shadow:0 0 0 3px rgba(176,138,82,.12);\n}\n.noo-search .search-submit{\n    height:46px;\n    min-width:108px;\n    border:1px solid #D0AC56 !important;\n    border-radius:0 2px 2px 0;\n    background:#D0AC56 !important;\n    color:#fff !important;\n    font-size:11px;\n    font-weight:600;\n    letter-spacing:1.2px;\n    cursor:pointer;\n    transition:background .2s ease, transform .15s ease;\n}\n.noo-search .search-submit:hover{background:#756454 !important;}\n.noo-search .search-submit:active{transform:translateY(1px);}\n.noo-search-clear{\n    position:absolute;\n    right:112px;\n    top:50%;\n    transform:translateY(-50%);\n    width:28px;\n    height:28px;\n    padding:0;\n    border:0;\n    border-radius:50%;\n    background:transparent;\n    color:#8b7a6c;\n    font-size:22px;\n    line-height:28px;\n    cursor:pointer;\n    display:none;\n    z-index:3;\n}\n.noo-search-clear:hover{background:#F7F2E9;color:#756454;}\n.noo-search.has-value .noo-search-clear{display:block;}\n.noo-search-suggestions{\n    position:absolute;\n    left:0;\n    right:0;\n    top:calc(100% + 8px);\n    background:#fff;\n    border:1px solid #F7F2E9;\n    border-radius:4px;\n    box-shadow:0 14px 34px rgba(55,39,28,.14);\n    overflow:hidden;\n    max-height:min(430px,60vh);\n    overflow-y:auto;\n    z-index:1300;\n}\n.noo-search-suggestions[hidden]{display:none;}\n.noo-search-suggestion{\n    width:100%;\n    min-height:58px;\n    display:flex;\n    align-items:center;\n    gap:12px;\n    padding:10px 14px;\n    border:0;\n    border-bottom:1px solid #F7F2E9;\n    background:#fff;\n    color:#3B2A1B;\n    text-align:left;\n    cursor:pointer;\n}\n.noo-search-suggestion:last-child{border-bottom:0;}\n.noo-search-suggestion:hover,.noo-search-suggestion.active{background:#F7F9FC;}\n.noo-search-suggestion-icon{\n    flex:0 0 34px;\n    width:34px;\n    height:34px;\n    border-radius:50%;\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    background:#F7F2E9;\n    color:#D0AC56;\n    font-size:14px;\n}\n.noo-search-suggestion-copy{min-width:0;flex:1;}\n.noo-search-suggestion-name{\n    display:block;\n    overflow:hidden;\n    text-overflow:ellipsis;\n    white-space:nowrap;\n    font-size:13px;\n    font-weight:600;\n    color:#3B2A1B;\n}\n.noo-search-suggestion-meta{\n    display:block;\n    margin-top:3px;\n    overflow:hidden;\n    text-overflow:ellipsis;\n    white-space:nowrap;\n    font-size:10px;\n    color:#8a7b70;\n}\n.noo-search-suggestion-price{\n    flex:0 0 auto;\n    color:#D0AC56;\n    font-size:11px;\n    font-weight:600;\n}\n.noo-search-more{\n    width:100%;\n    padding:12px 14px;\n    border:0;\n    background:#FBFCFE;\n    color:#D0AC56;\n    text-align:left;\n    font-size:11px;\n    font-weight:600;\n    letter-spacing:.4px;\n    cursor:pointer;\n}\n.noo-search-more:hover{background:#F7F2E9;}\n.noo-search-empty{\n    padding:18px 16px;\n    color:#7c6d63;\n    font-size:12px;\n    text-align:left;\n}\n@media(max-width:900px){\n    .noo-search{z-index:1400;}\n    .noo-search-suggestions{\n        top:calc(100% + 6px);\n        max-height:55vh;\n    }\n}\n@media(max-width:600px){\n    .noo-search input[type="text"]{height:42px !important;font-size:13px !important;padding-left:13px !important;}\n    .noo-search .search-submit{height:42px !important;min-width:82px !important;font-size:10px;}\n    .noo-search-clear{right:87px;}\n    .noo-search-suggestions{\n        position:fixed;\n        left:10px;\n        right:10px;\n        top:calc(var(--noopura-header-height,110px) + 4px);\n        max-height:calc(100vh - var(--noopura-header-height,110px) - 20px);\n        border-radius:5px;\n    }\n    .noo-search-suggestion{min-height:64px;padding:11px 13px;}\n    .noo-search-suggestion-name{font-size:13px;}\n}\n

/* =========================================================
   NOOPURA V70 - CLEAN SEARCH LAYOUT
   Keep the search field stable and submit searches only to
   the Products.aspx results page. No inline result dropdown.
   ========================================================= */
.noo-search{
    position:relative;
    z-index:1200;
    display:flex !important;
    flex:1 1 530px !important;
    width:530px !important;
    max-width:530px !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    align-items:stretch !important;
}
.noo-search input[type="text"]{
    display:block !important;
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;
    height:46px !important;
    padding:0 48px 0 16px !important;
    border:1px solid #F7F2E9 !important;
    border-right:0 !important;
    border-radius:2px 0 0 2px !important;
    background:#fff !important;
    color:#3B2A1B !important;
}
.noo-search .search-submit{
    flex:0 0 108px !important;
    width:108px !important;
    min-width:108px !important;
    height:46px !important;
}
.noo-search-clear{
    position:absolute !important;
    right:116px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:28px !important;
    height:28px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:50% !important;
    background:transparent !important;
    color:#8b7a6c !important;
    font-size:21px !important;
    line-height:28px !important;
    text-align:center !important;
    cursor:pointer !important;
    display:none !important;
    z-index:5 !important;
}
.noo-search.has-value .noo-search-clear{display:block !important;}
.noo-search-clear:hover{background:#F7F2E9 !important;color:#756454 !important;}
.noo-search-suggestions{display:none !important;}

@media (max-width:900px){
    .noo-search{
        width:100% !important;
        max-width:none !important;
        flex:1 1 100% !important;
    }
}

@media (max-width:600px){
    .noo-search{
        width:100% !important;
        max-width:none !important;
        flex:0 0 100% !important;
        margin:0 !important;
    }
    .noo-search input[type="text"]{
        height:40px !important;
        padding:0 38px 0 12px !important;
        font-size:13px !important;
    }
    .noo-search .search-submit{
        flex:0 0 78px !important;
        width:78px !important;
        min-width:78px !important;
        height:40px !important;
        font-size:10px !important;
    }
    .noo-search-clear{
        right:82px !important;
        width:26px !important;
        height:26px !important;
        line-height:26px !important;
        font-size:20px !important;
    }
}

@media (max-width:380px){
    .noo-search .search-submit{
        flex-basis:70px !important;
        width:70px !important;
        min-width:70px !important;
    }
    .noo-search-clear{right:74px !important;}
}


/* V72 - Login result states and responsive result scrolling. */
.login-page .login-result {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 18px !important;
    padding: 13px 16px !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 700 !important;
}
.login-page .login-result:empty { display: none !important; }
.login-page .login-result.is-error {
    color: #9f2f26 !important;
    background: #fff3f1 !important;
    border: 1px solid #e4aaa3 !important;
    border-left: 4px solid #c4473b !important;
}
.login-page .login-result.is-success {
    color: #286c3f !important;
    background: #f1faf4 !important;
    border: 1px solid #a9d4b6 !important;
    border-left: 4px solid #3d8a58 !important;
}
@media (max-width: 480px) {
    .login-page .login-result {
        margin-bottom: 14px !important;
        padding: 12px 13px !important;
        font-size: 12.5px !important;
    }
}


/* =========================================================
   NOOPURA V73 - ACCOUNT RESULT / STORE ACTION POLISH
   ========================================================= */
.head-store-action .head-icon{color:#D0AC56}
.head-store-action:hover .head-icon{color:#756454}
.login-message.login-result{
    display:flex !important;
    align-items:center;
    gap:14px;
    width:100%;
    box-sizing:border-box;
    padding:14px 16px !important;
    border-radius:10px;
    margin:16px 0 0 !important;
    font-size:13px !important;
    line-height:1.5;
    box-shadow:0 8px 24px rgba(58,40,26,.06);
}
.login-message.login-result.is-success{
    color:#2f7d4a !important;
    background:linear-gradient(135deg,#f2fbf5 0%,#fbfffc 100%) !important;
    border:1px solid #b9ddc3 !important;
    border-left:4px solid #3d8f5a !important;
}
.login-message.login-result.is-error{
    color:#a9342d !important;
    background:linear-gradient(135deg,#fff5f4 0%,#fffafa 100%) !important;
    border:1px solid #e4aaa4 !important;
    border-left:4px solid #c4473b !important;
}
.login-result-icon{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#3d8f5a;
    color:#fff;
    font-size:18px;
    font-weight:800;
    box-shadow:0 5px 12px rgba(61,143,90,.18);
}
.login-result-copy{
    min-width:0;
    display:flex;
    flex:1;
    flex-direction:column;
    gap:2px;
}
.login-result-copy strong{font-size:13px;letter-spacing:.2px;color:#286c40}
.login-result-copy>span{font-size:12px;color:#4e6657}
.login-result-link{
    align-self:flex-start;
    margin-top:6px;
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:#756454 !important;
    font-size:10px;
    font-weight:800;
    letter-spacing:1px;
    text-decoration:none !important;
    border-bottom:1px solid #D0AC56;
    padding-bottom:2px;
}
.login-result-link:hover{color:#756454 !important;border-bottom-color:#756454}
@media(max-width:600px){
    .login-message.login-result{align-items:flex-start;padding:13px 12px !important;gap:11px}
    .login-result-icon{width:30px;height:30px;flex-basis:30px;font-size:16px}
    .login-result-copy>span{font-size:11.5px}
}


/* =========================================================
   V74 - STORE EXPERIENCE + ACCOUNT CREATED
   ========================================================= */

.find-store-page .site-header-fixed > header{border-bottom:1px solid #F7F2E9}

.store-page{background:#FBFCFE;color:#3B2A1B;min-height:100vh;padding-bottom:70px}
.store-hero{background:linear-gradient(120deg,#3B2A1B 0%,#3B2A1B 58%,#756454 100%);color:#fff;overflow:hidden;position:relative}
.store-hero:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(222,190,144,.16);border-radius:50%;right:-180px;top:-240px;box-shadow:0 0 0 60px rgba(255,255,255,.015),0 0 0 120px rgba(255,255,255,.012)}
.store-hero-inner{max-width:1180px;margin:0 auto;min-height:480px;padding:72px 28px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:35px;position:relative;z-index:1}
.store-hero-copy{max-width:670px}.store-eyebrow,.account-created-kicker{display:block;letter-spacing:2.8px;font-size:10px;font-weight:800;color:#D0AC56}.store-hero h1{font:normal 50px/1.08 Georgia,serif;margin:12px 0 18px;color:#fff;letter-spacing:.1px}.store-hero h1 em{font-style:italic;color:#F7F2E9}.store-hero-copy>p{max-width:600px;margin:0;color:#F7F2E9;font-size:14px;line-height:1.8}.store-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.store-primary-btn,.store-ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 19px;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:1.2px;transition:all .2s ease}.store-primary-btn{background:#D0AC56;color:#fff;border:1px solid #D0AC56;box-shadow:0 10px 24px rgba(0,0,0,.16)}.store-primary-btn:hover{background:#D0AC56;transform:translateY(-1px)}.store-primary-btn span{font-size:17px;margin-left:9px}.store-ghost-btn{border:1px solid rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.03)}.store-ghost-btn:hover{background:rgba(255,255,255,.1);border-color:#F7F2E9}
.store-hero-art{width:330px;height:330px;justify-self:end;position:relative;display:flex;align-items:center;justify-content:center}.store-art-ring{width:170px;height:170px;border:1px solid #D0AC56;border-radius:50%;position:relative;box-shadow:0 0 0 15px rgba(200,164,107,.05),0 0 0 40px rgba(200,164,107,.035)}.store-art-ring:before{content:"";position:absolute;inset:24px;border:1px solid rgba(236,215,183,.7);border-radius:50%}.store-art-ring:after{content:"";position:absolute;width:52px;height:52px;right:5px;top:23px;border:1px solid rgba(236,215,183,.75);border-radius:50%;background:rgba(200,164,107,.09)}.store-orbit{position:absolute;border:1px solid rgba(216,186,139,.35);border-radius:50%;transform:rotate(-25deg)}.store-orbit-one{width:285px;height:145px}.store-orbit-two{width:145px;height:285px;transform:rotate(25deg)}.store-art-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#D0AC56;box-shadow:0 0 0 7px rgba(214,183,127,.08)}.store-dot-one{right:34px;top:88px}.store-dot-two{left:45px;bottom:85px}.store-hero-art>span{position:absolute;bottom:25px;font-size:9px;letter-spacing:4px;color:#D0AC56}

.store-locator-panel{max-width:1080px;margin:-45px auto 0;padding:30px;position:relative;z-index:2;background:#fff;border:1px solid #F7F2E9;box-shadow:0 18px 48px rgba(62,44,30,.09)}.store-locator-heading{display:flex;justify-content:space-between;gap:25px;align-items:center}.store-locator-heading h2,.store-section-heading h2,.store-cta h2{font:normal 31px/1.15 Georgia,serif;color:#3B2A1B;margin:7px 0 9px}.store-locator-heading p,.store-section-heading p{max-width:710px;margin:0;color:#766b63;font-size:13px;line-height:1.7}.store-pin-mark{width:58px;height:58px;flex:0 0 58px;border-radius:50%;background:#F7F2E9;color:#3B2A1B;display:flex;align-items:center;justify-content:center}.store-pin-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.store-contact-strip{margin-top:25px;padding:18px 20px;background:#F7F2E9;border:1px solid #F7F2E9;display:flex;justify-content:space-between;align-items:center;gap:20px}.store-contact-copy{display:flex;flex-direction:column;gap:5px}.store-contact-copy strong{font-size:14px;color:#3B2A1B}.store-contact-copy span{font-size:12px;line-height:1.6;color:#776b61}.store-contact-actions{display:flex;gap:8px;flex:none}.store-action-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid #F7F2E9;color:#756454;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:1px;background:#fff}.store-action-link:hover{border-color:#3B2A1B;background:#F7F2E9}.store-action-link-dark{background:#3B2A1B;color:#fff;border-color:#3B2A1B}
.store-experience{max-width:1080px;margin:65px auto 0;padding:0 20px}.store-section-heading{text-align:center}.store-section-heading .store-eyebrow{color:#3B2A1B}.store-section-heading p{margin:0 auto}.store-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:28px}.store-feature-card{position:relative;background:#fff;border:1px solid #F7F2E9;padding:28px 25px 26px;min-height:255px;box-shadow:0 7px 24px rgba(58,40,26,.04);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.store-feature-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(58,40,26,.08);border-color:#D0AC56}.store-feature-number{position:absolute;right:18px;top:16px;font-size:10px;letter-spacing:1.5px;color:#D0AC56}.store-feature-icon{width:50px;height:50px;border-radius:50%;background:#F7F2E9;color:#3B2A1B;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.store-feature-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.store-feature-card h3{font:normal 21px Georgia,serif;color:#3B2A1B;margin:0 0 8px}.store-feature-card p{font-size:12.5px;line-height:1.75;color:#766b63;margin:0}
.store-cta{max-width:1080px;margin:55px auto 0;padding:34px 35px;background:linear-gradient(115deg,#3B2A1B,#3B2A1B);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:25px}.store-cta .store-eyebrow{color:#D0AC56}.store-cta h2{color:#fff;margin-top:7px}.store-cta p{max-width:690px;margin:0;color:#F7F2E9;font-size:12.5px;line-height:1.7}.store-cta .store-primary-btn{flex:none}

.account-created-page{background:#FBFCFE;min-height:100vh;color:#3B2A1B;padding-bottom:70px}.account-created-hero{padding:65px 20px 70px;background:radial-gradient(circle at 50% 0%,rgba(198,164,106,.16),transparent 40%),linear-gradient(180deg,#F7F2E9 0%,#FBFCFE 100%);display:flex;justify-content:center}.account-created-card{width:100%;max-width:700px;text-align:center;background:#fff;border:1px solid #F7F2E9;padding:48px 45px 43px;box-shadow:0 18px 50px rgba(62,44,30,.09);position:relative}.account-created-card:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:90px;height:3px;background:#D0AC56}.account-created-icon{width:74px;height:74px;margin:0 auto 22px;border-radius:50%;background:#eef8f1;color:#3d8a58;border:1px solid #c7e3ce;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(55,126,81,.08)}.account-created-icon svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.account-created-kicker{color:#3B2A1B}.account-created-card h1{font:normal 39px/1.15 Georgia,serif;color:#3B2A1B;margin:10px 0 12px}.account-created-lead{max-width:570px;margin:0 auto;color:#6f635b;font-size:14px;line-height:1.75}.account-created-login-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;margin-top:27px;padding:0 25px;background:#3B2A1B;color:#fff;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:1.3px;box-shadow:0 9px 22px rgba(119,82,37,.15);transition:all .2s ease}.account-created-login-btn:hover{background:#756454;transform:translateY(-1px)}.account-created-login-btn span{font-size:18px;margin-left:10px}.account-created-secondary{display:block;margin-top:14px;color:#667085;text-decoration:none;font-size:12px}.account-created-secondary:hover{color:#3B2A1B}
.account-created-benefits{max-width:1080px;margin:0 auto;padding:0 20px}.account-created-section-heading{text-align:center}.account-created-section-heading h2,.account-journey-copy h2{font:normal 31px/1.15 Georgia,serif;color:#3B2A1B;margin:8px 0}.account-created-section-heading p{margin:0 auto;max-width:660px;color:#766b63;font-size:13px;line-height:1.7}.account-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:28px}.account-benefit-card{background:#fff;border:1px solid #F7F2E9;padding:28px 24px;min-height:220px;text-align:center}.account-benefit-icon{width:54px;height:54px;margin:0 auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#F7F2E9;color:#3B2A1B}.account-benefit-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.account-benefit-card h3{font:normal 20px Georgia,serif;margin:0 0 8px;color:#3B2A1B}.account-benefit-card p{font-size:12.5px;line-height:1.7;color:#766b63;margin:0}.account-created-journey{max-width:1080px;margin:50px auto 0;padding:35px 38px;background:#3B2A1B;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px;overflow:hidden}.account-journey-copy{max-width:700px}.account-journey-copy .account-created-kicker{color:#D0AC56}.account-journey-copy h2{color:#fff}.account-journey-copy p{margin:0;color:#F7F2E9;font-size:12.5px;line-height:1.75}.account-created-text-link{display:inline-flex;align-items:center;margin-top:20px;color:#F7F2E9;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:1.2px}.account-created-text-link span{font-size:17px;margin-left:8px}.account-journey-mark{width:220px;height:220px;flex:0 0 220px;position:relative;display:flex;align-items:center;justify-content:center}.account-journey-circle{position:absolute;border:1px solid rgba(215,183,126,.35);border-radius:50%}.account-circle-one{width:180px;height:180px}.account-circle-two{width:120px;height:120px}.account-journey-diamond{width:44px;height:44px;border:1px solid #D0AC56;transform:rotate(45deg)}.account-journey-mark>span{position:absolute;bottom:17px;font-size:8px;letter-spacing:3px;color:#D0AC56}

@media(max-width:900px){
 .store-hero-inner{grid-template-columns:1fr;min-height:auto;padding:58px 24px 60px}.store-hero-copy{max-width:720px}.store-hero-art{justify-self:center;width:260px;height:260px;margin-top:5px}.store-art-ring{width:135px;height:135px}.store-orbit-one{width:225px;height:115px}.store-orbit-two{width:115px;height:225px}.store-locator-panel{margin:-28px 20px 0;padding:25px}.store-feature-grid,.account-benefit-grid{grid-template-columns:1fr 1fr}.store-cta{margin-left:20px;margin-right:20px}.account-created-hero{padding-top:45px}.account-created-journey{margin-left:20px;margin-right:20px}
}
@media(max-width:600px){
 .store-page{padding-bottom:45px}.store-hero-inner{padding:45px 18px 48px}.store-hero h1{font-size:37px}.store-hero-copy>p{font-size:13px}.store-hero-actions{flex-direction:column;align-items:stretch}.store-primary-btn,.store-ghost-btn{width:100%}.store-hero-art{width:220px;height:220px}.store-art-ring{width:115px;height:115px}.store-orbit-one{width:190px;height:95px}.store-orbit-two{width:95px;height:190px}.store-locator-panel{margin:-20px 12px 0;padding:22px 18px}.store-locator-heading{align-items:flex-start}.store-locator-heading h2,.store-section-heading h2,.store-cta h2{font-size:26px}.store-pin-mark{width:48px;height:48px;flex-basis:48px}.store-pin-mark svg{width:23px;height:23px}.store-contact-strip{display:block;padding:17px}.store-contact-actions{margin-top:15px;display:grid;grid-template-columns:1fr 1fr}.store-action-link{width:100%}.store-experience{margin-top:48px;padding:0 12px}.store-feature-grid,.account-benefit-grid{grid-template-columns:1fr}.store-feature-card{min-height:0}.store-cta{margin:42px 12px 0;padding:27px 21px;display:block}.store-cta .store-primary-btn{margin-top:20px}.account-created-hero{padding:35px 12px 45px}.account-created-card{padding:38px 20px 32px}.account-created-card h1{font-size:31px}.account-created-lead{font-size:13px}.account-created-login-btn{width:100%;padding:0 14px}.account-created-benefits{padding:0 12px}.account-created-section-heading h2{font-size:27px}.account-created-journey{margin:40px 12px 0;padding:28px 22px;display:block}.account-journey-mark{width:170px;height:170px;margin:20px auto 0}.account-circle-one{width:145px;height:145px}.account-circle-two{width:95px;height:95px}.account-journey-diamond{width:34px;height:34px}
}

/* =========================================================
   NOOPURA MEGA MENU POLISH
   Shop by Category uses two columns in Gold, Diamond and Silver.
   The surrounding mega-menu layout remains unchanged.
   ========================================================= */
.mainnav .mega > .mega-category-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:0;align-content:start}
.mainnav .mega > .mega-category-column > h4{grid-column:1 / -1}
.mainnav .mega > .mega-category-column > a{min-width:0}
@media(max-width:850px){.mainnav .mega > .mega-category-column{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}}

/* =========================================================
   NOOPURA COLLECTION MENU POLISH
   Keep Collections compact with three balanced sections.
   Gold/Diamond/Silver mega menus are intentionally unchanged.
   ========================================================= */
.mainnav .collection-mega{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:28px !important}
.mainnav .collection-mega > div{min-width:0}
@media (min-width:601px) and (max-width:900px){
    .mainnav .collection-mega{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:600px){
    .mainnav .collection-mega{grid-template-columns:1fr !important}
}

/* =========================================================
   NOOPURA V55 - COLLECTION MEGA MENU CONSISTENCY
   The Collections featured images are part of the global header,
   so their sizing must live in site.css rather than Products.css.
   This keeps the same compact three-image presentation on Home,
   Products, Offers and every other page using Site.master.
   ========================================================= */
.mainnav .collection-mega .collection-menu-section{min-width:0}
.mainnav .collection-mega .collection-menu-feature{
    display:block;
    width:100%;
    height:62px;
    object-fit:cover;
    border:1px solid #F7F2E9;
    margin:0 0 11px;
    box-shadow:0 3px 10px rgba(48,33,22,.06);
}
.mainnav .collection-mega .collection-menu-section h4{margin-bottom:10px}
.mainnav .collection-mega .collection-menu-section > a{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    column-gap:9px;
    padding:5px 0;
}
.mainnav .collection-mega .collection-menu-section > a .megaThumb{
    width:38px;
    height:38px;
    min-width:38px;
    object-fit:cover;
    border-radius:2px;
}
@media(max-width:900px){
    .mainnav .collection-mega .collection-menu-feature{height:56px}
}
@media(max-width:600px){
    .mainnav .collection-mega .collection-menu-feature{height:72px}
}


/* =========================================================
   V80 PREMIUM JEWELLERY MEGA-MENU IMAGES
   ========================================================= */
.mainnav .megaPromo {
    overflow: hidden;
}
.mainnav .megaPromo > a {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    width: 100% !important;
    padding: 0 !important;
    background: transparent !important;
}
.mainnav .megaPromo-image {
    display: block;
    width: 100% !important;
    height: 128px !important;
    min-height: 128px;
    object-fit: cover !important;
    object-position: center;
    border: 1px solid rgba(255,255,255,.55);
    box-shadow: 0 5px 14px rgba(45,31,21,.12);
    background: #F7F2E9;
}
.mainnav .megaPromo > a > span {
    align-self: flex-start;
    margin: 0 !important;
    padding: 9px 13px;
    background: #6B4A2D !important;
    color: #fff !important;
}
.mainnav .collection-menu-feature {
    height: 82px;
    object-position: center;
}
@media (max-width: 900px) {
    .mainnav .megaPromo-image {
        height: 116px !important;
        min-height: 116px;
    }
}
@media (max-width: 600px) {
    .mainnav .megaPromo-image {
        height: 78px !important;
        min-height: 78px;
    }
}

/* V81: compact Gold / Silver / Diamond collection promo imagery. */
.mainnav .megaPromo {
    min-height: 0 !important;
    padding: 16px !important;
}
.mainnav .megaPromo-image {
    height: 88px !important;
    min-height: 88px !important;
    object-fit: cover !important;
    object-position: center center !important;
}
@media (max-width: 900px) {
    .mainnav .megaPromo {
        padding: 14px !important;
    }
    .mainnav .megaPromo-image {
        height: 82px !important;
        min-height: 82px !important;
    }
}
@media (max-width: 600px) {
    .mainnav .megaPromo {
        padding: 12px !important;
    }
    .mainnav .megaPromo-image {
        height: 76px !important;
        min-height: 76px !important;
    }
}

/* ================================================================
   V82 FLOATING WHATSAPP - RIGHT-EDGE TAB DESIGN
   ================================================================ */
.noopura-whatsapp {
    position: fixed !important;
    right: 0 !important;
    bottom: 112px !important;
    z-index: 99999 !important;
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 52px !important;
    padding: 8px 14px 8px 9px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-right: 0 !important;
    border-radius: 28px 0 0 28px !important;
    background: linear-gradient(180deg,#25b765 0%,#178e4d 100%) !important;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: -5px 8px 24px rgba(0,0,0,.20) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .5px !important;
    animation: noopuraWhatsappEdgeFloat 3.2s ease-in-out infinite !important;
    transition: padding .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

.noopura-whatsapp:hover {
    right: 0 !important;
    padding-right: 20px !important;
    background: linear-gradient(180deg,#2ac773 0%,#168b4a 100%) !important;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: -8px 12px 30px rgba(0,0,0,.28) !important;
    animation-play-state: paused !important;
    transform: translateX(-2px) !important;
}

.noopura-whatsapp .whatsapp-icon {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    border: 2px solid rgba(255,255,255,.55) !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #1c9d56 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.13) !important;
}

.noopura-whatsapp .whatsapp-icon svg {
    width: 21px !important;
    height: 21px !important;
}

.noopura-whatsapp .whatsapp-text {
    display: inline-block !important;
    color: #fff !important;
    white-space: nowrap !important;
}

@keyframes noopuraWhatsappEdgeFloat {
    0%,100% { transform: translateX(0); }
    50% { transform: translateX(-5px); }
}

@media (max-width:700px) {
    .noopura-whatsapp {
        bottom: 88px !important;
        min-height: 48px !important;
        padding: 7px 11px 7px 7px !important;
        gap: 7px !important;
        border-radius: 25px 0 0 25px !important;
    }
    .noopura-whatsapp .whatsapp-icon {
        width: 34px !important;
        height: 34px !important;
        flex-basis: 34px !important;
    }
    .noopura-whatsapp .whatsapp-text {
        font-size: 10px !important;
    }
}

@media (max-width:420px) {
    .noopura-whatsapp {
        bottom: 78px !important;
        padding-right: 9px !important;
    }
    .noopura-whatsapp .whatsapp-text {
        display: none !important;
    }
    .noopura-whatsapp .whatsapp-icon {
        width: 38px !important;
        height: 38px !important;
        flex-basis: 38px !important;
    }
}

/* =========================================================
   V4.8 - HOMEPAGE PRODUCT PRICING CONSISTENCY
   Use the same GST-inclusive Product Total and after-GST offer
   presentation as Products.aspx without changing the homepage layout.
   ========================================================= */
.home-card-price{min-height:44px}
.home-offer-price-row{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:7px;line-height:1.1}
.home-price-current{font-size:16px;font-weight:700;color:#3B2A1B;letter-spacing:.1px}
.home-price-original{font-size:11px;font-weight:400;color:#8a8179;text-decoration:line-through;text-decoration-thickness:1px}
.home-price-offer-note{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:3px;font-size:10px;line-height:1.15}
.home-price-offer-note span{color:#756454;font-weight:600;letter-spacing:.15px}
.home-price-offer-note em{font-style:normal;color:#9a5d45;font-weight:700;letter-spacing:.35px}
@media(max-width:600px){
 .home-price-current{font-size:14px}
 .home-price-original{font-size:9px}
 .home-price-offer-note{font-size:8.5px;gap:4px}
}

/* =========================================================
   V4.9 - FEATURED PRODUCTS ONLY
   Scoped exclusively to the homepage Featured Products section.
   Existing homepage sections, header, hero, category, banner and
   rates remain unchanged.
   ========================================================= */
.featured-products-section .products{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:stretch}
.featured-products-section .featured-product-card{background:#fff;border:1px solid #F7F2E9;border-radius:12px;overflow:hidden;text-align:left;box-shadow:0 5px 18px rgba(54,39,28,.06);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;min-width:0}
.featured-products-section .featured-product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(54,39,28,.12)}
.featured-products-section .featured-product-image-link{display:block;text-decoration:none;color:inherit}
.featured-products-section .featured-product-image-wrap{display:block;position:relative;background:#F7F2E9;overflow:hidden}
.featured-products-section .featured-product-image-wrap img{display:block;width:100%;height:285px;object-fit:contain;border:0;transition:transform .25s ease}
.featured-products-section .featured-product-card:hover .featured-product-image-wrap img{transform:scale(1.025)}
.featured-products-section .featured-offer-badge{position:absolute;left:12px;top:12px;z-index:2;background:#b33b2f;color:#fff;border-radius:6px;padding:7px 9px;font-size:11px;font-weight:700;letter-spacing:.35px;line-height:1;box-shadow:0 3px 8px rgba(80,30,20,.16)}
.featured-products-section .featured-product-info{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}
.featured-products-section .featured-product-info h3{font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:700;line-height:1.3;margin:0 0 7px;color:#3B2A1B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.featured-products-section .featured-product-meta{display:flex;align-items:center;gap:7px;margin:0 0 11px;color:#777;font-size:12px;line-height:1.2}
.featured-products-section .home-card-price{min-height:55px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;margin-bottom:12px}
.featured-products-section .home-offer-price-row{justify-content:flex-start;gap:9px;align-items:baseline}
.featured-products-section .home-price-current{font-size:20px;font-weight:700;color:#3B2A1B;line-height:1.15}
.featured-products-section .home-price-original{font-size:12px;color:#81786f;text-decoration:line-through;text-decoration-thickness:1px;white-space:nowrap}
.featured-products-section .home-price-offer-note{justify-content:flex-start;gap:9px;margin-top:5px;font-size:11px;line-height:1.2}
.featured-products-section .home-price-offer-note span{color:#b33b2f;font-weight:700}
.featured-products-section .home-price-offer-note em{color:#b33b2f;font-weight:700}
.featured-products-section .featured-product-button{display:flex;align-items:center;justify-content:center;min-height:40px;margin-top:auto;padding:10px 14px;border:1px solid #D0AC56;border-radius:6px;background:#D0AC56;color:#fff;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.7px;transition:background .2s ease,border-color .2s ease}
.featured-products-section .featured-product-button:hover{background:#756454;border-color:#756454;color:#fff}
@media(max-width:1000px){
 .featured-products-section .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .featured-products-section .featured-product-image-wrap img{height:260px}
}
@media(max-width:600px){
 .featured-products-section .products{grid-template-columns:1fr 1fr;gap:12px}
 .featured-products-section .featured-product-image-wrap img{height:210px}
 .featured-products-section .featured-product-info{padding:12px 12px 13px}
 .featured-products-section .featured-product-info h3{font-size:14px}
 .featured-products-section .featured-product-meta{font-size:10px;margin-bottom:8px}
 .featured-products-section .home-card-price{min-height:49px;margin-bottom:9px}
 .featured-products-section .home-price-current{font-size:17px}
 .featured-products-section .home-price-original{font-size:10px}
 .featured-products-section .home-price-offer-note{font-size:9px;gap:6px}
 .featured-products-section .featured-offer-badge{left:8px;top:8px;padding:6px 7px;font-size:9px}
 .featured-products-section .featured-product-button{min-height:37px;padding:9px 7px;font-size:9px;letter-spacing:.45px}
}
@media(max-width:390px){
 .featured-products-section .products{grid-template-columns:1fr}
 .featured-products-section .featured-product-image-wrap img{height:260px}
}


/* V4.10 - Featured Products: exactly 8 items + View All button */
.featured-products-section .featured-products-view-all{display:flex;justify-content:center;margin:34px 0 4px}
.featured-products-section .featured-products-view-all-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 24px;border:1px solid #D0AC56;border-radius:6px;background:#fff;color:#756454;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.75px;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.featured-products-section .featured-products-view-all-btn:hover{background:#D0AC56;color:#fff;border-color:#D0AC56;transform:translateY(-1px)}
@media(max-width:600px){.featured-products-section .featured-products-view-all{margin:24px 0 2px}.featured-products-section .featured-products-view-all-btn{width:100%;max-width:280px;min-height:42px;padding:10px 18px;font-size:11px}}

.filter-help-text{font-size:12px;line-height:1.45;color:#777;margin-top:7px;}
@media(max-width:768px){.filter-help-text{font-size:11px;}}

/* V12: Platinum mega-menu mirrors the Gold/Silver image-led layout. */
.mainnav .mega-platinum > div:not(.megaPromo) > a{display:flex;align-items:center;gap:9px}
.mainnav .mega-platinum .megaThumb{width:42px;height:42px;flex:0 0 42px;object-fit:cover;border-radius:50%;border:1px solid #d7d9dc;box-shadow:0 2px 7px rgba(40,40,40,.10);background:#f4f5f6}
.mainnav .mega-platinum .megaPromo{align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#eef0f2,#aeb4bb);color:#2e3338}
.mainnav .mega-platinum .megaPromo > b{color:#30363b}
@media(max-width:850px){.mainnav .mega-platinum .megaThumb{width:38px;height:38px;flex-basis:38px}}

/* =========================================================
   NOOPURA V71 - PAYMENT OPENING / NON-SUCCESS MESSAGE
   Never style a payment-window loading message as a success.
   ========================================================= */
.checkout-result.checkout-info,
.checkout-result.is-info{
    border-color:#F7F2E9 !important;
    border-left-color:#3B2A1B !important;
    background:linear-gradient(135deg,#F7F2E9 0%,#fffdf8 100%) !important;
    color:#756454 !important;
    box-shadow:0 8px 22px rgba(115,86,47,.08) !important;
}
.checkout-result.checkout-info:before,
.checkout-result.is-info:before{
    content:'i';
    background:#3B2A1B;
    color:#fff;
    box-shadow:0 4px 10px rgba(115,86,47,.16);
}



/* =========================================================
   NOOPURA - PAYMENT CONFIRMATION ON ORDER DETAILS
   ========================================================= */
.order-payment-success{
    display:flex;
    align-items:center;
    gap:14px;
    margin:0 0 22px;
    padding:16px 20px;
    border:1px solid #b9ddc4;
    border-left:5px solid #3d8b58;
    border-radius:10px;
    background:#f5fbf6;
    color:#2f6f45;
    box-shadow:0 8px 24px rgba(47,125,74,.08);
}
.order-payment-success-icon{
    flex:0 0 30px;
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#3d8b58;
    color:#fff;
    font-weight:800;
}
.order-payment-success strong{display:block;font-size:15px;}
.order-payment-success span{display:block;margin-top:3px;font-size:12px;color:#5b8066;}
@media(max-width:600px){
    .order-payment-success{padding:14px 15px;gap:11px;}
    .order-payment-success-icon{width:27px;height:27px;flex-basis:27px;}
}


/* V26 - Refined order confirmation typography and compact responsive layout */
.order-detail-heading h1{
    margin:0;
    color:#3B2A1B;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:40px;
    line-height:1.15;
    font-weight:600;
    letter-spacing:-.5px;
}
.order-number-badge{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:min(100%,620px);
    min-height:104px;
    margin:16px 0 14px;
    padding:16px 24px 17px;
    border:1px solid #F7F2E9;
    border-left:6px solid #3B2A1B;
    border-radius:12px;
    background:linear-gradient(135deg,#F7F2E9 0%,#F7F2E9 100%);
    box-shadow:0 7px 18px rgba(90,60,30,.07);
    text-align:center;
    box-sizing:border-box;
}
.order-number-label{
    display:block;
    margin:0 0 7px;
    color:#756454;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:11px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:2.5px;
}
.order-number-badge strong{
    display:block;
    color:#3B2A1B;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:40px !important;
    line-height:1.15;
    font-weight:700;
    letter-spacing:.8px;
    word-break:break-word;
}
.order-payment-success{
    position:relative;
    display:grid !important;
    grid-template-columns:40px minmax(0,1fr) auto;
    align-items:center;
    gap:13px;
    margin:0 0 20px !important;
    padding:13px 18px !important;
    border:1px solid #a9d6b6 !important;
    border-left:6px solid #2f8a4f !important;
    border-radius:9px !important;
    background:linear-gradient(135deg,#eefaf1 0%,#f8fdf9 100%) !important;
    color:#216b3b !important;
    box-shadow:0 6px 18px rgba(47,138,79,.09) !important;
}
.order-payment-success-icon{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
    font-size:19px !important;
    background:#2f8a4f !important;
    box-shadow:0 3px 8px rgba(47,138,79,.18);
}
.order-payment-success-content strong{
    display:block;
    color:#216b3b !important;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:16px !important;
    line-height:1.3;
    font-weight:700;
}
.order-payment-success-content span{
    display:block;
    margin-top:2px !important;
    color:#467257 !important;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:12px !important;
    line-height:1.45;
}
.order-payment-success-order{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    padding-left:16px;
    border-left:1px solid #b9ddc4;
}
.order-payment-success-order span{
    margin:0 0 3px !important;
    color:#62836d !important;
    font-size:9px !important;
    font-weight:700;
    letter-spacing:1.4px;
}
.order-success-order-number{
    color:#216b3b !important;
    font-family:"Segoe UI",Arial,Helvetica,sans-serif;
    font-size:14px !important;
    font-weight:700;
    letter-spacing:.3px;
    white-space:nowrap;
}
@media(max-width:700px){
    .order-detail-heading h1{
        font-size:30px;
        line-height:1.2;
        letter-spacing:-.2px;
    }
    .order-number-badge{
        width:100%;
        min-height:88px;
        margin:13px 0 12px;
        padding:13px 12px 14px;
        border-left-width:5px;
    }
    .order-number-label{
        margin-bottom:6px;
        font-size:10px;
        letter-spacing:2px;
    }
    .order-number-badge strong{
        font-size:29px !important;
        line-height:1.2;
        letter-spacing:.45px;
    }
    .order-payment-success{
        grid-template-columns:34px minmax(0,1fr) !important;
        gap:10px;
        padding:12px 13px !important;
    }
    .order-payment-success-icon{
        width:30px !important;
        height:30px !important;
        flex-basis:30px !important;
        font-size:17px !important;
    }
    .order-payment-success-content strong{font-size:15px !important;}
    .order-payment-success-content span{font-size:11px !important;}
    .order-payment-success-order{
        grid-column:2;
        border-left:0;
        border-top:1px solid #b9ddc4;
        padding:8px 0 0;
        align-items:flex-start;
    }
    .order-success-order-number{
        font-size:13px !important;
        white-space:normal;
        word-break:break-word;
    }
}
@media(max-width:420px){
    .order-detail-heading h1{font-size:27px;}
    .order-number-badge strong{font-size:25px !important;}
}

/* =========================================================
   NOOPURA V92 - LIGHTWEIGHT CINEMATIC HERO VIDEOS
   Local MP4, muted autoplay, poster fallback, lazy next-video
   loading and visibility pause to protect page performance.
   ========================================================= */
.hero-video-slides{background:#03144B;}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.hero-video.hero-slide{background:#03144B;}
.hero-video.hero-slide::after{content:none;}
.hero-video-slides::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(20,12,8,.70) 0%,rgba(20,12,8,.40) 34%,rgba(20,12,8,.10) 68%,rgba(20,12,8,.02) 100%);}
.hero-split .hero-video-slides::after{background:linear-gradient(90deg,rgba(20,12,8,.72) 0%,rgba(20,12,8,.38) 40%,rgba(20,12,8,.08) 100%);}
@media(max-width:600px){.hero-video-slides::after{background:linear-gradient(180deg,rgba(15,9,6,.25) 0%,rgba(15,9,6,.42) 48%,rgba(15,9,6,.78) 100%);}.hero-video{object-position:center;}}
@media(prefers-reduced-motion:reduce){.hero-video-slides .hero-video:not(.hero-active){display:none}.hero-video-slides .hero-video.hero-active{opacity:1!important}.hero-video-slides::after{background:linear-gradient(90deg,rgba(20,12,8,.72),rgba(20,12,8,.18));}}

/* =========================================================
   NOOPURA CINEMATIC STORYTELLING V5
   Full-width hero video + bottom-to-top editorial reveals.
   This intentionally replaces the old split hero/carousel controls.
   ========================================================= */
.hero.hero-cinematic {
    width: 100% !important;
    height: clamp(520px, 72svh, 760px) !important;
    min-height: 520px !important;
    max-height: 760px;
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    background: #3B2A1B !important;
    isolation: isolate;
}

.hero-cinematic::after {
    content: none !important;
    display: none !important;
}

.hero-video-frame {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    background: #3B2A1B;
}

.hero-video-single {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    background: #3B2A1B;
    transform: scale(1.01);
}

.hero-cinematic-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(10,7,5,.72) 0%, rgba(10,7,5,.38) 38%, rgba(10,7,5,.10) 70%, rgba(10,7,5,.02) 100%),
        linear-gradient(180deg, rgba(8,6,4,.12) 0%, transparent 48%, rgba(8,6,4,.38) 100%);
}

.hero-cinematic-copy {
    z-index: 3 !important;
    left: clamp(28px, 8vw, 118px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: min(650px, 58vw) !important;
    color: #fff;
}

.hero-cinematic-copy .eyebrow {
    color: #F7F2E9;
    font-size: 11px;
    letter-spacing: 3.5px;
    font-weight: 600;
    margin-bottom: 18px;
}

.hero-cinematic-copy h1 {
    color: #fff !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(43px, 5vw, 72px) !important;
    line-height: .98 !important;
    letter-spacing: -.8px;
    margin: 0 0 24px !important;
    text-shadow: 0 4px 22px rgba(0,0,0,.26);
}

.hero-cinematic-copy p {
    color: rgba(255,255,255,.92) !important;
    font-size: 15px;
    line-height: 1.75;
    max-width: 510px;
    margin: 0 0 21px;
}

.hero-cinematic-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.hero-cinematic-actions .btn {
    margin-top: 0 !important;
    padding: 14px 25px;
    background: #D0AC56;
    border: 1px solid rgba(240,211,155,.5);
}

.hero-cinematic-actions .hero-secondary {
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.55) !important;
    color: #fff !important;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.hero-scroll-cue {
    position: absolute;
    z-index: 4;
    right: clamp(24px, 4vw, 60px);
    bottom: 28px;
    display: flex;
    align-items: center;
    gap: 11px;
    color: rgba(255,255,255,.78);
    font-size: 8px;
    letter-spacing: 2.3px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
}

.hero-scroll-cue i {
    display: block;
    width: 1px;
    height: 48px;
    background: linear-gradient(to bottom, rgba(224,190,126,.1), #D0AC56, rgba(224,190,126,.1));
    animation: noopuraScrollCue 2.2s ease-in-out infinite;
}

@keyframes noopuraScrollCue {
    0%,100% { transform: scaleY(.55); transform-origin: top; opacity: .45; }
    50% { transform: scaleY(1); transform-origin: top; opacity: 1; }
}

/* The storytelling section deliberately uses generous whitespace so each
   visual feels like a campaign frame rather than a product carousel. */
.noopura-scroll-story {
    width: 100%;
    overflow: hidden;
    background: #3B2A1B;
}

.story-panel {
    position: relative;
    min-height: 92svh;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    align-items: center;
    gap: clamp(28px, 6vw, 100px);
    padding: clamp(70px, 9vw, 125px) clamp(24px, 7vw, 110px);
    overflow: hidden;
    isolation: isolate;
}

.story-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    opacity: .55;
}

.story-panel-gold {
    background: radial-gradient(circle at 28% 42%, #3B2A1B 0, #3B2A1B 48%, #3B2A1B 100%);
}
.story-panel-diamond {
    background: radial-gradient(circle at 72% 45%, #34312e 0, #181614 47%, #0e0d0c 100%);
}
.story-panel-bridal {
    background: radial-gradient(circle at 30% 45%, #3B2A1B 0, #3B2A1B 50%, #3B2A1B 100%);
}

.story-media {
    position: relative;
    width: min(760px, 62vw);
    height: min(72svh, 680px);
    justify-self: center;
    overflow: hidden;
    background: #FBF8F2;
    box-shadow: 0 30px 80px rgba(0,0,0,.35);
    opacity: 0;
    transform: translate3d(0, 18vh, 0) scale(1.045);
    transition: transform 1.25s cubic-bezier(.16,1,.3,1), opacity 1s ease;
    will-change: transform, opacity;
}

.story-media::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
}

.story-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transform: scale(1.03);
    transition: transform 2.2s cubic-bezier(.16,1,.3,1), filter 1.2s ease;
    filter: saturate(.92) contrast(1.03);
}

.story-panel.is-visible .story-media {
    opacity: 1;
    transform: translate3d(0,0,0) scale(1);
}

.story-panel.is-visible .story-media img {
    transform: scale(1);
}

.story-copy {
    max-width: 440px;
    color: #F7F2E9;
    opacity: 0;
    transform: translate3d(0, 50px, 0);
    transition: transform 1s cubic-bezier(.16,1,.3,1) .16s, opacity .9s ease .16s;
}

.story-panel.is-visible .story-copy {
    opacity: 1;
    transform: translate3d(0,0,0);
}

.story-kicker {
    display: block;
    color: #d9b875;
    font-size: 9px;
    letter-spacing: 3px;
    font-weight: 700;
    margin-bottom: 20px;
}

.story-copy h2 {
    margin: 0 0 20px;
    color: #fff;
    font: normal clamp(40px, 5vw, 68px)/.96 Georgia, 'Times New Roman', serif;
    letter-spacing: -1px;
}

.story-copy p {
    max-width: 370px;
    margin: 0 0 24px;
    color: rgba(255,255,255,.72);
    font-size: 14px;
    line-height: 1.8;
}

.story-copy a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #D0AC56;
    text-decoration: none;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    border-bottom: 1px solid rgba(225,193,131,.45);
    padding-bottom: 7px;
}

.story-copy a b {
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    transition: transform .25s ease;
}

.story-copy a:hover b {
    transform: translateX(5px);
}

.story-panel-diamond .story-media {
    order: 2;
    background: #f7f6f4;
}
.story-panel-diamond .story-copy {
    order: 1;
    justify-self: end;
}
.story-panel-bridal .story-media {
    background: #D0AC56;
}

@media (max-width: 900px) {
    .hero.hero-cinematic {
        height: clamp(500px, 70svh, 680px) !important;
        min-height: 500px !important;
    }
    .hero-cinematic-copy {
        left: 32px !important;
        width: min(610px, 72vw) !important;
    }
    .hero-cinematic-copy h1 {
        font-size: clamp(39px, 6vw, 55px) !important;
    }
    .hero-scroll-cue {
        right: 20px;
    }
    .story-panel {
        min-height: 820px;
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 70px 32px;
    }
    .story-media,
    .story-panel-diamond .story-media {
        order: 1;
        width: min(700px, 88vw);
        height: min(58svh, 560px);
        justify-self: center;
    }
    .story-copy,
    .story-panel-diamond .story-copy {
        order: 2;
        justify-self: center;
        width: min(700px, 88vw);
        max-width: none;
    }
}

@media (max-width: 600px) {
    .hero.hero-cinematic {
        height: calc(100svh - 150px) !important;
        min-height: 500px !important;
        max-height: none;
    }
    .hero-video-single {
        object-position: 57% center;
    }
    .hero-cinematic-shade {
        background:
            linear-gradient(180deg, rgba(8,6,4,.12) 0%, rgba(8,6,4,.20) 38%, rgba(8,6,4,.78) 100%);
    }
    .hero-cinematic-copy {
        left: 22px !important;
        right: 45px;
        top: auto !important;
        bottom: 70px !important;
        transform: none !important;
        width: auto !important;
    }
    .hero-cinematic-copy .eyebrow {
        font-size: 8px;
        letter-spacing: 2.4px;
        margin-bottom: 11px;
    }
    .hero-cinematic-copy h1 {
        font-size: 35px !important;
        line-height: 1.01 !important;
        margin-bottom: 13px !important;
    }
    .hero-cinematic-copy p {
        font-size: 12px;
        line-height: 1.55;
        margin-bottom: 15px;
    }
    .hero-cinematic-actions .btn {
        padding: 11px 17px;
        font-size: 9px;
    }
    .hero-scroll-cue {
        right: 15px;
        bottom: 22px;
        font-size: 6.5px;
        letter-spacing: 1.7px;
        gap: 7px;
    }
    .hero-scroll-cue i {
        height: 32px;
    }
    .story-panel {
        min-height: 760px;
        padding: 58px 18px 68px;
        gap: 28px;
    }
    .story-media,
    .story-panel-diamond .story-media {
        width: 100%;
        height: 57svh;
        max-height: 510px;
    }
    .story-copy,
    .story-panel-diamond .story-copy {
        width: 100%;
    }
    .story-kicker {
        font-size: 8px;
        letter-spacing: 2.4px;
        margin-bottom: 13px;
    }
    .story-copy h2 {
        font-size: 42px;
        margin-bottom: 13px;
    }
    .story-copy p {
        font-size: 12px;
        line-height: 1.65;
        margin-bottom: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-scroll-cue,
    .story-media,
    .story-copy,
    .story-media img {
        animation: none !important;
        transition: none !important;
    }
    .story-panel .story-media,
    .story-panel .story-copy {
        opacity: 1;
        transform: none;
    }
}

/* =========================================================
   NOOPURA EDITORIAL PANELS V7
   High-clarity luxury triptych with a true bottom-to-top image reveal.
   The imagery is intentionally editorial and portrait-oriented, while
   the HTML typography remains separate from the image for accessibility.
   ========================================================= */
.noopura-editorial-panels {
    width: 100%;
    background: #0d0b0a;
    padding: 0;
    overflow: hidden;
}

.editorial-panels-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px;
}

.editorial-panel {
    position: relative;
    height: clamp(600px, 84svh, 860px);
    min-height: 600px;
    overflow: hidden;
    background: #181412;
    opacity: 1;
}

.editorial-panel-link {
    position: absolute;
    inset: 0;
    display: block;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
}

/* The visual itself is revealed upward from the bottom rather than the
   entire card simply sliding into view. */
.editorial-panel-link img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
    transform: translate3d(0, 7%, 0) scale(1.035);
    clip-path: inset(100% 0 0 0);
    opacity: .98;
    filter: saturate(.98) contrast(1.035);
    transition:
        clip-path 1.55s cubic-bezier(.16,1,.3,1),
        transform 2.1s cubic-bezier(.16,1,.3,1),
        opacity 1s ease;
    will-change: clip-path, transform;
}

.editorial-panel.is-visible .editorial-panel-link img {
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0) scale(1.015);
    opacity: 1;
}

.editorial-panel:nth-child(2) .editorial-panel-link img {
    transition-delay: .11s, .11s, .11s;
}

.editorial-panel:nth-child(3) .editorial-panel-link img {
    transition-delay: .22s, .22s, .22s;
}

.editorial-panel:hover .editorial-panel-link img {
    transform: scale(1.035);
    filter: saturate(1.02) contrast(1.045);
}

.editorial-panel-shade {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    background:
        linear-gradient(180deg,
            rgba(0,0,0,.00) 0%,
            rgba(0,0,0,.00) 46%,
            rgba(0,0,0,.14) 64%,
            rgba(0,0,0,.70) 100%);
}

.editorial-panel-copy {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 42px;
    z-index: 3;
    text-align: center;
    color: #fff;
    opacity: 0;
    transform: translate3d(0, 26px, 0);
    transition: opacity .8s ease .65s, transform 1s cubic-bezier(.16,1,.3,1) .65s;
}

.editorial-panel.is-visible .editorial-panel-copy {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.editorial-panel:nth-child(2) .editorial-panel-copy {
    transition-delay: .78s, .78s;
}

.editorial-panel:nth-child(3) .editorial-panel-copy {
    transition-delay: .91s, .91s;
}

.editorial-panel-kicker {
    display: block;
    margin-bottom: 9px;
    color: rgba(255,255,255,.94);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 3px;
}

.editorial-panel-copy h2 {
    margin: 0 0 19px;
    color: #fff;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(34px, 3.35vw, 54px);
    line-height: .98;
    font-weight: 400;
    letter-spacing: -.7px;
    text-shadow: 0 2px 18px rgba(0,0,0,.25);
}

.editorial-panel-cta {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(255,255,255,.96);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 8px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 2px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255,255,255,.52);
}

.editorial-panel-cta b {
    font-size: 14px;
    font-weight: 400;
    line-height: .7;
    transition: transform .25s ease;
}

.editorial-panel-link:hover .editorial-panel-cta b {
    transform: translateX(4px);
}

@media (max-width: 900px) {
    .editorial-panels-grid { gap: 2px; }
    .editorial-panel {
        height: 70svh;
        min-height: 500px;
    }
    .editorial-panel-copy {
        left: 14px;
        right: 14px;
        bottom: 30px;
    }
    .editorial-panel-copy h2 {
        font-size: clamp(28px, 4.7vw, 42px);
    }
}

@media (max-width: 600px) {
    .editorial-panels-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }
    .editorial-panel {
        height: 82svh;
        min-height: 520px;
    }
    .editorial-panel-link img {
        transform: translate3d(0, 8%, 0) scale(1.025);
    }
    .editorial-panel.is-visible .editorial-panel-link img {
        transform: translate3d(0, 0, 0) scale(1.01);
    }
    .editorial-panel-copy {
        bottom: 34px;
    }
    .editorial-panel-kicker {
        font-size: 8px;
        letter-spacing: 2.4px;
    }
    .editorial-panel-copy h2 {
        font-size: 40px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .editorial-panel-link img,
    .editorial-panel-copy,
    .editorial-panel-cta b {
        transition: none !important;
    }
    .editorial-panel-link img,
    .editorial-panel.is-visible .editorial-panel-link img {
        clip-path: inset(0 0 0 0);
        transform: none;
        opacity: 1;
    }
    .editorial-panel-copy,
    .editorial-panel.is-visible .editorial-panel-copy {
        opacity: 1;
        transform: none;
    }
}



/* Noopura JEWELERS — PREMIUM BRAND THEME */
:root{--cj-blue:#3B2A1B;--cj-blue-2:#071f6b;--cj-blue-3:#0b2b7d;--cj-gold:#d0ac56;--cj-gold-light:#f1d58b;--cj-ink:#3B2A1B;--cj-cream:#fbfaf7;--cj-border:#e8e4dc}
html{scroll-behavior:smooth}
body{font-family:"Inter","Segoe UI",Arial,sans-serif;background:var(--cj-cream);color:var(--cj-ink)}
body,button,input,select,textarea{font-family:"Inter","Segoe UI",Arial,sans-serif}
h1,h2,h3,.hero h1,.section>h2,.banner h2,.rate h2,.detail h1,.catalog-heading h1{font-family:Georgia,"Times New Roman",serif}
.site-header-fixed{background:#fff;box-shadow:0 8px 30px rgba(2,26,96,.10)}
.top-info-bar{background:var(--cj-blue)!important;color:#fff!important;border-bottom:1px solid rgba(208,172,86,.35)}
.top-info-bar a,.top-info-bar span{color:#fff!important}.top-info-bar .top-separator{color:var(--cj-gold)!important}
.headrow{max-width:1320px;padding:14px 24px;gap:28px;background:#fff}
.logo{display:flex;align-items:center;flex:0 0 auto;max-width:220px}.logo-image-wrap{display:block;background:var(--cj-blue);border-radius:10px;padding:7px 10px;box-shadow:0 5px 18px rgba(2,26,96,.14)}
.logo-image{display:block;width:205px;height:auto;max-height:86px;object-fit:contain}
.noo-search{height:46px!important;max-width:600px;flex:1;border:1px solid #dfe3ea;border-radius:4px;overflow:visible!important;background:#fff;box-shadow:0 4px 14px rgba(2,26,96,.05)}
.noo-search input[type=text]{border:0!important;outline:0!important;background:transparent!important;padding:0 15px!important;font-size:14px!important;color:var(--cj-ink)!important}
.noo-search .search-submit{background:var(--cj-blue)!important;color:#fff!important;border-radius:0 3px 3px 0!important;padding:0 22px!important;font-weight:700;letter-spacing:1px}.noo-search .search-submit:hover{background:var(--cj-blue-3)!important}
.headlinks{gap:8px!important;align-items:center}.headlinks .head-action,.head-account-trigger{color:var(--cj-blue)!important;border-radius:8px;padding:7px 9px}.headlinks .head-action:hover,.head-account-trigger:hover{background:#f5f2e9;color:var(--cj-blue)!important}.head-icon{color:var(--cj-blue)!important}.head-icon svg{stroke:currentColor!important}.head-label{font-size:10px!important;letter-spacing:.35px;font-weight:600}.wishlist-header-badge,.cart-header-badge{background:var(--cj-gold)!important;color:var(--cj-blue)!important}
.mainnav{background:var(--cj-blue)!important;border:0!important;min-height:54px;gap:0;box-shadow:inset 0 -1px rgba(255,255,255,.12)}
.mainnav>a,.navitem>a{color:#fff!important;font-weight:600;letter-spacing:1.25px;font-size:11px;padding:18px 17px!important;position:relative}.mainnav>a:hover,.navitem:hover>a{color:var(--cj-gold-light)!important;background:rgba(255,255,255,.05)}.mainnav .offer{color:var(--cj-gold-light)!important}
.mainnav>a:after,.navitem>a:after{content:"";position:absolute;left:16px;right:16px;bottom:8px;height:2px;background:var(--cj-gold);transform:scaleX(0);transition:transform .2s ease}.mainnav>a:hover:after,.mainnav>a:focus-visible:after,.navitem:hover>a:after,.navitem>a:focus-visible:after{transform:scaleX(1)}
.mega{top:100%;background:#fff!important;border-top:3px solid var(--cj-gold)!important;border-radius:0 0 16px 16px;box-shadow:0 22px 55px rgba(2,26,96,.18)!important;padding:30px max(28px,calc((100% - 1260px)/2))!important;gap:28px!important;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(220px,.9fr)!important}.mega>div:not(.megaPromo),.collection-menu-section{padding-right:22px;border-right:1px solid #ece8df}.mega h4{color:var(--cj-blue)!important;font-size:10px!important;letter-spacing:1.7px!important;margin-bottom:15px!important}.mega a{color:#475467!important;font-size:13px!important;padding:7px 0!important}.mega a:hover{color:var(--cj-blue)!important;transform:translateX(3px)}.megaThumb{width:36px!important;height:36px!important;object-fit:cover;border-radius:50%;vertical-align:middle;margin-right:8px;border:1px solid #ece3cf}.megaPromo{border-radius:12px!important;background:linear-gradient(145deg,var(--cj-blue),#0a2e86)!important;color:#fff!important;padding:22px!important;min-height:220px!important;box-shadow:0 12px 28px rgba(2,26,96,.18)}.megaPromo b{font-family:Georgia,serif;color:var(--cj-gold-light)!important;font-size:22px!important}.megaPromo span{color:#fff!important;opacity:.82}.megaPromo a{background:var(--cj-gold)!important;color:var(--cj-blue)!important;border-radius:4px;font-weight:800;letter-spacing:1px}
.pageHero,.hero{background-color:var(--cj-blue)!important}.eyebrow,.catalog-eyebrow,.search-eyebrow,.account-eyebrow,.orders-eyebrow,.store-eyebrow,.register-kicker,.login-kicker{color:var(--cj-gold)!important}.btn,.search-page-button,.catalog-pill.active,.search-product-button,.offer-view{background:var(--cj-blue)!important;border-color:var(--cj-blue)!important;color:#fff!important;border-radius:4px!important}.btn:hover,.search-page-button:hover,.search-product-button:hover,.offer-view:hover{background:var(--cj-blue-3)!important;transform:translateY(-1px);box-shadow:0 8px 20px rgba(2,26,96,.16)}.outline{background:#fff!important;color:var(--cj-blue)!important;border-color:var(--cj-blue)!important}
.catalog-page,.search-page,.account-page,.orders-page,.cart-page,.checkout-page{background:var(--cj-cream)}.catalog-heading h1,.search-results-heading h2{color:var(--cj-blue)!important}.catalog-toolbar,.selected-filter-row,.catalog-filters{border-color:var(--cj-border)!important}.catalog-pill{color:var(--cj-blue)!important;border-color:#d8dbe4!important;background:#fff!important}.catalog-pill.active{color:#fff!important}.filter-panel-title,.filter-section h3{color:var(--cj-blue)!important}.product,.product-card,.search-product-card,.offer-product-card{background:#fff!important;border:1px solid #F7F2E9!important;border-radius:10px!important;box-shadow:0 8px 26px rgba(2,26,96,.06)!important;overflow:hidden}.product:hover,.product-card:hover,.search-product-card:hover,.offer-product-card:hover{box-shadow:0 16px 38px rgba(2,26,96,.12)!important;transform:translateY(-3px)}.card-badge{background:var(--cj-blue)!important;color:var(--cj-gold-light)!important}
.noopura-footer,footer{background:var(--cj-blue)!important;color:#f7f4ec!important}.noopura-footer a,footer a{color:#d9deeb!important}.noopura-footer a:hover,footer a:hover{color:var(--cj-gold-light)!important}.noopura-footer h3,footer h3{color:var(--cj-gold-light)!important}.footer-trust-strip{background:#061f6c!important;border-color:rgba(208,172,86,.2)!important}.noopura-back-to-top{background:var(--cj-blue)!important;border-color:var(--cj-gold)!important;color:var(--cj-gold-light)!important}
@media(max-width:1100px){.headrow{gap:16px}.headlinks .head-label{display:none}.logo{max-width:180px}.logo-image{width:170px;max-height:72px}.noo-search{max-width:none}.mainnav>a,.navitem>a{padding-left:13px!important;padding-right:13px!important}}
@media(max-width:900px){.headrow{grid-template-columns:auto 1fr;align-items:center}.logo{grid-column:1}.noo-search{grid-column:1/-1;grid-row:2}.headlinks{grid-column:2;justify-content:flex-end}.logo-image{width:155px;max-height:66px}.mainnav{justify-content:flex-start!important;overflow-x:auto!important;overflow-y:visible!important}.mega{position:absolute!important;left:0!important;right:0!important;width:100%!important;max-height:calc(100vh - 150px);overflow-y:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:24px 20px!important;border-radius:0 0 12px 12px!important}.navitem:hover .mega{display:none}.navitem.mobile-open .mega{display:grid!important}}
@media(max-width:600px){.headrow{padding:10px 12px;grid-template-columns:auto 1fr;gap:10px}.logo-image-wrap{padding:5px 7px}.logo-image{width:132px;max-height:58px}.headlinks{gap:3px!important}.headlinks .head-action,.head-account-trigger{padding:6px!important}.noo-search{height:42px!important}.noo-search .search-submit{padding:0 13px!important;font-size:10px!important}.mega{grid-template-columns:1fr!important;padding:18px 16px!important}.mega>div:not(.megaPromo),.collection-menu-section{border-right:0;border-bottom:1px solid #F7F2E9;padding:0 0 13px;margin-bottom:5px}.megaPromo{display:none!important}.mainnav>a,.navitem>a{padding:15px 12px!important;font-size:10px!important}}

.checkout-result.checkout-error{border:1px solid #e3c76d;background:#fffaf0;color:#6e5a2f;padding:14px 16px;border-radius:8px;font-weight:600;line-height:1.55}

.home-price-original{font-size:12px;font-weight:500;text-decoration:line-through;opacity:.55;margin-left:8px;vertical-align:middle}


/* Noopura IMAGE QUALITY / PERFORMANCE V9
   New uploads are stored as a 1600px detail master plus a 700px lightweight catalogue image.
   Product cards intentionally contain the image so jewellery is never cropped. */
.featured-products-section .featured-product-image-wrap img,
.product img { object-fit: contain; background: #fff; }
.detail-image-zoom .detailimg { object-fit: contain !important; background: #fff; image-rendering: auto; }
.cart-item-image img, .checkout-order-image img, .wishlist-image-v2 { object-fit: contain; background: #fff; }

/* V18 - customer account security / responsive password recovery */
.login-forgot-link{margin-left:auto;color:#756454;text-decoration:none;font-size:11px;font-weight:800}.login-forgot-link:hover{text-decoration:underline;color:#3B2A1B}
.account-created-email-status{margin:18px auto 0;max-width:500px;padding:12px 14px;border:1px solid #dfe7dc;background:#f7fbf5;border-radius:6px;color:#2f6f45;font-size:12px;line-height:19px}.account-created-email-status strong,.account-created-email-status span{display:block}.account-created-email-status.is-info{background:#faf8f3;border-color:#e5d8bf;color:#725d32}
.account-auth-page{min-height:calc(100vh - var(--noopura-header-height,0px));display:flex;align-items:center;justify-content:center;padding:40px 20px 55px;background:linear-gradient(135deg,#F7F2E9 0%,#fff 52%,#F7F2E9 100%)}
.account-auth-shell{width:100%;max-width:1050px;display:grid;grid-template-columns:minmax(0,1fr) 500px;background:#fff;border:1px solid #e5e9f0;border-radius:14px;overflow:hidden;box-shadow:0 18px 55px rgba(67,47,31,.12)}
.account-auth-brand{padding:45px 48px;background:linear-gradient(145deg,#3B2A1B 0%,#3B2A1B 60%,#756454 100%);color:#fff;min-height:560px}.account-auth-brand-logo{display:block;width:210px;max-width:70%;margin-bottom:95px}.account-auth-brand-logo img{width:100%;height:auto;display:block}.account-auth-brand>span,.account-auth-kicker{display:block;font-size:10px;letter-spacing:2.5px;font-weight:800;color:#d0ac56}.account-auth-brand h1{font:normal 42px Georgia,serif;line-height:1.12;margin:12px 0 16px;color:#fff}.account-auth-brand p{max-width:410px;margin:0;color:#F7F2E9;font-size:14px;line-height:1.8}.account-auth-card{padding:52px 50px 45px}.account-auth-card h2{font:normal 34px Georgia,serif;color:#3B2A1B;margin:8px 0 10px}.account-auth-intro{font-size:13px;line-height:1.7;color:#766b63;margin:0 0 22px}.account-auth-field{margin-top:18px}.account-auth-field label{display:block;margin-bottom:7px;font-size:13px;font-weight:800;color:#3B2A1B}.account-auth-field label span{color:#b63228}.account-auth-field input{width:100%;height:49px;box-sizing:border-box;padding:12px 14px;border:1px solid #dfe4ec;border-radius:5px;background:#fff;color:#3B2A1B;font-size:15px;outline:none}.account-auth-field input:focus{border-color:#d0ac56;box-shadow:0 0 0 3px rgba(208,172,86,.13)}.account-auth-password-help{font-size:11.5px;line-height:1.6;color:#81766d;margin:10px 0 16px}.account-auth-submit{width:100%!important;min-height:50px!important;background:#3B2A1B!important;border-color:#3B2A1B!important;color:#fff!important;font-size:12px!important;font-weight:800!important;letter-spacing:1.3px!important;border-radius:5px!important}.account-auth-submit:hover{background:#756454!important}.account-auth-message{display:block;margin-top:12px;font-size:12px;line-height:19px}.account-auth-message.is-success{color:#2f7d4a;background:#f3fbf5;border:1px solid #b9ddc3;border-radius:5px;padding:11px 12px}.account-auth-message.is-error{color:#b63228;background:#fff8f7;border:1px solid #e2aaa4;border-radius:5px;padding:11px 12px}.account-auth-back{display:block;text-align:center;margin-top:20px;color:#8a7c72;text-decoration:none;font-size:12px}.account-auth-back:hover{color:#3B2A1B}
@media(max-width:850px){.account-auth-page{padding:25px 14px 40px;align-items:flex-start}.account-auth-shell{grid-template-columns:1fr;max-width:540px}.account-auth-brand{min-height:250px;padding:30px 30px 34px}.account-auth-brand-logo{width:170px;margin-bottom:45px}.account-auth-brand h1{font-size:34px}.account-auth-brand p{font-size:13px}.account-auth-card{padding:34px 30px 30px}}
@media(max-width:480px){.account-auth-page{padding:15px 10px 30px}.account-auth-brand{min-height:205px;padding:24px 22px 26px}.account-auth-brand-logo{width:145px;margin-bottom:30px}.account-auth-brand h1{font-size:29px}.account-auth-brand p{font-size:12.5px;line-height:1.65}.account-auth-card{padding:28px 21px 25px}.account-auth-card h2{font-size:30px}.login-forgot-link{font-size:10px}}

/* =========================================================
   Noopura DIFFERENCE - FINAL FOOTER LAYOUT
   Desktop: occupy the empty lower area of the main footer,
   starting on the same vertical alignment as SHOP JEWELLERY
   and extending across QUICK LINKS and STAY CONNECTED.
   ========================================================= */
@media (min-width: 901px) {
    footer.noopura-footer .footer-main {
        position: relative;
        /* Keep enough lower room for the Difference content. */
        padding-bottom: 188px;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: absolute;
        left: 32.4%;
        right: 0;
        top: 300px;
        width: auto;
        max-width: none;
        margin: 0;
        padding: 10px 0 0;
        box-sizing: border-box;
        border-top: 1px solid rgba(255,255,255,.13);
        z-index: 2;
    }

    /* The Difference begins at the same horizontal point as SHOP JEWELLERY. */
    footer.noopura-footer .footer-difference-wide {
        padding-left: 0;
        padding-right: 0;
    }

    footer.noopura-footer .footer-difference-heading {
        color: #D0AC56;
        font-size: 12.5px;
        line-height: 1.4;
        font-weight: 700;
        letter-spacing: 2.3px;
        margin: 0 0 10px;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        width: 100%;
    }

    footer.noopura-footer .footer-difference-item-wide {
        min-width: 0;
        display: flex;
        align-items: flex-start;
        gap: 9px;
        padding: 0 16px;
        box-sizing: border-box;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0;
    }

    footer.noopura-footer .footer-difference-item-wide + .footer-difference-item-wide {
        border-left: 1px solid rgba(255,255,255,.10);
    }

    footer.noopura-footer .footer-difference-mark-wide {
        flex: 0 0 auto;
        color: #D0AC56;
        font-size: 13px;
        line-height: 1.45;
        margin-top: 1px;
    }

    footer.noopura-footer .footer-difference-item-wide b {
        display: block;
        color: #F4E6BD;
        font-size: 12px;
        line-height: 1.45;
        letter-spacing: .15px;
        font-weight: 700;
        margin: 0 0 4px;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        display: block;
        color: #D3DBE8;
        font-size: 11px;
        line-height: 1.55;
        margin: 0;
    }
}

@media (max-width: 900px) {
    footer.noopura-footer .footer-main {
        padding-bottom: 35px;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static;
        width: 100%;
        max-width: none;
        margin-top: 20px;
        padding: 20px 0 0;
        border-top: 1px solid rgba(255,255,255,.10);
        box-sizing: border-box;
    }

    footer.noopura-footer .footer-difference-heading {
        color: #D0AC56;
        font-size: 12px;
        line-height: 1.4;
        letter-spacing: 2px;
        margin: 0 0 12px;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    footer.noopura-footer .footer-difference-item-wide {
        padding: 12px 14px;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0;
    }

    footer.noopura-footer .footer-difference-item-wide + .footer-difference-item-wide {
        border-left: 1px solid rgba(255,255,255,.10);
    }

    footer.noopura-footer .footer-difference-item-wide b {
        font-size: 11.5px;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        font-size: 10.5px;
        line-height: 1.5;
    }
}

@media (max-width: 450px) {
    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: 1fr;
    }

    footer.noopura-footer .footer-difference-item-wide,
    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding: 12px 0;
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        border-top: 0;
        padding-top: 0;
    }
}

/* =========================================================
   Noopura FOOTER - CLEAN RESPONSIVE FINAL LAYOUT
   - Removes the large unused space below The Noopura Difference.
   - Places the Difference section naturally in the footer grid,
     starting exactly at the Shop Jewellery column.
   - Keeps the bottom bar immediately below the content.
   ========================================================= */
@media (min-width: 1001px) {
    footer.noopura-footer .footer-main {
        position: relative;
        padding: 56px 34px 28px !important;
        grid-template-columns: minmax(280px,1.55fr) minmax(150px,.9fr) minmax(175px,1fr) minmax(300px,1.45fr) !important;
        column-gap: 48px;
        row-gap: 22px;
        align-items: start;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        grid-column: 2 / -1;
        grid-row: 2;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 12px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13);
        box-sizing: border-box;
        z-index: 1;
    }

    footer.noopura-footer .footer-difference-heading {
        font-size: 13px;
        line-height: 1.35;
        letter-spacing: 2.4px;
        margin: 0 0 11px;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        display: grid;
        grid-template-columns: repeat(4, minmax(0,1fr));
        width: 100%;
    }

    footer.noopura-footer .footer-difference-item-wide {
        min-width: 0;
        padding: 0 16px;
        display: flex;
        align-items: flex-start;
        gap: 9px;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0;
    }

    footer.noopura-footer .footer-difference-item-wide + .footer-difference-item-wide {
        border-left: 1px solid rgba(255,255,255,.10);
    }

    footer.noopura-footer .footer-difference-mark-wide {
        font-size: 13px;
        line-height: 1.45;
        flex: 0 0 auto;
        margin-top: 1px;
    }

    footer.noopura-footer .footer-difference-item-wide b {
        font-size: 12.5px;
        line-height: 1.4;
        margin-bottom: 5px;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        font-size: 11.5px;
        line-height: 1.55;
    }
}

@media (min-width: 701px) and (max-width: 1000px) {
    footer.noopura-footer .footer-main {
        position: relative;
        padding: 48px 26px 28px !important;
        grid-template-columns: minmax(240px,1.35fr) minmax(145px,1fr) minmax(165px,1fr) !important;
        column-gap: 30px;
        row-gap: 24px;
    }

    footer.noopura-footer .footer-social-column {
        grid-column: 1 / -1;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        grid-column: 2 / -1;
        grid-row: 3;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 12px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13);
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    footer.noopura-footer .footer-difference-item-wide {
        padding: 10px 14px;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0;
    }

    footer.noopura-footer .footer-difference-item-wide b {
        font-size: 12px;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        font-size: 11px;
    }
}

@media (max-width: 700px) {
    footer.noopura-footer .footer-main {
        position: static;
        padding: 40px 22px 26px !important;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        margin: 4px 0 0 !important;
        padding: 18px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13);
        box-sizing: border-box;
    }

    footer.noopura-footer .footer-difference-heading {
        font-size: 12.5px;
        letter-spacing: 2px;
        margin-bottom: 12px;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    footer.noopura-footer .footer-difference-item-wide {
        padding: 11px 12px;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0;
    }

    footer.noopura-footer .footer-difference-item-wide b {
        font-size: 12px;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        font-size: 11px;
        line-height: 1.55;
    }
}

@media (max-width: 450px) {
    footer.noopura-footer .footer-main {
        padding: 34px 20px 24px !important;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        margin-top: 2px !important;
        padding-top: 16px !important;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: 1fr;
    }

    footer.noopura-footer .footer-difference-item-wide,
    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding: 12px 0;
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        border-top: 0;
        padding-top: 0;
    }
}


/* =========================================================
   Noopura FOOTER V8 - APPROVED COMPACT RESPONSIVE LAYOUT
   The Difference section is full-width below the four main columns.
   It stays in normal document flow so there is no unused blank area.
   ========================================================= */
@media (min-width: 1001px) {
    footer.noopura-footer .footer-main {
        position: relative !important;
        width: 100% !important;
        max-width: 1320px !important;
        margin: 0 auto !important;
        padding: 32px 26px 14px !important;
        display: grid !important;
        grid-template-columns: minmax(280px,1.55fr) minmax(150px,.9fr) minmax(175px,1fr) minmax(300px,1.45fr) !important;
        column-gap: 44px !important;
        row-gap: 10px !important;
        align-items: start !important;
        box-sizing: border-box !important;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        grid-column: 1 / -1 !important;
        grid-row: auto !important;
        width: 100% !important;
        max-width: none !important;
        margin: 4px 0 0 !important;
        padding: 14px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13) !important;
        box-sizing: border-box !important;
    }

    footer.noopura-footer .footer-difference-heading {
        font-size: 13px !important;
        line-height: 1.35 !important;
        letter-spacing: 2.2px !important;
        margin: 0 0 10px !important;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0,1fr)) !important;
        width: 100% !important;
    }

    footer.noopura-footer .footer-difference-item-wide {
        min-width: 0 !important;
        padding: 0 18px !important;
        display: flex !important;
        align-items: flex-start !important;
        gap: 9px !important;
        box-sizing: border-box !important;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding-left: 0 !important;
    }

    footer.noopura-footer .footer-difference-item-wide + .footer-difference-item-wide {
        border-left: 1px solid rgba(255,255,255,.10) !important;
    }

    footer.noopura-footer .footer-difference-mark-wide {
        font-size: 13px !important;
        line-height: 1.45 !important;
        flex: 0 0 auto !important;
        margin-top: 1px !important;
    }

    footer.noopura-footer .footer-difference-item-wide b {
        display: block !important;
        font-size: 12.5px !important;
        line-height: 1.4 !important;
        margin: 0 0 4px !important;
    }

    footer.noopura-footer .footer-difference-item-wide small {
        display: block !important;
        font-size: 11.25px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }

    footer.noopura-footer .footer-bottom {
        margin-top: 0 !important;
    }
}

@media (min-width: 701px) and (max-width: 1000px) {
    footer.noopura-footer .footer-main {
        position: relative !important;
        padding: 38px 24px 18px !important;
        grid-template-columns: minmax(240px,1.35fr) minmax(145px,1fr) minmax(165px,1fr) !important;
        column-gap: 28px !important;
        row-gap: 18px !important;
    }

    footer.noopura-footer .footer-social-column {
        grid-column: 1 / -1 !important;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        grid-column: 1 / -1 !important;
        grid-row: auto !important;
        margin: 2px 0 0 !important;
        padding: 14px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13) !important;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }
}

@media (max-width: 700px) {
    footer.noopura-footer .footer-main {
        position: static !important;
        padding: 34px 20px 18px !important;
        grid-template-columns: 1fr 1fr !important;
        column-gap: 22px !important;
        row-gap: 24px !important;
    }

    footer.noopura-footer .footer-brand,
    footer.noopura-footer .footer-social-column {
        grid-column: 1 / -1 !important;
    }

    footer.noopura-footer .footer-main > .footer-difference-wide {
        position: static !important;
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 16px 0 0 !important;
        border-top: 1px solid rgba(255,255,255,.13) !important;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }

    footer.noopura-footer .footer-difference-item-wide {
        padding: 10px 10px !important;
    }
}

@media (max-width: 450px) {
    footer.noopura-footer .footer-main {
        padding: 30px 18px 16px !important;
        grid-template-columns: 1fr !important;
        row-gap: 22px !important;
    }

    footer.noopura-footer .footer-brand,
    footer.noopura-footer .footer-social-column,
    footer.noopura-footer .footer-main > .footer-difference-wide {
        grid-column: 1 / -1 !important;
    }

    footer.noopura-footer .footer-difference-grid-wide {
        grid-template-columns: 1fr !important;
    }

    footer.noopura-footer .footer-difference-item-wide,
    footer.noopura-footer .footer-difference-item-wide:first-child {
        padding: 11px 0 !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(255,255,255,.08) !important;
    }

    footer.noopura-footer .footer-difference-item-wide:first-child {
        border-top: 0 !important;
        padding-top: 0 !important;
    }
}


/* =========================================================
   Noopura PRODUCT TRUST STRIP - READABILITY
   ========================================================= */
.detail-trust-v41 strong{
    font-size:12px !important;
    letter-spacing:1.35px !important;
    line-height:1.35 !important;
}
.detail-trust-v41 small{
    font-size:13px !important;
    line-height:1.45 !important;
}
@media(max-width:850px){
    .detail-trust-v41 strong{font-size:11.5px !important}
    .detail-trust-v41 small{font-size:12.5px !important}
}
@media(max-width:430px){
    .detail-trust-v41 strong{font-size:11px !important}
    .detail-trust-v41 small{font-size:12px !important}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: BRAND V2
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* =========================================================
   Noopura JEWELERS — BRAND CONSISTENCY V2
   Visual-only layer. Existing ASP.NET/WebForms functionality,
   controls, IDs, URLs and backend code are intentionally untouched.
   ========================================================= */
:root{
  --cj-blue:#3B2A1B;
  --cj-blue-2:#6B4A2D;
  --cj-blue-3:#8B6A42;
  --cj-blue-soft:#EEF2FA;
  --cj-gold:#D0AC56;
  --cj-gold-light:#F2D88F;
  --cj-ink:#3B2A1B;
  --cj-muted:#667085;
  --cj-paper:#FBFCFE;
  --cj-line:#DCE2EC;
  --cj-panel:#FBF8F2;
}

html,body{background:var(--cj-paper)!important;color:var(--cj-ink)!important;}
body{font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;}
body a{color:var(--cj-blue);}

/* ---------- Header / logo ---------- */
.site-header-fixed{background:#fff!important;box-shadow:0 8px 28px rgba(2,26,96,.12)!important;}
.top-info-bar{background:var(--cj-blue)!important;border-bottom:1px solid rgba(242,216,143,.35)!important;}
.top-info-bar .top-link,.top-info-bar .rate-value{color:#fff!important;}
.top-info-bar .top-icon,.top-info-bar .rate-label,.top-info-bar .rate-updated-item .rate-value{color:var(--cj-gold-light)!important;}
.top-info-bar .top-separator{color:rgba(242,216,143,.75)!important;}
.top-info-bar .rate-item + .rate-item:before{background:rgba(255,255,255,.20)!important;}

.site-header-fixed > header{background:#fff!important;}
.site-header-fixed > header > .headrow{max-width:1360px!important;padding:9px 24px!important;gap:24px!important;min-height:86px!important;}
.logo{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 190px!important;max-width:190px!important;height:82px!important;text-decoration:none!important;overflow:visible!important;}
.logo-image-wrap{width:190px!important;height:82px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:2px 6px!important;background:var(--cj-blue)!important;border:1px solid rgba(208,172,86,.55)!important;border-radius:10px!important;box-shadow:0 6px 18px rgba(2,26,96,.14)!important;overflow:hidden!important;}
.logo-image{width:auto!important;height:78px!important;max-width:100%!important;max-height:78px!important;display:block!important;object-fit:contain!important;position:static!important;left:auto!important;top:auto!important;}

.noo-search{height:46px!important;max-width:660px!important;min-width:0!important;flex:1 1 500px!important;border:1px solid #D9DFEA!important;border-radius:5px!important;background:#fff!important;box-shadow:0 5px 18px rgba(2,26,96,.06)!important;}
.noo-search input[type=text]{color:var(--cj-ink)!important;background:#fff!important;border:0!important;}
.noo-search input[type=text]::placeholder{color:#8A94A6!important;}
.noo-search .search-submit{background:var(--cj-blue)!important;color:#fff!important;border:0!important;}
.noo-search .search-submit:hover{background:var(--cj-blue-3)!important;}
.noo-search-suggestions,.noo-search .noo-search-suggestions{border-color:var(--cj-line)!important;box-shadow:0 18px 40px rgba(2,26,96,.14)!important;}

.headlinks .head-action,.head-account-trigger{color:var(--cj-blue)!important;}
.headlinks .head-action:hover,.head-account-trigger:hover,.head-account-trigger:focus-visible{background:var(--cj-blue-soft)!important;color:var(--cj-blue)!important;}
.head-icon,.head-icon svg{color:var(--cj-blue)!important;stroke:currentColor!important;}
.head-wishlist-action .head-icon > svg,.head-cart-action .head-icon > svg{stroke:var(--cj-blue)!important;}
.head-label{color:var(--cj-blue)!important;}
.wishlist-header-badge,.cart-header-badge{background:var(--cj-gold)!important;color:var(--cj-blue)!important;}
.head-cart-action .cart-header-badge-icon{background:var(--cj-gold)!important;color:var(--cj-blue)!important;}

/* ---------- Main navigation: never allow black/brown text ---------- */
.site-header-fixed .mainnav{background:var(--cj-blue)!important;border:0!important;min-height:52px!important;box-shadow:inset 0 -1px rgba(255,255,255,.16)!important;}
.site-header-fixed .mainnav>a,
.site-header-fixed .mainnav>.navitem>a,
.site-header-fixed .mainnav>a.offer{color:#fff!important;background:transparent!important;font-weight:700!important;}
.site-header-fixed .mainnav>a:hover,
.site-header-fixed .mainnav>.navitem>a:hover,
.site-header-fixed .mainnav>a:focus-visible,
.site-header-fixed .mainnav>.navitem>a:focus-visible,
.site-header-fixed .mainnav>.navitem:hover>a,
.site-header-fixed .mainnav>.navitem.mobile-open>a{color:var(--cj-gold-light)!important;background:rgba(255,255,255,.08)!important;}
.site-header-fixed .mainnav>a.nav-active,
.site-header-fixed .mainnav>.navitem>a.nav-active{color:var(--cj-blue)!important;background:#fff!important;}
.site-header-fixed .mainnav>a.nav-active:after,
.site-header-fixed .mainnav>.navitem>a.nav-active:after{background:var(--cj-gold)!important;transform:scaleX(1)!important;}
.site-header-fixed .mainnav .offer{color:var(--cj-gold-light)!important;}

/* ---------- Mega menu ---------- */
.site-header-fixed .mega{background:#fff!important;border-top:3px solid var(--cj-gold)!important;box-shadow:0 24px 55px rgba(2,26,96,.18)!important;color:var(--cj-ink)!important;}
.site-header-fixed .mega>div:not(.megaPromo),
.site-header-fixed .collection-menu-section{border-color:#E5E9F1!important;}
.site-header-fixed .mega h4{color:var(--cj-blue)!important;}
.site-header-fixed .mega a{color:#756454!important;}
.site-header-fixed .mega a:hover{color:var(--cj-blue)!important;background:var(--cj-blue-soft)!important;}
.site-header-fixed .megaThumb{border-color:#D7DDEA!important;background:#FBF8F2!important;}
.site-header-fixed .megaPromo{background:linear-gradient(145deg,var(--cj-blue),var(--cj-blue-3))!important;color:#fff!important;}
.site-header-fixed .megaPromo b{color:var(--cj-gold-light)!important;}
.site-header-fixed .megaPromo span{color:#fff!important;}
.site-header-fixed .megaPromo a{background:var(--cj-gold)!important;color:var(--cj-blue)!important;}

/* ---------- Hero / video: cool blue brand treatment ---------- */
.hero.hero-cinematic{height:clamp(520px,calc(100svh - var(--noopura-header-height, 160px)),760px)!important;min-height:520px!important;max-height:760px!important;background:var(--cj-blue)!important;}
.hero-video-frame{background:var(--cj-blue)!important;}
.hero-video-single{filter:saturate(.78) hue-rotate(4deg) contrast(1.03)!important;}
.hero-cinematic-shade{background:
  linear-gradient(90deg,rgba(2,26,96,.76) 0%,rgba(2,26,96,.42) 38%,rgba(2,26,96,.12) 72%,rgba(2,26,96,.02) 100%),
  linear-gradient(180deg,rgba(2,26,96,.08) 0%,transparent 52%,rgba(2,26,96,.34) 100%)!important;}
.hero-cinematic-copy .eyebrow{color:var(--cj-gold-light)!important;}
.hero-cinematic-actions .btn{background:var(--cj-gold)!important;border-color:var(--cj-gold)!important;color:var(--cj-blue)!important;box-shadow:0 8px 22px rgba(2,26,96,.22)!important;}
.hero-cinematic-actions .btn:hover{background:var(--cj-gold-light)!important;color:var(--cj-blue)!important;}
.hero-cinematic-actions .hero-secondary{background:rgba(2,26,96,.24)!important;border-color:rgba(255,255,255,.72)!important;color:#fff!important;}
.hero-scroll-cue{color:rgba(255,255,255,.86)!important;}
.hero-scroll-cue i{background:linear-gradient(to bottom,rgba(242,216,143,.08),var(--cj-gold-light),rgba(242,216,143,.08))!important;}

/* All large image-led campaign areas get a restrained blue wash.
   Product photography itself stays natural so gold/diamond colour remains accurate. */
.hero:not(.hero-cinematic),.pageHero,.banner,.subPageHero{background-color:var(--cj-blue)!important;}
.hero:not(.hero-cinematic):after,.subPageHero:before{background:linear-gradient(90deg,rgba(2,26,96,.72),rgba(2,26,96,.28) 62%,rgba(2,26,96,.08))!important;}
.banner{position:relative;overflow:hidden;}
.banner:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(2,26,96,.62),rgba(2,26,96,.20));pointer-events:none;}
.banner>div{position:relative;z-index:1;}
.banner .eyebrow,.pageHero .eyebrow{color:var(--cj-gold-light)!important;}

/* Editorial campaign panels: blue overlay rather than brown grading. */
.editorial-panel-shade{background:linear-gradient(180deg,rgba(2,26,96,.02),rgba(2,26,96,.72))!important;}
.editorial-panel img{filter:saturate(.82) contrast(1.02)!important;}
.editorial-panel-copy h2,.editorial-panel-kicker,.editorial-panel-cta{color:#fff!important;}
.editorial-panel-kicker{color:var(--cj-gold-light)!important;}
.editorial-panel-cta b{color:var(--cj-gold-light)!important;}

/* Category imagery: keep jewellery natural, but cool the overlay. */
.cat:before{background:linear-gradient(180deg,rgba(2,26,96,.04),rgba(2,26,96,.72))!important;}
.cat:after{background:linear-gradient(transparent,rgba(2,26,96,.74))!important;}

/* ---------- General customer pages ---------- */
.section>h2,.banner h2,.rate h2,.pagehead h1,.catalog-heading h1,.search-results-heading h2{color:var(--cj-blue)!important;}
.pagehead{background:linear-gradient(90deg,#F7F2E9,#FBFCFE,#F7F2E9)!important;border-color:#DDE4EF!important;color:var(--cj-ink)!important;}
.pageHero + .pagehead{background:#fff!important;}
.eyebrow,.catalog-eyebrow,.search-eyebrow,.account-eyebrow,.orders-eyebrow,.store-eyebrow,.register-kicker,.login-kicker{color:var(--cj-gold)!important;}
.btn,.search-page-button,.search-product-button,.offer-view{background:var(--cj-blue)!important;border-color:var(--cj-blue)!important;color:#fff!important;}
.btn:hover,.search-page-button:hover,.search-product-button:hover,.offer-view:hover{background:var(--cj-blue-3)!important;border-color:var(--cj-blue-3)!important;}
.outline{background:#fff!important;color:var(--cj-blue)!important;border-color:var(--cj-blue)!important;}
.link,.account a,.cartrow a,.detailinfo a{color:var(--cj-blue)!important;}

/* ---------- Catalogue / filters ---------- */
.catalog-page,.search-page,.account-page,.orders-page,.cart-page,.checkout-page{background:var(--cj-paper)!important;color:var(--cj-ink)!important;}
.catalog-toolbar{background:#fff!important;border-color:var(--cj-line)!important;}
.catalog-pill{color:var(--cj-blue)!important;border-color:#CCD5E4!important;background:#fff!important;}
.catalog-pill.active{background:var(--cj-blue)!important;border-color:var(--cj-blue)!important;color:#fff!important;}
.selected-filter-row{border-color:var(--cj-line)!important;}
.selected-filter-title,.filter-section h3,.filter-panel-title{color:var(--cj-blue)!important;}
.filter-chip{border-color:#D3DAE6!important;color:#4B5B73!important;background:#fff!important;}
.catalog-layout{background:transparent!important;}
.catalog-filters{border-color:#D9E0EB!important;background:#fff!important;box-shadow:0 8px 28px rgba(2,26,96,.05)!important;}
.filter-panel-title,.filters-mobile-head{background:var(--cj-blue)!important;color:#fff!important;}
.filter-search-input{border-color:#CFD7E5!important;color:var(--cj-ink)!important;}
.filter-search-input:focus{border-color:var(--cj-blue)!important;box-shadow:0 0 0 3px rgba(2,26,96,.08)!important;}
.filter-checklist input{accent-color:var(--cj-blue)!important;}
.filter-checklist label{color:#5E6B80!important;}
.filter-actions{background:#fff!important;border-color:var(--cj-line)!important;}
.catalog-apply-button{background:var(--cj-blue)!important;border-color:var(--cj-blue)!important;color:#fff!important;}
.catalog-clear-button{border-color:#CBD4E2!important;color:var(--cj-blue)!important;}
.mobile-filter-button{border-color:#CBD4E2!important;color:var(--cj-blue)!important;background:#fff!important;}
.catalog-card{border-color:#E1E6EE!important;box-shadow:0 6px 22px rgba(2,26,96,.04)!important;}
.catalog-card:hover{box-shadow:0 14px 32px rgba(2,26,96,.11)!important;}
.catalog-card-image-wrap{background:#F7F9FC!important;}
.catalog-card-name{color:var(--cj-blue)!important;}
.catalog-card-meta{color:#778399!important;}
.catalog-card-price,.catalog-price-current{color:var(--cj-blue)!important;}
.catalog-card-actions{border-color:#E5E9F0!important;}
.catalog-card-actions a,.card-add-cart{color:var(--cj-blue)!important;}
.card-badge{background:var(--cj-blue)!important;color:var(--cj-gold-light)!important;}
.catalog-filter-progress{border-color:#D8E0EC!important;background:#fff!important;color:var(--cj-blue)!important;}
.catalog-filter-progress-spinner{border-color:#D6DEEA!important;border-top-color:var(--cj-gold)!important;}
.filter-overlay{background:rgba(2,26,96,.36)!important;}

/* ---------- Search / offers ---------- */
.search-page{color:var(--cj-ink)!important;}
.search-hero h1,.search-product-name,.search-empty h3,.popular-searches h2{color:var(--cj-blue)!important;}
.search-product-card,.offer-product-card{background:#fff!important;border-color:#E2E7EF!important;box-shadow:0 8px 25px rgba(2,26,96,.05)!important;}
.search-product-card:hover,.offer-product-card:hover{box-shadow:0 15px 35px rgba(2,26,96,.10)!important;}
.offer-products-intro h2,.offer-product-name{color:var(--cj-blue)!important;}
.offer-product-badge{background:var(--cj-blue-soft)!important;color:var(--cj-blue)!important;}
.offer-saving{color:var(--cj-blue)!important;}
.offer-view{background:var(--cj-blue)!important;color:#fff!important;}
.offergrid>div{background:linear-gradient(145deg,#EEF2F9,#DDE5F3)!important;border:1px solid #D6DEEA!important;}

/* ---------- Product details / pricing panels ---------- */
.product-detail-v41{color:var(--cj-ink)!important;}
.detailinfo h1,.detailinfo h2{color:var(--cj-blue)!important;}
.detailinfo h2{color:var(--cj-blue)!important;}
.stars{color:var(--cj-gold)!important;}
.detail-offer-label-v41{background:var(--cj-blue-soft)!important;color:var(--cj-blue)!important;}
.detail-offer-box-v54{background:#fff!important;border-color:#D8E0EC!important;}
.detail-offer-price-v54,.detail-final-price-v89 h2,.product-gst-main-v88 strong,.metal-grand-total-v92 strong{color:var(--cj-blue)!important;}
.detail-final-price-v89 .detail-final-currency-v89,.detail-offer-price-hint-v54,.product-gst-label-v88,.information-eyebrow-v88,.metal-grand-total-v92 span{color:var(--cj-gold)!important;}
.product-gst-panel-v88,.information-card-v88,.live-viewers-v88{background:#fff!important;border-color:#DCE3ED!important;box-shadow:0 10px 30px rgba(2,26,96,.06)!important;}
.information-card-head-v88{background:linear-gradient(135deg,#FBF8F2,#fff)!important;border-color:#E1E6EE!important;}
.information-card-head-v88 h2,.information-number-v88{color:var(--cj-blue)!important;}
.info-item-v88{background:#F8FAFD!important;border-color:#E2E7EF!important;}
.metal-table-v88,.metal-table-v92{border-color:#DEE4EC!important;}
.metal-table-v88 th{background:#F1F4F9!important;color:var(--cj-blue)!important;}
.metal-table-v88 td,.metal-pricing-table-v92 td{color:#334155!important;background:#fff!important;}
.metal-grand-total-v92{background:linear-gradient(135deg,#FBF8F2,#F7F2E9)!important;border-color:#D7DFEA!important;}

/* ---------- Login / register ---------- */
.login-page,.register-page{background:linear-gradient(135deg,#EEF2F9 0%,#FBFCFE 55%,#E9EFF8 100%)!important;}
.login-brand-panel,.register-brand-panel{background:linear-gradient(145deg,var(--cj-blue),#8B6A42)!important;}
.login-brand img,.register-brand img{filter:none!important;}
.login-card,.register-card{background:#fff!important;}
.login-card-head h2,.register-card-head h2{color:var(--cj-blue)!important;}
.login-field>label,.register-field>label{color:#31415D!important;}
.login-submit,.register-submit{background:var(--cj-blue)!important;border-color:var(--cj-blue)!important;}
.login-submit:hover,.register-submit:hover{background:var(--cj-blue-3)!important;border-color:var(--cj-blue-3)!important;}
.login-register-btn,.google-login-btn,.google-register-btn{border-color:#D3DAE5!important;color:var(--cj-blue)!important;}
.login-register-btn:hover,.google-login-btn:hover,.google-register-btn:hover{background:#FBF8F2!important;border-color:#BFC9DA!important;}
.login-register a,.register-login-link a{color:var(--cj-blue)!important;}

/* ---------- Cart / checkout / forms ---------- */
.cartrow{border-color:#DDE3EC!important;}
.grand{color:var(--cj-blue)!important;}
.formbox{background:#fff!important;border:1px solid #E0E6EF!important;box-shadow:0 10px 30px rgba(2,26,96,.05)!important;}
.formbox input,.formbox textarea,.formbox select{border-color:#D2D9E5!important;color:var(--cj-ink)!important;background:#fff!important;}
.formbox input:focus,.formbox textarea:focus,.formbox select:focus{border-color:var(--cj-blue)!important;box-shadow:0 0 0 3px rgba(2,26,96,.08)!important;}
.message{color:var(--cj-blue)!important;}

/* ---------- Footer ---------- */
.noopura-footer,footer{background:linear-gradient(135deg,#02154F 0%,#3B2A1B 52%,#062574 100%)!important;color:#FBF8F2!important;}
.noopura-footer:before{background:linear-gradient(90deg,transparent,var(--cj-gold),var(--cj-gold-light),var(--cj-gold),transparent)!important;}
.footer-logo-link{background:var(--cj-blue)!important;border-color:rgba(242,216,143,.55)!important;}
.footer-logo-image{width:190px!important;max-width:100%!important;height:auto!important;}
.footer-tagline,.footer-social-column p{color:#C9D2E3!important;}
.footer-contact-list a,.footer-column a,.noopura-footer a,footer a{color:#D9E1EF!important;}
.footer-contact-list a:hover,.footer-column a:hover,.noopura-footer a:hover,footer a:hover{color:var(--cj-gold-light)!important;}
.footer-column h4,.footer-social-column h4,.noopura-footer h3,footer h3{color:var(--cj-gold-light)!important;}
.footer-contact-icon{color:var(--cj-gold)!important;}
.footer-socials a{border-color:rgba(242,216,143,.45)!important;color:var(--cj-gold-light)!important;background:rgba(255,255,255,.04)!important;}
.footer-socials a:hover{background:var(--cj-gold)!important;color:var(--cj-blue)!important;border-color:var(--cj-gold-light)!important;}
.footer-newsletter-row{border-color:rgba(242,216,143,.38)!important;background:rgba(255,255,255,.04)!important;}
.footer-newsletter-row button{background:var(--cj-gold)!important;color:var(--cj-blue)!important;}
.footer-bottom{border-color:rgba(255,255,255,.14)!important;color:#AEB9CD!important;}

/* ---------- Floating controls ---------- */
.noopura-back-to-top{background:var(--cj-blue)!important;border-color:var(--cj-gold)!important;color:var(--cj-gold-light)!important;}

/* ---------- Remove brown legacy backgrounds from generic utility classes ---------- */
body .topbar,body .admincards div,body .rate,body .formbox,body .pagehead{color:var(--cj-ink);}
.rate{background:linear-gradient(135deg,#F7F2E9,#F8FAFD)!important;border-top:1px solid #DCE3ED!important;border-bottom:1px solid #DCE3ED!important;}
.rates b{color:var(--cj-blue)!important;}

/* ---------- Responsive stability ---------- */
img{max-width:100%;}
html,body{overflow-x:hidden!important;}
@media(max-width:1100px){
  .site-header-fixed > header > .headrow{padding:8px 18px!important;gap:14px!important;}
  .logo{flex-basis:165px!important;max-width:165px!important;}
  .logo-image-wrap{width:165px!important;height:78px!important;}
  .logo-image{height:74px!important;max-height:74px!important;}
}
@media(max-width:900px){
  .site-header-fixed > header > .headrow{min-height:132px!important;grid-template-columns:auto 1fr!important;grid-template-rows:76px 46px!important;align-items:center!important;}
  .logo{grid-column:1!important;width:155px!important;max-width:155px!important;height:74px!important;}
  .logo-image-wrap{width:155px!important;height:74px!important;}
  .logo-image{height:70px!important;max-height:70px!important;}
  .headlinks{grid-column:2!important;justify-content:flex-end!important;min-width:0!important;}
  .noo-search{grid-column:1/-1!important;grid-row:2!important;width:100%!important;max-width:none!important;}
  .hero.hero-cinematic{height:clamp(500px,calc(100svh - var(--noopura-header-height, 150px)),680px)!important;min-height:500px!important;}
}
@media(max-width:600px){
  .site-header-fixed > header > .headrow{min-height:124px!important;grid-template-rows:70px 44px!important;padding:7px 10px!important;gap:5px 8px!important;}
  .logo{width:140px!important;max-width:140px!important;height:68px!important;}
  .logo-image-wrap{width:140px!important;height:68px!important;border-radius:8px!important;}
  .logo-image{height:64px!important;max-height:64px!important;}
  .headlinks{gap:2px!important;}
  .headlinks .head-action,.head-account-trigger{padding:5px!important;min-width:22px!important;}
  .head-icon,.head-icon svg{width:21px!important;height:21px!important;}
  .head-label{display:none!important;}
  .noo-search{height:42px!important;}
  .noo-search .search-submit{height:42px!important;padding:0 12px!important;font-size:10px!important;}
  .hero.hero-cinematic{height:calc(100svh - var(--noopura-header-height, 130px))!important;min-height:500px!important;}
  .hero-cinematic-copy{bottom:72px!important;}
  .footer-main{padding-left:18px!important;padding-right:18px!important;}
}
@media(max-width:380px){
  .logo{width:128px!important;max-width:128px!important;}
  .logo-image-wrap{width:128px!important;height:64px!important;}
  .logo-image{height:60px!important;max-height:60px!important;}
  .headlinks .head-action,.head-account-trigger{padding:4px!important;}
  .head-icon,.head-icon svg{width:19px!important;height:19px!important;}
}

/* =========================================================
   Noopura JEWELERS — V3 GLOBAL LAYOUT / VISIBILITY FIX
   Visual/layout only. Backend, controls and navigation URLs untouched.
   1) Use sticky chrome instead of fixed overlay so page content can never
      disappear underneath the header/navigation.
   2) Give the cinematic hero a stable premium height.
   3) Enlarge the supplied transparent logo without distorting it.
   4) Keep pageHero/subheaders below the complete site chrome.
   ========================================================= */

/* Header participates in normal document flow; it still remains visible while scrolling. */
html, body { overflow-x:hidden !important; }
body { padding-top:0 !important; background:var(--cj-paper) !important; }
.site-header-fixed {
    position:sticky !important;
    top:0 !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    z-index:50000 !important;
}
.site-header-fixed > header,
.site-header-fixed > header > .headrow,
.site-header-fixed .mainnav { position:relative !important; }
.site-header-fixed > header { z-index:50002 !important; }
.site-header-fixed .mainnav { z-index:50003 !important; }

/* Logo: use the supplied transparent artwork at a larger, crisp size. */
.site-header-fixed .logo { width:220px !important; max-width:220px !important; flex:0 0 220px !important; }
.site-header-fixed .logo-image-wrap {
    width:220px !important;
    height:94px !important;
    padding:5px 8px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
}
.site-header-fixed .logo-image {
    width:214px !important;
    height:84px !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:contain !important;
    display:block !important;
}

/* Cinematic homepage hero: larger and stable; video fills the campaign frame. */
.hero.hero-cinematic {
    height:620px !important;
    min-height:620px !important;
    max-height:none !important;
    margin:0 !important;
}
.hero-video-frame,
.hero-video-single { width:100% !important; height:100% !important; }
.hero-video-single { object-fit:cover !important; object-position:center center !important; }
.hero-cinematic-shade {
    background:
      linear-gradient(90deg, rgba(2,26,96,.58) 0%, rgba(2,26,96,.27) 45%, rgba(2,26,96,.08) 100%),
      linear-gradient(180deg, rgba(2,26,96,.06) 0%, rgba(2,26,96,.12) 52%, rgba(2,26,96,.42) 100%) !important;
}

/* All internal page hero/subheaders begin after the complete sticky header. */
.pageHero,
.pageHero.subPageHero,
.pagehead { position:relative !important; z-index:1 !important; }
.pageHero { margin-top:0 !important; }

/* Offers and other catalogue headings must remain visible and never sit beneath nav. */
.offersHero,
.pageHero.offersHero { min-height:280px !important; height:280px !important; }

/* Login/register: allow the complete form to flow below the header rather than
   clipping it inside a viewport-height box. */
.login-page {
    height:auto !important;
    min-height:calc(100vh - 160px) !important;
    overflow:visible !important;
    align-items:flex-start !important;
    padding:38px 24px 60px !important;
}
.login-shell {
    height:auto !important;
    min-height:560px !important;
    max-height:none !important;
}
.login-card { overflow:visible !important; }

/* Remove legacy brown/tan visual remnants from common customer-facing components. */
.catalog-page,.search-page,.account-page,.orders-page,.cart-page,.checkout-page,
.wishlist-page-v2,.account-created-page { background:var(--cj-paper) !important; }
.filter-panel,.catalog-filters,.catalog-toolbar,.selected-filter-row,
.filter-section,.mobile-filter-drawer { background:#fff !important; border-color:var(--cj-line) !important; }
.filter-panel-title,.filter-section h3,.catalog-heading h1,.catalog-eyebrow { color:var(--cj-blue) !important; }
.catalog-pill,.mobile-filter-button,.catalog-clear-button { color:var(--cj-blue) !important; border-color:var(--cj-line) !important; background:#fff !important; }
.catalog-pill.active,.catalog-apply-button,.filter-apply-button { background:var(--cj-blue) !important; border-color:var(--cj-blue) !important; color:#fff !important; }

/* Responsive logo/header/hero sizing. */
@media (max-width:1100px) {
    .site-header-fixed .logo { width:195px !important; max-width:195px !important; flex-basis:195px !important; }
    .site-header-fixed .logo-image-wrap { width:195px !important; height:88px !important; }
    .site-header-fixed .logo-image { width:189px !important; height:79px !important; }
    .hero.hero-cinematic { height:570px !important; min-height:570px !important; }
}
@media (max-width:900px) {
    .site-header-fixed .logo { width:180px !important; max-width:180px !important; flex-basis:180px !important; }
    .site-header-fixed .logo-image-wrap { width:180px !important; height:82px !important; }
    .site-header-fixed .logo-image { width:174px !important; height:73px !important; }
    .hero.hero-cinematic { height:540px !important; min-height:540px !important; }
    .login-page { padding:28px 16px 45px !important; }
    .login-shell { min-height:0 !important; }
}
@media (max-width:600px) {
    .site-header-fixed .logo { width:158px !important; max-width:158px !important; flex-basis:158px !important; }
    .site-header-fixed .logo-image-wrap { width:158px !important; height:74px !important; padding:4px 6px !important; }
    .site-header-fixed .logo-image { width:152px !important; height:66px !important; }
    .hero.hero-cinematic { height:500px !important; min-height:500px !important; }
    .hero-video-single { object-position:57% center !important; }
    .offersHero,.pageHero.offersHero { min-height:230px !important; height:230px !important; }
    .login-page { padding:20px 10px 32px !important; min-height:0 !important; }
}
@media (max-width:380px) {
    .site-header-fixed .logo { width:145px !important; max-width:145px !important; flex-basis:145px !important; }
    .site-header-fixed .logo-image-wrap { width:145px !important; height:69px !important; }
    .site-header-fixed .logo-image { width:139px !important; height:61px !important; }
}


/* =========================================================
   Noopura V4 — FINAL VISUAL POLISH
   - clearer supplied logo sizing (original artwork/typeface retained)
   - stronger active navigation state
   - full-width four-card featured row
   - royal-blue/gold offer badges and actions
   - responsive logo/header sizing
   ========================================================= */

/* Logo: preserve the exact supplied artwork and its typography; only enlarge it. */
.site-header-fixed .logo{
  flex:0 0 236px !important;
  width:236px !important;
  max-width:236px !important;
  height:106px !important;
}
.site-header-fixed .logo-image-wrap{
  width:232px !important;
  height:102px !important;
  padding:3px 5px !important;
  overflow:visible !important;
}
.site-header-fixed .logo-image{
  width:228px !important;
  height:98px !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}

/* Selected menu: unmistakable active state, including keyboard focus. */
.site-header-fixed .mainnav > a.nav-active,
.site-header-fixed .mainnav > .navitem > a.nav-active{
  color:var(--cj-blue) !important;
  background:#fff !important;
  box-shadow:inset 0 -3px 0 var(--cj-gold) !important;
  font-weight:800 !important;
}
.site-header-fixed .mainnav > a.nav-active:hover,
.site-header-fixed .mainnav > .navitem > a.nav-active:hover{
  color:var(--cj-blue) !important;
  background:#fff !important;
}

/* Homepage Featured Products: use the available viewport width like a premium retail rail. */
.featured-products-section{
  width:100% !important;
  max-width:none !important;
  padding-left:12px !important;
  padding-right:12px !important;
}
.featured-products-section .products{
  width:100% !important;
  max-width:none !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}
.featured-products-section .featured-product-card{
  width:100% !important;
  border-radius:6px !important;
}
.featured-products-section .featured-product-image-wrap img{
  height:320px !important;
  object-fit:cover !important;
}
.featured-products-section .featured-product-button{
  background:var(--cj-blue) !important;
  border-color:var(--cj-blue) !important;
  color:#fff !important;
}
.featured-products-section .featured-product-button:hover{
  background:var(--cj-gold) !important;
  border-color:var(--cj-gold) !important;
  color:var(--cj-blue) !important;
}
.featured-products-section .featured-offer-badge{
  background:var(--cj-blue) !important;
  color:#fff !important;
  border:1px solid var(--cj-gold) !important;
  box-shadow:0 4px 12px rgba(2,26,96,.18) !important;
}
.featured-products-section .home-price-offer-note span,
.featured-products-section .home-price-offer-note em{
  color:var(--cj-gold) !important;
}

/* Offers page: show the actual percentage prominently on every offer card. */
.offer-product-badge{
  background:var(--cj-blue) !important;
  color:#fff !important;
  border:1px solid var(--cj-gold) !important;
  box-shadow:0 4px 12px rgba(2,26,96,.12) !important;
}
.offer-product-badge b{
  color:var(--cj-gold-light) !important;
  font-weight:800 !important;
}
.offer-view{
  background:var(--cj-blue) !important;
  border-color:var(--cj-blue) !important;
  color:#fff !important;
}
.offer-view:hover{
  background:var(--cj-gold) !important;
  border-color:var(--cj-gold) !important;
  color:var(--cj-blue) !important;
}

/* Keep the catalogue offer percentage in the same brand language. */
.catalog-offer-label{
  background:var(--cj-blue) !important;
  color:#fff !important;
  border-color:var(--cj-gold) !important;
}

@media(max-width:1100px){
  .site-header-fixed .logo{flex-basis:205px !important;width:205px !important;max-width:205px !important;height:96px !important}
  .site-header-fixed .logo-image-wrap{width:201px !important;height:92px !important}
  .site-header-fixed .logo-image{width:197px !important;height:88px !important}
  .featured-products-section .featured-product-image-wrap img{height:285px !important}
}
@media(max-width:900px){
  .site-header-fixed .logo{width:185px !important;max-width:185px !important;flex-basis:185px !important;height:88px !important}
  .site-header-fixed .logo-image-wrap{width:181px !important;height:84px !important}
  .site-header-fixed .logo-image{width:177px !important;height:80px !important}
  .featured-products-section .products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
  .featured-products-section .featured-product-image-wrap img{height:270px !important}
}
@media(max-width:600px){
  .site-header-fixed .logo{width:155px !important;max-width:155px !important;flex-basis:155px !important;height:76px !important}
  .site-header-fixed .logo-image-wrap{width:151px !important;height:72px !important;padding:2px !important}
  .site-header-fixed .logo-image{width:147px !important;height:68px !important}
  .featured-products-section{padding-left:8px !important;padding-right:8px !important}
  .featured-products-section .products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}
  .featured-products-section .featured-product-image-wrap img{height:220px !important}
}
@media(max-width:390px){
  .featured-products-section .products{grid-template-columns:1fr !important}
  .featured-products-section .featured-product-image-wrap img{height:260px !important}
}

/* =========================================================
   Noopura V5 — BRAND READABILITY + ACTIVE NAV + OFFER POLISH
   ========================================================= */

/* Header wordmark: use the horizontal version so Noopura remains readable
   at normal desktop header height while retaining the supplied typeface. */
.site-header-fixed .logo{
  flex:0 0 250px !important;
  width:250px !important;
  max-width:250px !important;
  height:86px !important;
}
.site-header-fixed .logo-image-wrap{
  width:246px !important;
  height:82px !important;
  padding:0 !important;
  background:var(--cj-blue) !important;
  border:1px solid rgba(208,172,86,.58) !important;
  border-radius:10px !important;
  overflow:hidden !important;
}
.site-header-fixed .logo-image{
  width:240px !important;
  height:auto !important;
  max-width:240px !important;
  max-height:none !important;
  object-fit:contain !important;
}

/* Make the same supplied wordmark readable on account pages; do not turn it
   into a white silhouette because that destroys the Noopura lettering. */
.login-brand img,
.register-brand img{
  width:100% !important;
  max-width:330px !important;
  height:auto !important;
  filter:none !important;
  display:block !important;
}
.login-brand{width:330px !important;max-width:100% !important;}
.register-brand{width:330px !important;max-width:100% !important;}

/* Active top-level menu: selected item stays visibly selected even while the
   pointer is over a different menu item / mega-menu. */
.site-header-fixed .mainnav > a.nav-active,
.site-header-fixed .mainnav > .navitem > a.nav-active,
.site-header-fixed .mainnav > .navitem > a.nav-active:hover,
.site-header-fixed .mainnav > .navitem:hover > a.nav-active,
.site-header-fixed .mainnav > a.nav-active:hover{
  color:var(--cj-blue) !important;
  background:#fff !important;
  box-shadow:inset 0 -3px 0 var(--cj-gold) !important;
  text-shadow:none !important;
}
.site-header-fixed .mainnav > a.nav-active:after,
.site-header-fixed .mainnav > .navitem > a.nav-active:after{
  background:var(--cj-gold) !important;
  opacity:1 !important;
  transform:scaleX(1) !important;
}

/* Offer badges: deliberate maroon/red eye-catcher, as requested. */
.featured-products-section .featured-offer-badge,
.offer-product-badge,
.catalog-offer-label{
  background:#A62F2F !important;
  border:1px solid #8D2525 !important;
  color:#fff !important;
  box-shadow:0 5px 14px rgba(141,37,37,.22) !important;
}
.offer-product-badge b{color:#fff !important;}

/* View-all CTA: gold fill with deep royal-blue text. */
.featured-products-section .featured-products-view-all-btn{
  background:var(--cj-gold) !important;
  border-color:var(--cj-gold) !important;
  color:var(--cj-blue) !important;
  font-weight:800 !important;
  box-shadow:0 7px 18px rgba(2,26,96,.10) !important;
}
.featured-products-section .featured-products-view-all-btn:hover,
.featured-products-section .featured-products-view-all-btn:focus-visible{
  background:var(--cj-gold-light) !important;
  border-color:var(--cj-gold-light) !important;
  color:var(--cj-blue) !important;
}

/* Bottom footer row: make all legal/copyright text comfortably readable. */
footer.noopura-footer .footer-bottom{
  color:#E7ECF6 !important;
  font-size:13px !important;
  line-height:1.55 !important;
  letter-spacing:.2px !important;
  padding-top:23px !important;
  padding-bottom:27px !important;
}
footer.noopura-footer .footer-bottom-links a{
  color:#E7ECF6 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}
footer.noopura-footer .footer-bottom-links a:hover{color:var(--cj-gold-light) !important;}

@media(max-width:1100px){
  .site-header-fixed .logo{flex-basis:215px !important;width:215px !important;max-width:215px !important;height:78px !important;}
  .site-header-fixed .logo-image-wrap{width:211px !important;height:74px !important;}
  .site-header-fixed .logo-image{width:207px !important;max-width:207px !important;}
  .login-brand,.register-brand{width:290px !important;}
}
@media(max-width:900px){
  .site-header-fixed .logo{flex-basis:195px !important;width:195px !important;max-width:195px !important;height:74px !important;}
  .site-header-fixed .logo-image-wrap{width:191px !important;height:70px !important;}
  .site-header-fixed .logo-image{width:187px !important;max-width:187px !important;}
  .login-brand,.register-brand{width:270px !important;}
}
@media(max-width:600px){
  .site-header-fixed .logo{flex-basis:172px !important;width:172px !important;max-width:172px !important;height:68px !important;}
  .site-header-fixed .logo-image-wrap{width:168px !important;height:64px !important;border-radius:8px !important;}
  .site-header-fixed .logo-image{width:164px !important;max-width:164px !important;}
  .login-brand,.register-brand{width:245px !important;}
  footer.noopura-footer .footer-bottom{font-size:12px !important;padding:20px 18px 24px !important;}
  footer.noopura-footer .footer-bottom-links a{font-size:12px !important;}
}
@media(max-width:390px){
  .site-header-fixed .logo{flex-basis:156px !important;width:156px !important;max-width:156px !important;height:62px !important;}
  .site-header-fixed .logo-image-wrap{width:152px !important;height:58px !important;}
  .site-header-fixed .logo-image{width:148px !important;max-width:148px !important;}
}


/* =========================================================
   Noopura V6 — FOOTER TYPOGRAPHY, BRIDAL BANNER, OFFERS
   AND CLICK STABILITY
   ========================================================= */

/* Header wordmark: make Noopura itself more prominent while retaining
   the exact supplied typeface/artwork in the V6 horizontal asset. */
.site-header-fixed .logo{
  flex:0 0 276px !important;
  width:276px !important;
  max-width:276px !important;
  height:86px !important;
}
.site-header-fixed .logo-image-wrap{
  width:272px !important;
  height:82px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:var(--cj-blue) !important;
  overflow:hidden !important;
}
.site-header-fixed .logo-image{
  width:268px !important;
  max-width:268px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
}

/* Bridal campaign: give the section more visual presence and make the
   royal-blue treatment readable over the photography. */
.banner{
  min-height:420px !important;
  height:420px !important;
  margin:64px 0 !important;
  padding:0 28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background-position:center 38% !important;
  color:#fff !important;
}
.banner:before{
  background:
    linear-gradient(90deg,rgba(2,26,96,.82),rgba(2,26,96,.58) 48%,rgba(2,26,96,.30) 100%),
    linear-gradient(180deg,rgba(2,26,96,.18),rgba(2,26,96,.52)) !important;
}
.banner > div{
  width:min(820px,100%) !important;
  padding:34px 30px !important;
}
.banner .eyebrow{
  color:var(--cj-gold-light) !important;
  font-size:13px !important;
  letter-spacing:3.4px !important;
  font-weight:800 !important;
}
.banner h2{
  color:#fff !important;
  font-size:42px !important;
  line-height:1.12 !important;
  letter-spacing:2.5px !important;
  margin:14px 0 14px !important;
  text-shadow:0 3px 14px rgba(0,0,0,.28) !important;
}
.banner p{
  color:#F3F6FC !important;
  font-size:16px !important;
  line-height:1.7 !important;
  max-width:650px !important;
  margin:0 auto 16px !important;
}
.banner .btn{
  background:var(--cj-gold) !important;
  border-color:var(--cj-gold) !important;
  color:var(--cj-blue) !important;
}
.banner .btn:hover{
  background:var(--cj-gold-light) !important;
  border-color:var(--cj-gold-light) !important;
  color:var(--cj-blue) !important;
}

/* Offers page now follows the same clean catalogue rhythm as New Arrivals
   and Best Sellers: no separate image sub-header. */
.offer-products-page{
  max-width:1320px !important;
  padding-top:28px !important;
}
.offer-products-intro{
  padding:18px 10px 30px !important;
}
.offer-products-intro h2{
  font-size:34px !important;
  letter-spacing:1.8px !important;
}
.offer-products-intro p{color:#667085 !important;}

/* Footer: apply the readable lower-row size consistently throughout the
   entire footer, not only to the copyright row. */
footer.noopura-footer .footer-main,
footer.noopura-footer .footer-main *{
  font-size:13px;
}
footer.noopura-footer .footer-column h4,
footer.noopura-footer .footer-social-column h4{
  font-size:13px !important;
  letter-spacing:2px !important;
}
footer.noopura-footer .footer-column a,
footer.noopura-footer .footer-contact-list a{
  font-size:13px !important;
  line-height:1.6 !important;
  margin-bottom:11px !important;
}
footer.noopura-footer .footer-tagline,
footer.noopura-footer .footer-social-column p{
  font-size:13px !important;
  line-height:1.75 !important;
}
footer.noopura-footer .footer-newsletter,
footer.noopura-footer .footer-newsletter span,
footer.noopura-footer .footer-newsletter input,
footer.noopura-footer .footer-newsletter button{
  font-size:13px !important;
}
footer.noopura-footer .footer-trust-item b,
footer.noopura-footer .footer-trust-item small{
  font-size:13px !important;
}
footer.noopura-footer .footer-trust-item small{
  line-height:1.45 !important;
}

/* Eliminate click-time layout movement in the top navigation. Keep a stable
   scrollbar gutter so a page with/without a vertical scrollbar does not shift
   the header by a few pixels during navigation. */
html{
  scrollbar-gutter:stable !important;
}
.site-header-fixed .mainnav > a,
.site-header-fixed .mainnav > .navitem > a{
  box-sizing:border-box !important;
  min-height:52px !important;
  line-height:20px !important;
  transition:none !important;
  transform:none !important;
}
.site-header-fixed .mainnav > a.nav-active,
.site-header-fixed .mainnav > .navitem > a.nav-active{
  transition:none !important;
}

@media(max-width:1100px){
  .site-header-fixed .logo{flex-basis:236px !important;width:236px !important;max-width:236px !important;height:78px !important;}
  .site-header-fixed .logo-image-wrap{width:232px !important;height:74px !important;}
  .site-header-fixed .logo-image{width:228px !important;max-width:228px !important;}
  .banner{height:390px !important;min-height:390px !important;}
  .banner h2{font-size:36px !important;}
}
@media(max-width:900px){
  .site-header-fixed .logo{width:205px !important;max-width:205px !important;flex-basis:205px !important;height:74px !important;}
  .site-header-fixed .logo-image-wrap{width:201px !important;height:70px !important;}
  .site-header-fixed .logo-image{width:197px !important;max-width:197px !important;}
  .banner{height:360px !important;min-height:360px !important;margin:45px 0 !important;}
  .banner h2{font-size:32px !important;}
}
@media(max-width:600px){
  .site-header-fixed .logo{width:180px !important;max-width:180px !important;flex-basis:180px !important;height:68px !important;}
  .site-header-fixed .logo-image-wrap{width:176px !important;height:64px !important;}
  .site-header-fixed .logo-image{width:172px !important;max-width:172px !important;}
  .banner{height:310px !important;min-height:310px !important;padding:0 16px !important;margin:38px 0 !important;}
  .banner > div{padding:25px 18px !important;}
  .banner .eyebrow{font-size:11px !important;letter-spacing:2.5px !important;}
  .banner h2{font-size:27px !important;letter-spacing:1.4px !important;}
  .banner p{font-size:14px !important;}
  footer.noopura-footer .footer-main,
  footer.noopura-footer .footer-main *{font-size:12px;}
  footer.noopura-footer .footer-column h4,
  footer.noopura-footer .footer-social-column h4,
  footer.noopura-footer .footer-column a,
  footer.noopura-footer .footer-contact-list a,
  footer.noopura-footer .footer-tagline,
  footer.noopura-footer .footer-social-column p,
  footer.noopura-footer .footer-newsletter,
  footer.noopura-footer .footer-newsletter span,
  footer.noopura-footer .footer-newsletter input,
  footer.noopura-footer .footer-newsletter button{font-size:12px !important;}
  footer.noopura-footer .footer-trust-item b,
  footer.noopura-footer .footer-trust-item small{font-size:12px !important;}
}
@media(max-width:390px){
  .site-header-fixed .logo{width:164px !important;max-width:164px !important;flex-basis:164px !important;height:62px !important;}
  .site-header-fixed .logo-image-wrap{width:160px !important;height:58px !important;}
  .site-header-fixed .logo-image{width:156px !important;max-width:156px !important;}
  .banner{height:285px !important;min-height:285px !important;}
  .banner h2{font-size:24px !important;}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V8
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* =========================================================
   Noopura V7 — CATEGORY MOSAIC, HEADER ACTIONS, EDITORIAL REVEAL
   Visual-only enhancements. Existing backend/control IDs are untouched.
   ========================================================= */

/* Header quick-action labels: match the readable footer body typography. */
.site-header-fixed .headlinks .head-label,
.site-header-fixed .head-account-label-row .head-label {
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: .15px !important;
}
.site-header-fixed .headlinks .head-action,
.site-header-fixed .head-account-trigger {
    min-width: 82px !important;
}

/* Larger, clearer Noopura wordmark while preserving the supplied typeface asset. */
.site-header-fixed .logo { width: 292px !important; max-width: 292px !important; flex-basis: 292px !important; }
.site-header-fixed .logo-image-wrap { width: 288px !important; height: 84px !important; }
.site-header-fixed .logo-image { width: 284px !important; max-width: 284px !important; height: auto !important; }

/* =========================================================
   HOMEPAGE CATEGORY MOSAIC — premium editorial layout inspired
   by modern jewellery catalogues, using Noopura's own content.
   ========================================================= */
.chud-category-section {
    width: 100%;
    margin: 0;
    padding: 70px clamp(18px, 3vw, 48px) 76px;
    background: #f7f9fc;
}
.chud-category-heading {
    max-width: 1320px;
    margin: 0 auto 28px;
    text-align: center;
}
.chud-category-heading .eyebrow {
    display: block;
    margin-bottom: 7px;
    color: #D0AC56;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
}
.chud-category-heading h2 {
    margin: 0;
    color: #3B2A1B;
    font: normal clamp(30px, 3vw, 42px)/1.1 Georgia, "Times New Roman", serif;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.chud-category-heading p {
    max-width: 680px;
    margin: 12px auto 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.7;
}
.chud-category-grid {
    width: min(1320px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.05fr 1.05fr 1fr 1fr;
    grid-template-rows: 230px 230px 230px;
    grid-template-areas:
        "tall wide wide pendant"
        "tall chains bangles neck"
        "bracelet anklet anklet neck";
    gap: 6px;
}
.chud-category-card:nth-child(1){grid-area:tall}
.chud-category-card:nth-child(2){grid-area:wide}
.chud-category-card:nth-child(3){grid-area:pendant}
.chud-category-card:nth-child(4){grid-area:chains}
.chud-category-card:nth-child(5){grid-area:bangles}
.chud-category-card:nth-child(6){grid-area:neck}
.chud-category-card:nth-child(7){grid-area:bracelet}
.chud-category-card:nth-child(8){grid-area:anklet}
.chud-category-card {
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    background: #dfe6f0;
    text-decoration: none;
    isolation: isolate;
}
.chud-category-card.tall { grid-row: 1 / span 2; }
.chud-category-card.wide { grid-column: span 2; }
.chud-category-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s cubic-bezier(.16,1,.3,1), filter .7s ease;
}
.chud-category-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(2,26,96,.02) 28%, rgba(2,26,96,.72) 100%);
}
.chud-category-card:hover img { transform: scale(1.045); filter: saturate(1.04) contrast(1.02); }
.chud-category-copy {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 22px;
    z-index: 2;
    color: #fff;
}
.chud-category-copy span {
    display: block;
    margin-bottom: 5px;
    color: #F2D88F;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.chud-category-copy strong {
    display: block;
    font: normal clamp(22px, 2vw, 30px)/1.05 Georgia, "Times New Roman", serif;
    letter-spacing: .4px;
}
.chud-category-copy em {
    display: inline-block;
    margin-top: 8px;
    font-style: normal;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    color: #fff;
}

/* =========================================================
   EDITORIAL IMAGES — slice-by-slice reveal, then settle as one image.
   The original image remains in markup for accessibility; the slices are
   purely visual and use the same source image.
   ========================================================= */
.editorial-panel-link .editorial-panel-slices {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: grid;
    grid-template-rows: repeat(6, 1fr);
    pointer-events: none;
    overflow: hidden;
}
.editorial-panel-link .editorial-panel-slices span {
    display: block;
    background-repeat: no-repeat;
    background-size: 100% 600%;
    transform: translate3d(-8%,0,0);
    opacity: 0;
    transition: transform .72s cubic-bezier(.16,1,.3,1), opacity .42s ease;
}
.editorial-panel-link .editorial-panel-slices span:nth-child(1) { background-position: 0 0%; transition-delay: .02s; }
.editorial-panel-link .editorial-panel-slices span:nth-child(2) { background-position: 0 20%; transition-delay: .11s; }
.editorial-panel-link .editorial-panel-slices span:nth-child(3) { background-position: 0 40%; transition-delay: .20s; }
.editorial-panel-link .editorial-panel-slices span:nth-child(4) { background-position: 0 60%; transition-delay: .29s; }
.editorial-panel-link .editorial-panel-slices span:nth-child(5) { background-position: 0 80%; transition-delay: .38s; }
.editorial-panel-link .editorial-panel-slices span:nth-child(6) { background-position: 0 100%; transition-delay: .47s; }
.editorial-panel.is-visible .editorial-panel-link .editorial-panel-slices span {
    transform: translate3d(0,0,0);
    opacity: 1;
}
.editorial-panel-link > img { opacity: 0 !important; visibility: visible !important; }
.editorial-panel-link .editorial-panel-shade { z-index: 1; }

/* =========================================================
   OFFERS FILTER BAR — same catalogue language as Best Sellers/New Arrivals.
   ========================================================= */
.offer-filter-bar {
    width: min(1320px, calc(100% - 36px));
    margin: 0 auto 8px;
    padding: 13px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-top: 1px solid #E2E7EF;
    border-bottom: 1px solid #E2E7EF;
}
.offer-filter-left,.offer-filter-right { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.offer-filter-label { color:#667085; font-size:10px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; margin-right:3px; }
.offer-filter-pill {
    display:inline-flex; align-items:center; justify-content:center;
    min-height:34px; padding:0 13px; border:1px solid #CBD5E1; border-radius:5px;
    background:#fff; color:#3B2A1B; text-decoration:none; font-size:10px; font-weight:800; letter-spacing:.6px;
}
.offer-filter-pill:hover { border-color:#D0AC56; color:#3B2A1B; background:#FFF9EA; }
.offer-filter-pill.active { background:#3B2A1B; border-color:#3B2A1B; color:#fff; }
.offer-filter-pill.active:hover { background:#062574; color:#fff; }
.offer-sort { height:34px; border:1px solid #CBD5E1; background:#fff; color:#3B2A1B; padding:0 10px; font-size:10px; font-weight:700; }

/* Footer body typography: use the readable lower-row scale everywhere. */
footer.noopura-footer .footer-trust-item b,
footer.noopura-footer .footer-trust-item small,
footer.noopura-footer .footer-tagline,
footer.noopura-footer .footer-contact-list a,
footer.noopura-footer .footer-column a,
footer.noopura-footer .footer-social-column p,
footer.noopura-footer .footer-newsletter-row input,
footer.noopura-footer .footer-newsletter-row button,
footer.noopura-footer .footer-bottom,
footer.noopura-footer .footer-bottom-links a { font-size:13px !important; }
footer.noopura-footer .footer-column h4,
footer.noopura-footer .footer-social-column h4 { font-size:12px !important; }

.editorial-panel-gold .editorial-panel-slices span { background-image:url('../Images/Hero/Editorial/gold-editorial.jpg'); }
.editorial-panel-diamond .editorial-panel-slices span { background-image:url('../Images/Hero/Editorial/diamond-editorial.jpg'); }
.editorial-panel-bridal .editorial-panel-slices span { background-image:url('../Images/Hero/Editorial/bridal-editorial.jpg'); }

@media (max-width: 1000px) {
    .chud-category-grid { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(4, 210px); grid-template-areas:
        "tall wide"
        "tall wide"
        "pendant chains"
        "bangles neck"; }
    .offer-filter-bar { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 700px) {
    .site-header-fixed .headlinks .head-label { font-size:12px !important; }
    .site-header-fixed .headlinks .head-action { min-width:68px !important; }
    .site-header-fixed .logo { width:235px !important; max-width:235px !important; flex-basis:235px !important; }
    .site-header-fixed .logo-image-wrap { width:231px !important; }
    .site-header-fixed .logo-image { width:227px !important; }
    .chud-category-section { padding:48px 12px 54px; }
    .chud-category-grid { grid-template-columns:1fr 1fr; grid-template-rows:200px 200px 200px 200px; gap:4px; }
    .chud-category-copy { left:14px; right:14px; bottom:14px; }
    .chud-category-copy strong { font-size:20px; }
    .chud-category-copy span { font-size:7px; letter-spacing:1.4px; }
    .offer-filter-bar { width:calc(100% - 24px); }
    .offer-filter-left { width:100%; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }
}
@media (max-width: 480px) {
    .chud-category-grid { grid-template-columns:1fr; grid-template-rows:repeat(8, 210px); grid-template-areas:none; }
    .chud-category-card:nth-child(n) { grid-area:auto; }
}

/* =========================================================
   Noopura V8 — final visual/performance refinements
   ========================================================= */

/* Seamless editorial slice animation: no grid seams or visible slice lines. */
.editorial-panel-link .editorial-panel-slices {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    overflow:hidden !important;
}
.editorial-panel-link .editorial-panel-slices span {
    position:absolute !important;
    left:0 !important;
    width:100% !important;
    height:16.666667% !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    background-repeat:no-repeat !important;
    background-size:100% 600% !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    transform:translate3d(-12%,0,0) !important;
    opacity:0 !important;
    will-change:transform,opacity !important;
    transition:transform .82s cubic-bezier(.16,1,.3,1), opacity .55s ease !important;
}
.editorial-panel-link .editorial-panel-slices span:nth-child(1){top:0;background-position:0 0% !important;transition-delay:.04s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(2){top:16.666667%;background-position:0 20% !important;transition-delay:.24s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(3){top:33.333334%;background-position:0 40% !important;transition-delay:.44s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(4){top:50%;background-position:0 60% !important;transition-delay:.64s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(5){top:66.666667%;background-position:0 80% !important;transition-delay:.84s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(6){top:83.333334%;background-position:0 100% !important;transition-delay:1.04s !important;}
.editorial-panel.is-visible .editorial-panel-link .editorial-panel-slices span{
    transform:translate3d(0,0,0) !important;
    opacity:1 !important;
}

/* Reuse the optimized editorial image variants for the slice backgrounds. */
.editorial-panel-gold .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/gold-editorial-v8.jpg') !important;}
.editorial-panel-diamond .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/diamond-editorial-v8.jpg') !important;}
.editorial-panel-bridal .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/bridal-editorial-v8.jpg') !important;}

/* Category images are real product photography supplied in the project. */
.chud-category-card img{image-rendering:auto;backface-visibility:hidden;}
.chud-category-card{content-visibility:auto;contain-intrinsic-size:230px;}

/* Keep the first viewport fast: browser can paint the poster before video data arrives. */
.hero-video-single{background:#3B2A1B;}

/* Footer typography consistency, including trust-strip labels and legal links. */
footer.noopura-footer .footer-trust-item,
footer.noopura-footer .footer-trust-item span,
footer.noopura-footer .footer-trust-item b,
footer.noopura-footer .footer-trust-item small,
footer.noopura-footer .footer-main,
footer.noopura-footer .footer-brand,
footer.noopura-footer .footer-column,
footer.noopura-footer .footer-social-column,
footer.noopura-footer .footer-newsletter,
footer.noopura-footer .footer-bottom,
footer.noopura-footer .footer-bottom-links{font-size:13px !important;}

@media (prefers-reduced-motion: reduce){
    .editorial-panel-link .editorial-panel-slices span{transition:none !important;transform:none !important;opacity:1 !important;}
    .chud-category-card img{transition:none !important;}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V9
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* =========================================================
   Noopura V9 — offer catalogue sidebar, seamless editorial
   reveal, premium category imagery and performance polish.
   ========================================================= */

/* ---------- Seamless editorial reveal ----------
   The real image is always present underneath. Six solid brand-colour
   shutters slide away in sequence; therefore the completed image can
   never retain horizontal slice seams. */
.editorial-panel-link > img{
    opacity:1 !important;
    visibility:visible !important;
}
.editorial-panel-link .editorial-panel-slices{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    overflow:hidden !important;
    pointer-events:none !important;
}
.editorial-panel-link .editorial-panel-slices span{
    position:absolute !important;
    left:-1px !important;
    width:calc(100% + 2px) !important;
    height:16.666667% !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    background:#3B2A1B !important;
    background-image:none !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
    transform:translate3d(0,0,0) !important;
    will-change:transform !important;
    transition:transform 1.05s cubic-bezier(.16,1,.3,1) !important;
}
.editorial-panel-link .editorial-panel-slices span:nth-child(1){top:0;transition-delay:.10s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(2){top:16.666667%;transition-delay:.32s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(3){top:33.333334%;transition-delay:.54s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(4){top:50%;transition-delay:.76s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(5){top:66.666667%;transition-delay:.98s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(6){top:83.333334%;transition-delay:1.20s !important;}
.editorial-panel.is-visible .editorial-panel-link .editorial-panel-slices span{
    transform:translate3d(101%,0,0) !important;
}
.editorial-panel-link .editorial-panel-shade{z-index:2 !important;}
.editorial-panel-link .editorial-panel-copy{z-index:3 !important;}

/* ---------- Premium offer catalogue layout ---------- */
.offer-products-page{background:#f7f9fc !important;}
.offer-catalog-shell{
    width:min(1320px,calc(100% - 36px));
    margin:0 auto;
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:28px;
    align-items:start;
}
.offer-sidebar{
    position:sticky;
    top:18px;
    background:#fff;
    border:1px solid #DCE3ED;
    box-shadow:0 8px 28px rgba(2,26,96,.06);
    border-radius:6px;
    overflow:hidden;
}
.offer-sidebar-title{
    padding:16px 18px;
    background:#3B2A1B;
    color:#fff;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.6px;
}
.offer-sidebar-section{padding:17px 18px;border-bottom:1px solid #E7EBF1;}
.offer-sidebar-section:last-child{border-bottom:0;}
.offer-sidebar-heading{
    margin:0 0 10px;
    color:#3B2A1B;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}
.offer-sidebar-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:34px;
    padding:7px 9px;
    margin:2px 0;
    box-sizing:border-box;
    border-left:2px solid transparent;
    color:#53627A;
    background:#fff;
    text-decoration:none;
    font-size:12px;
    line-height:1.3;
    transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.offer-sidebar-link:hover{
    color:#3B2A1B;
    background:#F4F7FB;
    border-left-color:#D0AC56;
}
.offer-sidebar-link.active{
    color:#3B2A1B;
    background:#F7F2E9;
    border-left-color:#D0AC56;
    font-weight:800;
}
.offer-sidebar-link.active:after{content:'✓';color:#D0AC56;font-weight:900;}
.offer-results{min-width:0;}
.offer-results-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin:0 0 18px;
    padding-bottom:16px;
    border-bottom:1px solid #E2E7EF;
}
.offer-results-head h2{margin:0;color:#3B2A1B;font:normal 32px/1.15 Georgia,"Times New Roman",serif;letter-spacing:.8px;}
.offer-results-head p{margin:7px 0 0;color:#64748b;font-size:13px;}
.offer-results-sort{display:flex;align-items:center;gap:8px;white-space:nowrap;}
.offer-results-sort span{color:#667085;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;}
.offer-results-sort .offer-filter-pill{min-height:34px;}
.offer-filter-pill.active{background:#3B2A1B !important;border-color:#3B2A1B !important;color:#fff !important;}
.offer-filter-pill:hover{border-color:#D0AC56 !important;color:#3B2A1B !important;background:#FFF9EA !important;}
.offer-product-badge{background:#A62F2F !important;color:#fff !important;}
.offer-saving{color:#D0AC56 !important;}

/* Category cards: richer presentation and less blank white space. */
.chud-category-card{
    background:#071b54 !important;
    box-shadow:0 14px 36px rgba(2,26,96,.12);
}
.chud-category-card img{
    object-position:center !important;
    filter:saturate(1.04) contrast(1.03) !important;
}
.chud-category-card::after{
    background:linear-gradient(180deg,rgba(2,26,96,.02) 25%,rgba(2,26,96,.12) 46%,rgba(2,26,96,.88) 100%) !important;
}
.chud-category-copy strong{text-shadow:0 2px 18px rgba(0,0,0,.35);}
.chud-category-copy em{color:#F2D88F !important;}

/* ---------- Responsive ---------- */
@media(max-width:1050px){
    .offer-catalog-shell{grid-template-columns:220px minmax(0,1fr);gap:20px;}
    .offer-sidebar-link{font-size:11px;}
}
@media(max-width:800px){
    .offer-catalog-shell{display:block;width:calc(100% - 24px);}
    .offer-sidebar{position:static;margin-bottom:18px;}
    .offer-sidebar-title{padding:13px 15px;}
    .offer-sidebar-section{padding:12px 14px;}
    .offer-sidebar-links{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px;}
    .offer-sidebar-link{width:auto;min-width:max-content;border:1px solid #D5DDE8;border-left:1px solid #D5DDE8;border-radius:4px;padding:7px 11px;margin:0;background:#fff;}
    .offer-sidebar-link.active{border-color:#3B2A1B;background:#3B2A1B;color:#fff;}
    .offer-sidebar-link.active:after{display:none;}
    .offer-results-head{align-items:flex-start;flex-direction:column;}
    .offer-results-sort{width:100%;overflow-x:auto;padding-bottom:2px;}
}
@media(max-width:600px){
    .offer-results-head h2{font-size:27px;}
    .offer-results-head p{font-size:12px;}
}
@media(prefers-reduced-motion:reduce){
    .editorial-panel-link .editorial-panel-slices span{transition:none !important;transform:translate3d(101%,0,0) !important;}
}

/* V9 layout corrections for the new offer catalogue shell. */
.offer-products-grid{width:100% !important;margin:0 !important;}
.offer-empty{width:100% !important;margin:0 !important;box-sizing:border-box;}
.offer-results-sort .offer-filter-pill{min-height:32px;padding:0 11px;}

/* Keep category photography crisp and visually rich inside every mosaic size. */
.chud-category-card img{object-fit:cover !important;object-position:center center !important;}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V10
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* =========================================================
   Noopura V10 — logo readability, seamless editorial shutters,
   clean category photography and compact bridal campaign.
   Presentation-only layer; existing backend/control IDs are untouched.
   ========================================================= */

/* Header logo: slightly larger visual wordmark, same supplied typeface. */
.site-header-fixed .logo-image{content:url('../Images/noopura-brand-logo.jpg') !important;}

/* Editorial reveal: blue shutters with a subtle Noopura watermark.
   The shutters are intentionally oversized when leaving the frame so no
   one-pixel seam can remain visible over the final photograph. */
.editorial-panel-link .editorial-panel-slices{gap:0 !important;}
.editorial-panel-link .editorial-panel-slices span{
    left:0 !important;
    width:100% !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:#3B2A1B !important;
    overflow:hidden !important;
    transform:translate3d(0,0,0) !important;
    transition:transform 1.55s cubic-bezier(.16,1,.3,1) !important;
}
.editorial-panel-link .editorial-panel-slices span::after{
    content:'Noopura';
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    color:rgba(242,216,143,.22);
    font:600 11px/1 Georgia,"Times New Roman",serif;
    letter-spacing:4px;
    white-space:nowrap;
    text-shadow:0 1px 12px rgba(0,0,0,.12);
    pointer-events:none;
}
.editorial-panel-link .editorial-panel-slices span:nth-child(1){top:0 !important;transition-delay:.10s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(2){top:16.666667% !important;transition-delay:.36s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(3){top:33.333334% !important;transition-delay:.62s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(4){top:50% !important;transition-delay:.88s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(5){top:66.666667% !important;transition-delay:1.14s !important;}
.editorial-panel-link .editorial-panel-slices span:nth-child(6){top:83.333334% !important;transition-delay:1.40s !important;}
.editorial-panel.is-visible .editorial-panel-link .editorial-panel-slices span{
    transform:translate3d(110%,0,0) !important;
}

/* Category photography: no blue wash. Use the new neutral/gold editorial
   image assets and only a very subtle darkening at the bottom for labels. */
.chud-category-card::after{
    background:linear-gradient(180deg,rgba(0,0,0,0) 48%,rgba(0,0,0,.08) 68%,rgba(0,0,0,.38) 100%) !important;
}
.chud-category-card img{
    object-fit:cover !important;
    object-position:center !important;
    filter:none !important;
}
.chud-category-copy strong{text-shadow:0 2px 16px rgba(0,0,0,.48) !important;}
.chud-category-copy span{color:#D0AC56 !important;text-shadow:0 1px 8px rgba(0,0,0,.4);}
.chud-category-copy em{color:#fff !important;text-shadow:0 1px 8px rgba(0,0,0,.4);}

/* Bridal campaign: let the photography lead. No royal-blue overlay and a
   shorter, more editorial height. */
.banner{
    height:255px !important;
    min-height:255px !important;
    margin:42px 0 !important;
    padding-top:48px !important;
    background-position:center 34% !important;
}
.banner::before{
    background:rgba(0,0,0,.07) !important;
}
.banner > div{max-width:900px !important;margin:0 auto !important;}
.banner .eyebrow{color:#F2D88F !important;text-shadow:0 1px 8px rgba(0,0,0,.5);}
.banner h2{color:#fff !important;text-shadow:0 2px 14px rgba(0,0,0,.55);margin:8px 0 !important;}
.banner p{color:#fff !important;text-shadow:0 1px 10px rgba(0,0,0,.5);}
.banner .btn{background:#D0AC56 !important;color:#3B2A1B !important;}

@media(max-width:900px){
    .banner{height:235px !important;min-height:235px !important;padding-top:38px !important;}
}
@media(max-width:600px){
    .banner{height:215px !important;min-height:215px !important;padding:30px 18px 0 !important;margin:30px 0 !important;}
    .editorial-panel-link .editorial-panel-slices span::after{font-size:9px;letter-spacing:3px;}
}
@media(prefers-reduced-motion:reduce){
    .editorial-panel-link .editorial-panel-slices span{transition:none !important;transform:translate3d(110%,0,0) !important;}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V11
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* Noopura V11 — approved Shop by Category + service promo layout.
   Only homepage presentation is changed here; existing URLs/backend are preserved. */
.chud-category-section{
    background:#faf8f3 !important;
    padding:58px 3.2vw 64px !important;
}
.chud-category-heading{
    max-width:1080px !important;
    margin:0 auto 28px !important;
    text-align:center !important;
}
.chud-category-heading .eyebrow{
    color:#B58A3A !important;
    font-size:11px !important;
    letter-spacing:3px !important;
    font-weight:700 !important;
}
.chud-category-heading h2{
    color:#3B2A1B !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:34px !important;
    letter-spacing:1.2px !important;
    margin:8px 0 8px !important;
}
.chud-category-heading p{
    color:#596071 !important;
    max-width:900px !important;
    margin:0 auto !important;
    font-size:14px !important;
}
.chud-category-grid-v11{
    max-width:1440px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-auto-rows:minmax(155px,1fr) !important;
    gap:12px !important;
}
.chud-category-grid-v11 .chud-category-card{
    position:relative !important;
    display:block !important;
    min-height:0 !important;
    aspect-ratio:2.32 / 1 !important;
    overflow:hidden !important;
    border-radius:14px !important;
    background:#eee !important;
    box-shadow:0 7px 22px rgba(15,23,42,.10) !important;
    transform:translateZ(0) !important;
}
.chud-category-grid-v11 .chud-category-card::after{display:none !important;}
.chud-category-grid-v11 .chud-category-card img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center !important;
    filter:none !important;
    transition:transform .45s cubic-bezier(.2,.7,.2,1) !important;
}
.chud-category-grid-v11 .chud-category-card:hover img,
.chud-category-grid-v11 .chud-category-card:focus-visible img{
    transform:scale(1.035) !important;
}
.chud-category-grid-v11 .chud-category-card:focus-visible{
    outline:3px solid #D0AC56 !important;
    outline-offset:2px !important;
}
.chud-home-promos{
    max-width:1440px !important;
    margin:28px auto 0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
}
.chud-home-promo{
    display:block !important;
    overflow:hidden !important;
    border-radius:15px !important;
    background:#3B2A1B !important;
    box-shadow:0 9px 26px rgba(15,23,42,.12) !important;
    line-height:0 !important;
    transform:translateZ(0) !important;
}
.chud-home-promo img{
    width:100% !important;
    height:auto !important;
    display:block !important;
    object-fit:cover !important;
    transition:transform .45s cubic-bezier(.2,.7,.2,1) !important;
}
.chud-home-promo:hover img,
.chud-home-promo:focus-visible img{transform:scale(1.018) !important;}
.chud-home-promo:focus-visible{outline:3px solid #D0AC56 !important;outline-offset:3px;}

@media(max-width:1000px){
    .chud-category-section{padding:48px 18px 54px !important;}
    .chud-category-grid-v11{grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-auto-rows:auto !important;gap:10px !important;}
    .chud-category-grid-v11 .chud-category-card{aspect-ratio:2.18 / 1 !important;border-radius:12px !important;}
    .chud-home-promos{gap:12px !important;margin-top:22px !important;}
}
@media(max-width:600px){
    .chud-category-section{padding:38px 12px 42px !important;}
    .chud-category-heading{margin-bottom:20px !important;}
    .chud-category-heading h2{font-size:26px !important;letter-spacing:.6px !important;}
    .chud-category-heading p{font-size:12px !important;line-height:1.55 !important;padding:0 8px !important;}
    .chud-category-grid-v11{gap:8px !important;}
    .chud-category-grid-v11 .chud-category-card{aspect-ratio:1.95 / 1 !important;border-radius:9px !important;}
    .chud-home-promos{grid-template-columns:1fr !important;gap:10px !important;margin-top:18px !important;}
    .chud-home-promo{border-radius:11px !important;}
}
@media(prefers-reduced-motion:reduce){
    .chud-category-grid-v11 .chud-category-card img,.chud-home-promo img{transition:none !important;}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V12
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* Noopura V12 — final homepage layout refinement.
   Keeps the approved V11 imagery/logo and only fixes placement/alignment.
*/

/* ---- Editorial slice watermark: large enough to read on the blue reveal. ---- */
.editorial-panel-link .editorial-panel-slices span::after{
    content:'Noopura' !important;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    color:rgba(242,216,143,.34) !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:clamp(20px,2.15vw,34px) !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:clamp(4px,.7vw,9px) !important;
    text-shadow:0 2px 14px rgba(0,0,0,.18) !important;
    white-space:nowrap !important;
    pointer-events:none !important;
}

/* ---- Shop by Category: explicit, non-overlapping editorial mosaic. ---- */
.chud-category-grid-v11{
    max-width:1440px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-template-rows:170px 170px 170px !important;
    grid-template-areas:
        "rings earrings earrings pendants"
        "chains earrings earrings necklaces"
        "bracelets bracelets anklets anklets" !important;
    gap:12px !important;
    align-items:stretch !important;
}
.chud-category-grid-v11 .chud-category-card,
.chud-category-grid-v11 .chud-category-card:nth-child(n){
    grid-area:auto !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    align-self:stretch !important;
}
.chud-category-grid-v11 .chud-category-card:nth-child(1){grid-area:rings !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(2){grid-area:earrings !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(3){grid-area:pendants !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(4){grid-area:chains !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(5){grid-area:bracelets !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(6){grid-area:necklaces !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(7){grid-area:bracelets !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(8){grid-area:anklets !important;}

/* Correct the final row to use all available space without overlaps. */
.chud-category-grid-v11 .chud-category-card:nth-child(5){grid-area:bangles !important;}
.chud-category-grid-v11{
    grid-template-areas:
        "rings earrings earrings pendants"
        "chains earrings earrings necklaces"
        "bangles bracelets anklets anklets" !important;
}
.chud-category-grid-v11 .chud-category-card:nth-child(5){grid-area:bangles !important;}
.chud-category-grid-v11 .chud-category-card:nth-child(7){grid-area:bracelets !important;}

.chud-category-grid-v11 .chud-category-card{
    border-radius:14px !important;
    overflow:hidden !important;
    box-shadow:0 7px 22px rgba(15,23,42,.10) !important;
}
.chud-category-grid-v11 .chud-category-card img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
}

/* Promos belong at the very bottom of homepage content, immediately before footer. */
.chud-home-promos-footer{
    max-width:1440px !important;
    margin:18px auto 44px !important;
    padding:0 3.2vw !important;
    box-sizing:border-box !important;
}

@media(max-width:1100px){
    .chud-category-grid-v11{
        grid-template-rows:150px 150px 150px !important;
        gap:10px !important;
    }
}

@media(max-width:1000px){
    .chud-category-grid-v11{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:155px 155px 155px 155px 155px !important;
        grid-template-areas:
            "rings earrings"
            "pendants earrings"
            "chains necklaces"
            "bangles bracelets"
            "anklets anklets" !important;
    }
    .chud-category-grid-v11 .chud-category-card:nth-child(1){grid-area:rings !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(2){grid-area:earrings !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(3){grid-area:pendants !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(4){grid-area:chains !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(5){grid-area:bangles !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(6){grid-area:necklaces !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(7){grid-area:bracelets !important;}
    .chud-category-grid-v11 .chud-category-card:nth-child(8){grid-area:anklets !important;}
    .chud-home-promos-footer{padding:0 18px !important;}
}

@media(max-width:600px){
    .editorial-panel-link .editorial-panel-slices span::after{
        font-size:18px !important;
        letter-spacing:4px !important;
        color:rgba(242,216,143,.38) !important;
    }
    .chud-category-grid-v11{
        grid-template-columns:1fr 1fr !important;
        grid-template-rows:125px 125px 125px 125px 125px !important;
        gap:8px !important;
    }
    .chud-category-grid-v11 .chud-category-card{border-radius:10px !important;}
    .chud-home-promos-footer{margin:14px auto 30px !important;padding:0 12px !important;}
}

/* ---- V13: category copy is HTML, never baked into the customer image. ---- */
.chud-category-grid-v13 .chud-category-card{
    position:relative !important;
    isolation:isolate !important;
    display:block !important;
    overflow:hidden !important;
    background:#0a214f !important;
    color:#fff !important;
    text-decoration:none !important;
}
.chud-category-grid-v13 .chud-category-media{
    position:absolute !important;
    inset:0 !important;
    overflow:hidden !important;
    z-index:0 !important;
    background:#0a214f !important;
}
.chud-category-grid-v13 .chud-category-media img{
    position:absolute !important;
    left:0 !important;
    top:-24% !important;
    width:100% !important;
    height:148% !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:center top !important;
    filter:none !important;
    transform:none !important;
}
/* The source JPGs previously contained copy in their lower-left edge. This crop keeps
   that baked copy outside the visible area while the new HTML copy remains editable. */
.chud-category-grid-v13 .chud-category-media::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(180deg,rgba(0,0,0,0) 48%,rgba(0,0,0,.10) 67%,rgba(0,0,0,.72) 100%) !important;
    z-index:1 !important;
}
.chud-category-grid-v13 .chud-category-content{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:3 !important;
    padding:18px 20px 17px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:4px !important;
    box-sizing:border-box !important;
    text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
}
.chud-category-grid-v13 .chud-category-title{
    display:block !important;
    color:#fff !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:clamp(20px,1.9vw,31px) !important;
    line-height:1.05 !important;
    font-weight:600 !important;
    letter-spacing:.1px !important;
}
.chud-category-grid-v13 .chud-category-action{
    display:block !important;
    color:#f3ca58 !important;
    font-family:Arial,Helvetica,sans-serif !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:1px !important;
}
.chud-category-grid-v13 .chud-category-action b{
    font-size:18px !important;
    font-weight:500 !important;
    vertical-align:-1px !important;
    margin-left:2px !important;
}
.chud-category-grid-v13 .chud-category-card:hover .chud-category-media img,
.chud-category-grid-v13 .chud-category-card:focus-visible .chud-category-media img{
    transform:scale(1.025) !important;
    transition:transform .45s ease !important;
}

@media(max-width:600px){
    .chud-category-grid-v13 .chud-category-content{padding:12px 13px 12px !important;gap:3px !important;}
    .chud-category-grid-v13 .chud-category-title{font-size:18px !important;}
    .chud-category-grid-v13 .chud-category-action{font-size:10px !important;letter-spacing:.8px !important;}
    .chud-category-grid-v13 .chud-category-action b{font-size:15px !important;}
}

/* V13 grid geometry — same approved editorial composition, with no overlap or blank tracks. */
.chud-category-grid-v13{
    max-width:1440px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-template-rows:170px 170px 170px !important;
    grid-template-areas:
        "rings earrings earrings pendants"
        "chains earrings earrings necklaces"
        "bangles bracelets anklets anklets" !important;
    gap:12px !important;
    align-items:stretch !important;
}
.chud-category-grid-v13 .chud-category-card:nth-child(1){grid-area:rings !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(2){grid-area:earrings !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(3){grid-area:pendants !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(4){grid-area:chains !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(5){grid-area:bangles !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(6){grid-area:necklaces !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(7){grid-area:bracelets !important;}
.chud-category-grid-v13 .chud-category-card:nth-child(8){grid-area:anklets !important;}
@media(max-width:1100px){
    .chud-category-grid-v13{grid-template-rows:150px 150px 150px !important;gap:10px !important;}
}
@media(max-width:1000px){
    .chud-category-grid-v13{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:155px 155px 155px 155px 155px !important;
        grid-template-areas:
            "rings earrings"
            "pendants earrings"
            "chains necklaces"
            "bangles bracelets"
            "anklets anklets" !important;
    }
}
@media(max-width:600px){
    .chud-category-grid-v13{grid-template-columns:1fr 1fr !important;grid-template-rows:125px 125px 125px 125px 125px !important;gap:8px !important;}
}


/* =========================================================
   CONSOLIDATED LEGACY DESIGN LAYER: V14
   Preserved in cascade order during project cleanup.
   ========================================================= */
/* Noopura V14 — clean editable category imagery + desktop header count badges. */

/* Category photos are now clean image-only assets. Do not crop them to hide baked copy. */
.chud-category-grid-v13 .chud-category-media img{
    top:0 !important;
    left:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:none !important;
    transform:none !important;
}
.chud-category-grid-v13 .chud-category-media::after{
    background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(0,0,0,.08) 62%,rgba(0,0,0,.68) 100%) !important;
}
.chud-category-grid-v13 .chud-category-content{
    bottom:0 !important;
    padding:18px 20px 17px !important;
}

/* Desktop/tablet: keep the count badge attached to the icon, like the mobile header. */
.head-wishlist-action .head-icon,
.head-cart-action .head-icon{
    position:relative !important;
    overflow:visible !important;
}
.head-wishlist-action .wishlist-header-badge-icon,
.head-cart-action .cart-header-badge-icon{
    display:inline-flex !important;
    position:absolute !important;
    top:-7px !important;
    right:-9px !important;
    z-index:100 !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:17px !important;
    width:auto !important;
    height:17px !important;
    padding:0 4px !important;
    margin:0 !important;
    border-radius:999px !important;
    border:2px solid #fff !important;
    background:#D4AF55 !important;
    color:#061E62 !important;
    font:800 8px/13px Arial,Helvetica,sans-serif !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    box-shadow:0 2px 6px rgba(0,0,0,.16) !important;
}
.head-wishlist-action .wishlist-header-badge-label,
.head-cart-action .cart-header-badge-label{
    display:none !important;
}

@media(max-width:600px){
    .chud-category-grid-v13 .chud-category-media img{
        top:0 !important;
        height:100% !important;
        object-position:center center !important;
    }
    .head-wishlist-action .wishlist-header-badge-icon,
    .head-cart-action .cart-header-badge-icon{
        top:-7px !important;
        right:-8px !important;
    }
}

/* V15 — premium category typography and a stronger catalogue CTA. */
.chud-category-grid-v13 .chud-category-title{
    font-size:clamp(18px,1.35vw,23px) !important;
    line-height:1.1 !important;
    font-weight:500 !important;
    letter-spacing:.15px !important;
    text-shadow:0 1px 7px rgba(0,0,0,.48) !important;
}
.chud-category-grid-v13 .chud-category-action{
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:600 !important;
    letter-spacing:1.25px !important;
}
.chud-category-grid-v13 .chud-category-action b{font-size:16px !important;font-weight:400 !important;}

/* The image files are now clean photography; no crop/offset is needed to hide copy. */
.chud-category-grid-v13 .chud-category-media img{
    top:0 !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
}

/* Distinct premium treatment for the catalogue-wide CTA. */
.featured-products-section .featured-products-view-all-btn{
    background:#061F63 !important;
    color:#F2CC68 !important;
    border:1px solid #C9A94A !important;
    box-shadow:0 8px 20px rgba(6,31,99,.14) !important;
    border-radius:5px !important;
    font-weight:700 !important;
    letter-spacing:1px !important;
}
.featured-products-section .featured-products-view-all-btn:hover,
.featured-products-section .featured-products-view-all-btn:focus-visible{
    background:#F2CC68 !important;
    color:#061F63 !important;
    border-color:#F2CC68 !important;
    box-shadow:0 10px 22px rgba(6,31,99,.18) !important;
}
@media(max-width:600px){
    .chud-category-grid-v13 .chud-category-title{font-size:17px !important;font-weight:500 !important;}
    .chud-category-grid-v13 .chud-category-action{font-size:9px !important;letter-spacing:1px !important;}
    .chud-category-grid-v13 .chud-category-action b{font-size:14px !important;}
}

/* V15 — remove legacy baked copy from the three editorial photography panels. */
.editorial-panel-gold .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/gold-editorial-v8.jpg') !important;}
.editorial-panel-diamond .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/diamond-editorial-v8.jpg') !important;}
.editorial-panel-bridal .editorial-panel-slices span{background-image:url('../Images/Hero/Editorial/bridal-editorial-v8.jpg') !important;}


/* Noopura signature palette and responsive safety overrides */
:root{--noopura-gold:#C7A15A;--noopura-gold-light:#E7D5AD;--noopura-ivory:#FBF8F2;--noopura-cream:#F3E9D8;--noopura-espresso:#3B2A1B;--noopura-brown:#6B4A2D;--noopura-muted:#756454;--noopura-border:#E9DFD0;--noopura-white:#fff}
html{scroll-behavior:smooth;max-width:100%}body{color:var(--noopura-espresso);background:#fff}img,video,iframe,svg{max-width:100%}input,select,textarea,button{max-width:100%}input,select,textarea{min-width:0}
.topbar,.top-info-bar,footer{background-color:var(--noopura-espresso)!important}.logo,.headlinks a,.mainnav>a,.navitem>a,.product strong,.link,.cartrow a,.grand,.message,.account a{color:var(--noopura-espresso)}
.logo span,.eyebrow,.mega h4,footer h3{color:var(--noopura-gold)}.search input[type=submit],.btn,.megaPromo a,input[type=submit],button[type=submit]{background:var(--noopura-espresso);border-color:var(--noopura-espresso);color:#fff}
.outline{background:transparent!important;color:var(--noopura-espresso)!important;border-color:var(--noopura-gold)!important}.pagehead,.formbox,.rate,.admincards div{background:var(--noopura-ivory)}.mega{border-top-color:var(--noopura-gold)}
.table-responsive,.grid-wrap,.table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{max-width:100%}td,th{overflow-wrap:anywhere}
@media(max-width:1024px){.headrow{gap:12px}.search{min-width:0;max-width:100%;width:min(34%,360px)}.mainnav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;-webkit-overflow-scrolling:touch}.mainnav>a,.navitem>a{flex-shrink:0}.section,.listing,.cartbox,.detail,.admin{width:100%;max-width:100%}.detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.detailimg{height:auto;max-height:600px}.products,.catgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.product img{height:auto;aspect-ratio:4/5}footer{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:22px;padding-right:22px}}
@media(max-width:700px){.headrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:12px}.logo{font-size:clamp(16px,4vw,21px);letter-spacing:1px;white-space:normal;max-width:65%}.search{order:3;width:100%;max-width:100%;flex:1 0 100%}.headlinks{gap:10px;flex-wrap:wrap}.hero{height:auto;min-height:360px;background-position:center}.heroText{position:relative;left:auto;right:auto;top:auto;padding:60px 22px;max-width:100%}.hero h1{font-size:clamp(30px,8vw,42px)}.section{margin:36px auto;padding-left:14px;padding-right:14px}.catgrid,.products,.offergrid,.admincards,.adminform{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cat{height:170px;font-size:20px}.detail{grid-template-columns:minmax(0,1fr);margin:30px auto 50px;padding:0 14px}.detailinfo h1{font-size:clamp(28px,7vw,38px)}.filters{flex-wrap:wrap;padding:0 14px}.filters input,.filters select{min-width:0;width:100%}.cartrow{grid-template-columns:72px minmax(0,1fr);gap:12px}.cartrow img{width:72px;height:72px}.grand{font-size:18px;gap:12px;flex-wrap:wrap}.formbox{width:calc(100% - 24px);margin:30px auto 55px;padding:22px 16px}.pagehead{padding:35px 14px}.pagehead h1{font-size:clamp(26px,7vw,34px)}.rates{gap:18px;flex-wrap:wrap}.rate{padding:30px 14px}footer{grid-template-columns:minmax(0,1fr);gap:20px;padding:32px 18px}.copyright{grid-column:auto}}
@media(max-width:420px){.catgrid,.products,.offergrid,.admincards,.adminform{grid-template-columns:minmax(0,1fr)}.headlinks{font-size:11px;gap:7px}.search input[type=submit]{padding-left:10px;padding-right:10px}.mega{grid-template-columns:minmax(0,1fr);max-width:100vw;padding:16px}}


/* Noopura warm luxury palette: remove residual blue/slate UI tones */
:root{--noopura-gold:#C7A15A;--noopura-espresso:#3B2A1B;--noopura-ivory:#FBF8F2;--noopura-cream:#F3E9D8;--noopura-taupe:#756454;}
body{color:var(--noopura-espresso);background:var(--noopura-ivory)}
input,select,textarea{accent-color:var(--noopura-gold)}
button,.btn,input[type=submit],input[type=button]{accent-color:var(--noopura-gold)}
@media(max-width:768px){img,video,iframe{max-width:100%}.section,.listing,.admin{width:100%;padding-left:14px;padding-right:14px}.catgrid,.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail{gap:24px;padding:0 14px}.detailimg{height:auto;max-height:70vh}.formbox{width:calc(100% - 28px);padding:22px;margin:30px auto 55px}.filters{flex-wrap:wrap}.filters input,.filters select{min-width:0;flex:1 1 150px}}
@media(max-width:480px){.catgrid,.products{grid-template-columns:repeat(2,minmax(0,1fr))}.product img{height:auto;aspect-ratio:3/4}.hero h1{font-size:32px}.cartbox{padding:0 12px}.cartrow{gap:12px}.cartrow img{width:80px;height:80px}footer{grid-template-columns:1fr;gap:18px;padding:32px 20px}.copyright{grid-column:auto}}



/* Noopura image-only colour correction: warm espresso/gold overlays.
   This block intentionally affects image overlays only, not the site header,
   navigation, top bar, logo section, or general page colour scheme. */
.hero.hero-cinematic .hero-cinematic-shade {
    background:
      linear-gradient(90deg, rgba(59,42,27,.58) 0%, rgba(59,42,27,.28) 45%, rgba(59,42,27,.08) 100%),
      linear-gradient(180deg, rgba(59,42,27,.03) 0%, rgba(59,42,27,.12) 52%, rgba(59,42,27,.42) 100%) !important;
}
.hero:not(.hero-cinematic)::after,
.subPageHero::before {
    background: linear-gradient(90deg, rgba(59,42,27,.62), rgba(59,42,27,.26) 62%, rgba(59,42,27,.07)) !important;
}
.banner::before {
    background: linear-gradient(135deg, rgba(59,42,27,.48), rgba(59,42,27,.16)) !important;
}
.editorial-panel-shade {
    background: linear-gradient(180deg, rgba(59,42,27,.01), rgba(59,42,27,.68)) !important;
}
.editorial-panel-link .editorial-panel-slices span::before,
.editorial-panel-link .editorial-panel-slices span::after {
    background-color: transparent;
}
.editorial-panel-link .editorial-panel-slices span::after {
    /* Keep any decorative text/watermark styling, remove the blue colour wash. */
    text-shadow: 0 1px 12px rgba(59,42,27,.28);
}
.editorial-panel-link .editorial-panel-slices span {
    box-shadow: inset 0 0 0 9999px rgba(59,42,27,.035);
}
.editorial-panel-link .editorial-panel-slices span::before {
    background: linear-gradient(180deg, rgba(59,42,27,0), rgba(59,42,27,.16)) !important;
}
.cat::before {
    background: linear-gradient(180deg, rgba(59,42,27,.02), rgba(59,42,27,.62)) !important;
}
.cat::after {
    background: linear-gradient(transparent, rgba(59,42,27,.64)) !important;
}
/* Keep the previously requested View All Products CTA in Noopura gold. */
.featured-products-section .featured-products-view-all-btn {
    background: #C7A15A !important;
    border-color: #C7A15A !important;
    color: #3B2A1B !important;
    box-shadow: 0 8px 20px rgba(59,42,27,.14) !important;
}
.featured-products-section .featured-products-view-all-btn:hover,
.featured-products-section .featured-products-view-all-btn:focus-visible {
    background: #B58A3D !important;
    border-color: #B58A3D !important;
    color: #FFFFFF !important;
}



/* Noopura account pages — refined luxury redesign (scoped to login/register only) */
.login-page,
.register-page {
    background:
      radial-gradient(ellipse at 12% 8%, rgba(199,161,90,.12), transparent 38%),
      linear-gradient(135deg, #FBF8F2 0%, #F4EEE4 52%, #FBF8F2 100%) !important;
    padding: clamp(24px, 4vw, 54px) 20px !important;
}
.login-shell,
.register-shell {
    width: min(1080px, 100%) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, .92fr) minmax(390px, 1.08fr) !important;
    align-items: stretch !important;
    gap: 0 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid rgba(120, 91, 53, .16) !important;
    box-shadow: 0 24px 70px rgba(59,42,27,.12), 0 3px 12px rgba(59,42,27,.05) !important;
}
.login-brand-panel,
.register-brand-panel {
    position: relative !important;
    min-height: 620px !important;
    height: auto !important;
    padding: clamp(30px, 4vw, 52px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    overflow: hidden !important;
    color: #FBF8F2 !important;
    background:
      radial-gradient(ellipse at 90% 8%, rgba(199,161,90,.23), transparent 34%),
      radial-gradient(ellipse at 0% 100%, rgba(199,161,90,.12), transparent 38%),
      linear-gradient(145deg, #302216 0%, #493522 52%, #3B2A1B 100%) !important;
}
.login-brand-panel::before,
.register-brand-panel::before {
    content: "" !important;
    position: absolute !important;
    width: 310px !important;
    height: 310px !important;
    right: -155px !important;
    bottom: -150px !important;
    border: 1px solid rgba(225,190,119,.24) !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 28px rgba(225,190,119,.035), 0 0 0 58px rgba(225,190,119,.025) !important;
    pointer-events: none !important;
}
.login-brand-panel::after,
.register-brand-panel::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 12% !important;
    bottom: 12% !important;
    width: 3px !important;
    background: linear-gradient(transparent, #C7A15A 25%, #E6CB8C 75%, transparent) !important;
    opacity: .9 !important;
}
.login-brand,
.register-brand {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: min(245px, 100%) !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 0 48px !important;
    position: relative !important;
    z-index: 2 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.login-brand img,
.register-brand img {
    display: block !important;
    width: 100% !important;
    max-width: 245px !important;
    height: auto !important;
    max-height: 88px !important;
    object-fit: contain !important;
    object-position: left center !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    mix-blend-mode: normal !important;
}
.login-brand-copy,
.register-brand-copy {
    position: relative !important;
    z-index: 2 !important;
    max-width: 390px !important;
    padding: 0 !important;
    margin: 0 !important;
}
.login-brand-panel .login-kicker,
.register-brand-panel .register-kicker,
.login-brand-copy .login-kicker,
.register-brand-copy .register-kicker {
    display: inline-block !important;
    color: #E4C783 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 2.8px !important;
    line-height: 1.6 !important;
    margin: 0 0 15px !important;
}
.login-brand-copy h1,
.register-brand-copy h1 {
    color: #FFFDF8 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(34px, 3.2vw, 46px) !important;
    font-weight: 500 !important;
    letter-spacing: -.7px !important;
    line-height: 1.08 !important;
    margin: 0 0 18px !important;
}
.login-brand-copy p,
.register-brand-copy p {
    color: rgba(255,250,240,.82) !important;
    font-size: 14px !important;
    line-height: 1.9 !important;
    max-width: 350px !important;
    margin: 0 !important;
}
.login-brand-line,
.register-brand-line {
    width: 58px !important;
    height: 2px !important;
    background: #C7A15A !important;
    margin: 28px 0 16px !important;
    border: 0 !important;
}
.login-brand-caption,
.register-brand-caption {
    color: #E4C783 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
}
.login-card,
.register-card {
    min-width: 0 !important;
    padding: clamp(30px, 4vw, 54px) clamp(26px, 4vw, 58px) !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
    align-self: stretch !important;
}
.login-card-head,
.register-card-head {
    margin: 0 0 28px !important;
}
.login-card-head .login-kicker,
.register-card-head .register-kicker {
    color: #A47B36 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 2.3px !important;
}
.login-card-head h2,
.register-card-head h2 {
    color: #3B2A1B !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(30px, 3vw, 38px) !important;
    font-weight: 500 !important;
    letter-spacing: -.5px !important;
    margin: 8px 0 10px !important;
    line-height: 1.15 !important;
}
.login-card-head p,
.register-card-head p {
    color: #756454 !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    margin: 0 !important;
}
.login-field,
.register-field {
    margin: 0 0 20px !important;
}
.login-field label,
.register-field label {
    color: #493522 !important;
    display: block !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    margin: 0 0 8px !important;
}
.login-field input,
.register-field input,
.login-password-wrap input,
.register-password-wrap input {
    width: 100% !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
    border: 1px solid #E3D9C9 !important;
    border-radius: 8px !important;
    background: #FFFEFC !important;
    color: #302216 !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    outline: none !important;
    box-shadow: 0 1px 2px rgba(59,42,27,.025) !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
.login-field input:focus,
.register-field input:focus,
.login-password-wrap input:focus,
.register-password-wrap input:focus {
    border-color: #C7A15A !important;
    background: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(199,161,90,.17) !important;
}
.login-submit,
.register-submit {
    width: 100% !important;
    min-height: 49px !important;
    border: 1px solid #C7A15A !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #D5B36A, #BD9145) !important;
    color: #302216 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 1.5px !important;
    box-shadow: 0 8px 18px rgba(167,123,54,.16) !important;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
.login-submit:hover,
.register-submit:hover {
    background: linear-gradient(135deg, #E0C27D, #C7A15A) !important;
    color: #302216 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px rgba(167,123,54,.22) !important;
}
.login-divider,
.register-divider {
    color: #A39480 !important;
    margin: 22px 0 !important;
    font-size: 10px !important;
    letter-spacing: 1.2px !important;
}
.login-divider::before,
.login-divider::after,
.register-divider::before,
.register-divider::after {
    background: #EDE5D9 !important;
}
.login-register-btn,
.google-login-btn,
.google-register-btn {
    min-height: 46px !important;
    border-radius: 8px !important;
    border: 1px solid #E2D8C8 !important;
    background: #FFFFFF !important;
    color: #493522 !important;
    font-weight: 700 !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease !important;
}
.login-register-btn:hover,
.google-login-btn:hover,
.google-register-btn:hover {
    border-color: #C7A15A !important;
    background: #FBF8F2 !important;
    transform: translateY(-1px) !important;
}
.login-forgot-link,
.register-login-link a {
    color: #936B2D !important;
    font-weight: 700 !important;
}
.login-back,
.register-back {
    color: #756454 !important;
}
.login-back:hover,
.register-back:hover {
    color: #936B2D !important;
}
.login-options,
.login-password-wrap,
.register-password-wrap {
    min-width: 0 !important;
}
.login-password-wrap,
.register-password-wrap { position: relative !important; }
.password-toggle {
    color: #80694B !important;
}
.register-password-help {
    color: #756454 !important;
    background: #FBF8F2 !important;
    border: 1px solid #EEE3D2 !important;
    border-radius: 7px !important;
    padding: 10px 12px !important;
    line-height: 1.6 !important;
}
.google-g {
    border-radius: 50% !important;
    background: #FBF8F2 !important;
    border: 1px solid #EDE5D9 !important;
}
.login-message,
.register-message,
.google-message {
    overflow-wrap: anywhere !important;
}
@media (max-width: 850px) {
    .login-page, .register-page { padding: 24px 14px 34px !important; }
    .login-shell, .register-shell {
        grid-template-columns: 1fr !important;
        max-width: 560px !important;
        border-radius: 18px !important;
    }
    .login-brand-panel, .register-brand-panel {
        min-height: 0 !important;
        padding: 30px 30px 34px !important;
    }
    .login-brand, .register-brand { margin-bottom: 24px !important; width: 190px !important; }
    .login-brand img, .register-brand img { max-width: 190px !important; max-height: 66px !important; }
    .login-brand-copy h1, .register-brand-copy h1 { font-size: 34px !important; }
    .login-brand-copy p, .register-brand-copy p { max-width: 460px !important; }
    .login-card, .register-card { padding: 32px clamp(22px, 6vw, 42px) 38px !important; }
}
@media (max-width: 480px) {
    .login-page, .register-page { padding: 16px 10px 24px !important; }
    .login-shell, .register-shell { border-radius: 14px !important; }
    .login-brand-panel, .register-brand-panel { padding: 25px 22px 28px !important; }
    .login-brand, .register-brand { width: 165px !important; margin-bottom: 20px !important; }
    .login-brand img, .register-brand img { max-width: 165px !important; max-height: 58px !important; }
    .login-brand-copy h1, .register-brand-copy h1 { font-size: 30px !important; }
    .login-card, .register-card { padding: 28px 20px 30px !important; }
}



/* Account-page first-viewport alignment: move the brand content upward */
@media (min-width: 851px) {
    .login-brand-panel,
    .register-brand-panel {
        justify-content: flex-start !important;
        padding-top: clamp(28px, 4.5vh, 48px) !important;
        padding-bottom: 28px !important;
    }
    .login-brand,
    .register-brand {
        margin-top: 0 !important;
        margin-bottom: clamp(22px, 3.2vh, 34px) !important;
    }
    .login-brand-copy,
    .register-brand-copy {
        margin-top: 0 !important;
    }
    .login-brand-copy h1,
    .register-brand-copy h1 {
        margin-bottom: 12px !important;
    }
    .login-brand-copy p,
    .register-brand-copy p {
        line-height: 1.65 !important;
    }
    .login-brand-line,
    .register-brand-line {
        margin-top: 20px !important;
        margin-bottom: 12px !important;
    }
}
@media (max-width: 850px) {
    .login-brand-panel,
    .register-brand-panel {
        justify-content: flex-start !important;
        padding-top: 26px !important;
        padding-bottom: 26px !important;
    }
    .login-brand,
    .register-brand {
        margin-top: 0 !important;
        margin-bottom: 20px !important;
    }
}


/* Premium account-brand panel: refined content fills lower space without clutter. */
.login-brand-panel,
.register-brand-panel {
    position: relative !important;
    overflow: hidden !important;
}
.login-brand-panel::after,
.register-brand-panel::after {
    display: none !important; /* remove the vertical border-like accent */
}
.login-brand,
.register-brand {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
.login-brand img,
.register-brand img {
    width: min(100%, 250px) !important;
    max-width: 250px !important;
    max-height: 78px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    image-rendering: auto !important;
}
.account-brand-details {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 390px;
    margin-top: clamp(34px, 6vh, 72px);
    padding-top: 22px;
    border-top: 1px solid rgba(228,199,131,.23);
}
.account-brand-details-rule {
    width: 34px;
    height: 2px;
    background: linear-gradient(90deg,#E4C783,#C7A15A);
    margin: 0 0 16px;
}
.account-brand-details-title {
    margin: 0 0 9px !important;
    color: #FFF9EE !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(20px, 2vw, 26px) !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    letter-spacing: -.2px !important;
}
.account-brand-details-copy {
    margin: 0 !important;
    color: rgba(255,249,238,.73) !important;
    font-size: 11px !important;
    line-height: 1.9 !important;
    letter-spacing: .35px !important;
}
.account-brand-details-copy span {
    color: #E4C783;
    padding: 0 5px;
}
.account-brand-signature {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 26px;
    color: #D9B76F;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 2px;
}
.account-brand-signature-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border: 1px solid rgba(228,199,131,.55);
    border-radius: 50%;
    color: #E4C783;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
}
@media (max-width: 850px) {
    .login-brand img,
    .register-brand img {
        max-width: 210px !important;
        max-height: 66px !important;
    }
    .account-brand-details {
        margin-top: 26px;
        padding-top: 18px;
    }
    .account-brand-signature { margin-top: 18px; }
}
@media (max-width: 480px) {
    .login-brand img,
    .register-brand img {
        max-width: 185px !important;
        max-height: 58px !important;
    }
    .account-brand-details-title { font-size: 21px !important; }
    .account-brand-details-copy { font-size: 10px !important; }
}


/* NOOPURA CHECKOUT VALIDATION ICON/TEXT ALIGNMENT FIX
   Keep the error icon in its own left gutter; text starts after the icon.
   This override comes last to beat older checkout error padding rules. */
.checkout-result.checkout-error,
.checkout-result.is-error {
    display: block !important;
    position: relative !important;
    box-sizing: border-box !important;
    padding: 15px 20px 15px 58px !important;
    text-indent: 0 !important;
    overflow-wrap: anywhere;
}
.checkout-result.checkout-error::before,
.checkout-result.is-error::before {
    left: 18px !important;
    right: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
}
@media (max-width: 600px) {
    .checkout-result.checkout-error,
    .checkout-result.is-error {
        padding: 13px 14px 13px 51px !important;
    }
    .checkout-result.checkout-error::before,
    .checkout-result.is-error::before {
        left: 15px !important;
    }
}
