/* Ramki Cards — premium invitation-boutique theme.
   Strictly a presentation layer: original PHP, URLs, queries and JS remain intact. */
:root{--maroon:#650e25;--maroon-dark:#440b1d;--gold:#bf8438;--gold-light:#f7db9f;--cream:#fffaf2;--soft-cream:#f8f0e5;--text-dark:#301d24;--muted:#77676b;--shadow:0 8px 25px rgba(58,24,30,.08);--soft-shadow:0 5px 16px rgba(58,24,30,.07);--radius:9px}
html{scroll-padding-top:24px}body{background:#fffdf9!important;color:#30272b!important;overflow-x:hidden}body .container{width:min(1280px,calc(100% - 60px));max-width:1280px;margin-inline:auto;padding:0}body a,body button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}body a:focus-visible,body button:focus-visible,body input:focus-visible,body select:focus-visible,body textarea:focus-visible{outline:3px solid #ca974c;outline-offset:2px}
/* slim announcement strip and full-width maroon navigation; header is never sticky */
body .top-strip{height:34px!important;min-height:34px!important;background:#fff9ee!important;border-bottom:1px solid #ecdbbf;overflow:hidden}body .top-strip-content{height:34px!important;align-items:center!important}body .top-strip-content span{color:#6c2030!important;font-size:11px!important;font-weight:600!important}body header{position:relative!important;inset:auto!important;transform:none!important;background:linear-gradient(100deg,#4c0d20 0%,#750f29 60%,#510a1e 100%)!important;color:#fff;border-bottom:0!important;box-shadow:none!important;z-index:40!important}body header .navbar{height:auto!important;min-height:82px!important;gap:22px}body header nav ul{gap:clamp(12px,2.1vw,34px)}body header nav a,body header nav ul li a{color:#fff8f3!important;font:600 13px/1.5 Poppins,sans-serif!important;letter-spacing:0!important}body header nav a:hover,body header nav a:focus-visible{color:#f7cf8d!important}body header .brand-logo{width:clamp(66px,10vw,152px)!important;height:62px!important;overflow:visible!important;filter:none!important}body header .brand-logo img{object-fit:contain!important;max-height:62px;filter:brightness(0) invert(1)}body header .store-nav-actions{gap:12px;align-items:center}body header .quote-btn,body header .store-account-trigger{background:transparent!important;color:#fff!important;border:1px solid #ffffff65!important;box-shadow:none!important;border-radius:6px!important;padding:10px 13px!important}body header .quote-btn:hover,body header .store-account-trigger:hover{border-color:#f2c574!important;background:#ffffff15!important}body header .store-account-dropdown{background:#fffdf8!important;color:#38242c!important}body header .store-account-dropdown a{color:#422d33!important}body header .mobile-menu{border-color:#e7c3ab!important;color:#fff!important}
/* hero: image supplied by CMS stays untouched */
body .hero{min-height:clamp(480px,46vw,630px)!important;background-size:cover!important;background-position:center!important;isolation:isolate}body .hero::after{background:linear-gradient(90deg,rgba(255,250,243,.96) 0%,rgba(255,248,238,.91) 28%,rgba(255,249,239,.35) 53%,rgba(255,250,242,0) 77%)!important}body .hero-grid{min-height:inherit!important;align-items:center!important}body .hero-content{max-width:min(620px,54%)!important;padding:60px 0!important;position:relative;z-index:2}body .hero-content .eyebrow{color:#a7662b!important;font-size:11px!important;letter-spacing:.15em!important;text-transform:uppercase}body .hero-content h2{font-family:'Playfair Display','Noto Sans Tamil',serif!important;font-weight:700!important;line-height:1.22!important;font-size:clamp(32px,3.7vw,57px)!important;color:#5c1025!important;overflow-wrap:break-word}body .hero-content h2 span{color:#5c1025!important}body .hero-content p{max-width:490px;font-size:15px!important;line-height:1.75!important;color:#4b3c40!important}body .hero-buttons{gap:14px!important;flex-wrap:wrap!important}body .primary-btn,body .secondary-btn{min-height:46px;border-radius:5px!important;font-size:12px!important;letter-spacing:0!important;padding:12px 23px!important}body .primary-btn{background:#690e27!important;color:#fff!important;box-shadow:0 7px 14px #61112725!important}body .secondary-btn{background:#fffdf9cf!important;color:#67182b!important;border:1px solid #b88465!important}body .primary-btn:hover{background:#480b1b!important}body .secondary-btn:hover{background:#fff0df!important}body .hero-features{display:flex;gap:12px!important;flex-wrap:wrap!important;margin-top:24px!important}body .hero-features .mini-feature{background:#fffffff0!important;border:1px solid #f0e3d7!important;box-shadow:0 4px 15px #4c192018!important;border-radius:7px!important;min-width:0;flex:0 1 170px;padding:10px!important}body .mini-feature h4{font-size:11px!important}body .mini-feature p{font-size:10px!important}body .mini-feature .icon{background:#fff6e7!important;color:#b27935!important}
/* whitespace, section headings and category cards */
body .section{padding:clamp(50px,5.7vw,82px) 0!important}body .section-title{margin-bottom:clamp(25px,3vw,42px)!important;text-align:center}body .section-title span{font-size:11px!important;letter-spacing:.13em!important;color:#b17137!important}body .section-title h2{font-family:'Playfair Display','Noto Sans Tamil',Georgia,serif!important;color:#5a1329!important;font-size:clamp(30px,3.1vw,43px)!important;font-weight:700!important;line-height:1.25!important}body .section-title em{color:#76162f!important}body .home-categories{background:linear-gradient(180deg,#fff9ee,#fbf5ea)!important}body .category-carousel .collection-card{background:#fff!important;box-shadow:0 5px 20px #5b2f2310!important;border:1px solid #eee3d7!important;border-radius:8px!important;overflow:hidden!important}body .category-carousel .collection-img{height:auto!important;aspect-ratio:1.18!important;overflow:hidden!important}body .category-carousel .collection-img img{height:100%!important;width:100%!important;object-fit:cover!important}body .category-carousel .collection-card h3{font-family:'Playfair Display',Georgia,serif!important;font-size:16px!important;color:#501e2b!important}body .category-carousel-button{background:#fff!important;border:1px solid #edddd2!important;color:#7d1233!important}
/* product cards: retain images and all functional favourite/cart/enquiry markup */
body .home-products{background:#fffdfa!important}body .home-products .products-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:25px!important;align-items:stretch!important}body .home-products .product-card,body .home-products .product-card.glass-card{position:relative!important;min-width:0!important;width:100%!important;display:flex!important;flex-direction:column!important;background:#fff!important;border:1px solid #eee6df!important;box-shadow:0 6px 18px #3b20200d!important;border-radius:8px!important;overflow:hidden!important;transform:none!important}body .home-products .product-card>a{display:block;min-width:0;width:100%}body .home-products .product-img{height:auto!important;aspect-ratio:1.33!important;border-radius:0!important;overflow:hidden!important;background:#f5eadb!important;display:flex;align-items:center;justify-content:center}body .home-products .product-img img{height:100%!important;width:100%!important;object-fit:contain!important;object-position:center!important;max-width:100%;max-height:100%;transform:none!important}body .home-products .product-body{width:100%!important;min-width:0!important;flex:1;display:flex!important;flex-direction:column!important;padding:13px 15px 16px!important;text-align:center!important}body .home-products .product-name-english,body .home-products .product-body h3{font:600 14px/1.48 'Playfair Display',Georgia,serif!important;color:#442a33!important;min-height:2.8em!important;margin:0 0 5px!important;overflow-wrap:anywhere!important}body .home-products .product-name-tamil{font-size:11px!important;line-height:1.45!important;color:#777!important;overflow-wrap:anywhere!important}body .home-products .price{color:#94172c!important;font-size:17px!important;margin:9px 0!important;font-weight:700!important}body .home-products .moq-note{font-size:10px!important;color:#928582!important}body .home-products .product-actions{margin-top:auto!important;padding-top:14px!important}body .home-products .product-action-btn{min-height:40px!important;width:100%!important;padding:9px 7px!important;border:1px solid #d4a57f!important;border-radius:5px!important;background:#fff!important;color:#651d30!important;font-weight:600!important;font-size:11px!important;white-space:normal!important}body .home-products .product-action-btn:hover{background:#6c102b!important;color:#fff!important}body .home-products .badge{top:9px!important;left:9px!important;border-radius:4px!important;background:#8b1732!important;padding:5px 10px!important}body .rk-favourite-button{z-index:5!important}
/* discovery + credibility + testimonial panels */
body .home-discovery-section{padding:18px 0 62px!important;background:#fffdfa!important}body .home-discovery-grid{gap:22px!important}body .home-discovery-card{min-height:260px!important;border-radius:8px!important;box-shadow:0 6px 20px #4d263012!important;overflow:hidden}body .home-discovery-card h2{font:700 clamp(27px,2.8vw,40px)/1.2 'Playfair Display',Georgia,serif!important}body .home-discovery-services{background-color:#fbf0df!important}body .home-discovery-gallery{background-color:#750c29!important}body .feature-card,body .testimonial-card{background:#fff!important;border:1px solid #f0e8e2!important;border-radius:8px!important;box-shadow:0 5px 20px #48212d0c!important}body .feature-card{min-width:0!important}body .feature-icon{color:#b67b2e!important}body .testimonial-contact{background:linear-gradient(180deg,#fffdf9,#fcf3e8)!important}body .testimonial-card{padding:24px!important}body .testimonials-grid{gap:20px!important}
/* forms, price controls and internal pages share one luxury vocabulary */
body .contact-grid{align-items:start!important;gap:20px!important}body .enquiry-card,body .contact-card,body .whatsapp-card{border-radius:8px!important;background:#fff!important;border:1px solid #eee3d6!important;box-shadow:0 5px 20px #48212d0c!important}body .form-group input,body .form-group select,body .form-group textarea,body .store-page input:not([type=checkbox]):not([type=radio]),body .store-page select,body .store-page textarea{background:#fff!important;border:1px solid #e5d9cf!important;border-radius:5px!important;color:#37282a!important}body .form-group input:focus,body .form-group select:focus,body .form-group textarea:focus{border-color:#b7854c!important}body .store-page h1,body .store-page h2,body .product-marketplace-page h1,body .product-detail-grid h1{font-family:'Playfair Display','Noto Sans Tamil',Georgia,serif!important;color:#56152c}body .store-page,body .product-marketplace-page{background:#fffdf9}body .store-page .glass-card,body .product-marketplace-page .glass-card{border-radius:8px!important}body .rk-royal-catalogue{background:#fffdf9!important}body .rk-royal-catalogue .rk-collection-hero{background:#f9f0e5!important}body .rk-royal-catalogue .catalog-products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}body .rk-royal-catalogue .catalog-products .product-card{min-width:0!important;background:#fff!important;border:1px solid #f0e3d9!important;border-radius:8px!important;overflow:hidden!important;box-shadow:0 5px 15px #48212d0d!important}body .rk-royal-catalogue .catalog-products .product-img{height:auto!important;aspect-ratio:1.15!important;background:#f8f1e8!important;overflow:hidden!important}body .rk-royal-catalogue .catalog-products .product-img img{width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important}body .rk-royal-catalogue .catalog-products .product-body{padding:14px!important;text-align:center!important}body .rk-royal-catalogue .catalog-products .product-body h3{font:600 14px/1.4 'Playfair Display',Georgia,serif!important;overflow-wrap:anywhere}body .rk-royal-catalogue .catalog-products .product-action-btn{border-radius:5px!important}body .product-detail-grid,body .product-detail-grid>*{min-width:0!important}
/* Footer: no fixed-position navigation or hidden links */
body footer{position:relative!important;inset:auto!important;z-index:1!important;clear:both!important;background:linear-gradient(105deg,#490b20,#6f0d28 60%,#48091d)!important;color:#fff2e8!important}body footer a{color:#fff0e4!important}body footer a:hover{color:#f7c98b!important}body footer .footer-col h3{font:600 17px 'Playfair Display',Georgia,serif!important;color:#fff!important}body footer .footer-brand-logo{filter:brightness(0) invert(1)}body .copyright{border-top:1px solid #ffffff24!important}
@media(max-width:1080px){body .home-products .products-grid,body .rk-royal-catalogue .catalog-products{grid-template-columns:repeat(3,minmax(0,1fr))!important}body header nav ul{gap:13px}body .hero-content{max-width:60%!important}}
@media(max-width:780px){body .container{width:calc(100% - 34px)}body header .navbar{min-height:70px!important}body header .brand-logo{width:92px!important;height:48px!important}body header .brand-logo img{max-height:48px}body .hero{min-height:560px!important;background-position:59% center!important}body .hero-content{max-width:80%!important;padding:56px 0!important}body .hero::after{background:linear-gradient(90deg,#fffaf4f7,#fffaf4d9 50%,#fffaf451)!important}body .home-products .products-grid,body .rk-royal-catalogue .catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:15px!important}body .home-discovery-grid{grid-template-columns:1fr!important}body .section{padding:53px 0!important}}
@media(max-width:480px){body .container{width:calc(100% - 28px)}body .hero{min-height:510px!important;background-position:64% center!important}body .hero-content{max-width:95%!important;padding:45px 0!important}body .hero-content h2{font-size:clamp(29px,8.6vw,38px)!important}body .hero-content p{font-size:12px!important}body .hero-features .mini-feature{flex:1 1 90px;padding:8px!important}body .hero-features .mini-feature h4{font-size:9px!important}body .hero-features .mini-feature p{font-size:8px!important}body .home-products .product-body{padding:10px!important}body .home-products .product-body h3{font-size:12px!important}body .home-products .product-name-tamil{font-size:10px!important}body .home-products .price{font-size:14px!important}body .home-products .product-action-btn{font-size:10px!important}body .home-products .product-img{aspect-ratio:1!important}body .section-title h2{font-size:29px!important}}
@media(prefers-reduced-motion:reduce){body *,body *::before,body *::after{scroll-behavior:auto!important;animation-duration:20000ms!important;transition-duration:.01ms!important}}


/* === Floral landing-page refinement (Oct 2026) === */
body .home-categories,
body .home-products,
body .home-discovery-section,
body #why,
body .testimonial-contact,
body footer {
    position: relative;
    overflow: visible !important;
}

body .home-categories .container,
body .home-products .container,
body .home-discovery-section .container,
body #why .container,
body .testimonial-contact .container,
body footer .container {
    position: relative;
    z-index: 1;
}

body .home-categories::before,
body .home-products::before,
body .home-discovery-section::before,
body #why::before,
body .testimonial-contact::before,
body footer::before,
body .home-categories::after,
body .home-products::after,
body .home-discovery-section::after,
body #why::after,
body .testimonial-contact::after,
body footer::after {
    content: "";
    position: absolute;
    z-index: 0;
    pointer-events: none;
    background: url('../images/floral-corner-left.svg') no-repeat center/contain;
    opacity: .96;
    filter: drop-shadow(0 8px 16px rgba(116, 53, 35, .08));
}

body .home-categories::before {
    width: 248px;
    height: 248px;
    left: -62px;
    top: 150px;
}

body .home-products::before {
    width: 258px;
    height: 258px;
    left: -66px;
    bottom: 92px;
}

body .home-discovery-section::before {
    width: 168px;
    height: 168px;
    right: -36px;
    bottom: -6px;
    transform: scaleX(-1) rotate(10deg);
    opacity: .8;
}

body #why::before {
    width: 196px;
    height: 196px;
    left: -46px;
    top: 40px;
    opacity: .74;
}

body .testimonial-contact::before {
    width: 238px;
    height: 238px;
    left: -58px;
    top: 178px;
    opacity: .95;
}

body footer::before {
    width: 182px;
    height: 182px;
    right: -28px;
    bottom: 24px;
    transform: scaleX(-1) rotate(-6deg);
    opacity: .5;
}

body .home-products::after {
    width: 168px;
    height: 168px;
    right: -30px;
    bottom: 258px;
    transform: scaleX(-1) rotate(-8deg);
    opacity: .74;
}

body .testimonial-contact::after {
    width: 152px;
    height: 152px;
    right: -22px;
    bottom: 198px;
    transform: scaleX(-1);
    opacity: .62;
}

body .section-title .decor-line {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 12px;
}

body .section-title .decor-line::before,
body .section-title .decor-line::after {
    content: "";
    width: 42px;
    height: 1.5px;
    background: linear-gradient(90deg, rgba(210,162,88,0), rgba(210,162,88,.85), rgba(210,162,88,0));
}

body .section-title .decor-line i {
    display: block;
    width: 9px;
    height: 9px;
    transform: rotate(45deg);
    border-radius: 2px;
    background: linear-gradient(135deg, #f4de9c 0%, #d19b4d 40%, #8f5d1d 100%);
    box-shadow: 0 0 0 4px rgba(255, 248, 233, .9);
}

body .section-title span {
    position: relative;
    display: inline-block;
    padding: 0 1px;
}

body .section-title h2 {
    text-shadow: 0 1px 0 rgba(255,255,255,.65);
}

body .home-discovery-card {
    position: relative;
    overflow: hidden;
}

body .home-discovery-services::before,
body .home-discovery-gallery::before {
    content: "";
    position: absolute;
    inset: auto -22px -22px auto;
    width: 164px;
    height: 164px;
    border: 1px solid rgba(210, 171, 111, .22);
    border-radius: 50%;
}

body .home-discovery-services::after {
    content: "";
    position: absolute;
    left: 18px;
    bottom: 18px;
    width: 138px;
    height: 138px;
    background: url('../images/floral-corner-left.svg') no-repeat center/contain;
    opacity: .28;
}

body .home-discovery-gallery::after {
    content: "";
    position: absolute;
    right: 8px;
    bottom: 6px;
    width: 116px;
    height: 116px;
    background: url('../images/floral-corner-left.svg') no-repeat center/contain;
    transform: scaleX(-1);
    opacity: .24;
}

body .category-carousel .collection-card,
body .home-products .product-card,
body .feature-card,
body .testimonial-card,
body .enquiry-card,
body .info-card,
body .whatsapp-card {
    backdrop-filter: blur(2px);
}

body .home-categories,
body .home-products,
body .testimonial-contact {
    background-image:
        radial-gradient(circle at 14% 10%, rgba(255,255,255,.65), rgba(255,255,255,0) 38%),
        linear-gradient(180deg, #fffdf8 0%, #fcf7ef 100%) !important;
}

body .home-products .product-card,
body .home-products .product-card.glass-card {
    border-color: rgba(172, 120, 66, .18) !important;
}

body .testimonials-grid {
    position: relative;
}

@media (max-width: 980px) {
    body .home-categories::before,
    body .home-products::before,
    body .testimonial-contact::before { width: 168px; height: 168px; left: -36px; }
    body .home-products::after,
    body .testimonial-contact::after,
    body .home-discovery-section::before { width: 116px; height: 116px; right: -12px; }
}

@media (max-width: 780px) {
    body .home-categories::before,
    body .home-products::before,
    body .home-products::after,
    body .home-discovery-section::before,
    body #why::before,
    body .testimonial-contact::before,
    body .testimonial-contact::after,
    body footer::before {
        width: 112px;
        height: 112px;
        opacity: .42;
    }
    body .home-categories::before { left: -34px; top: 214px; }
    body .home-products::before { left: -32px; bottom: 180px; }
    body .home-products::after { right: -24px; bottom: 104px; }
    body .testimonial-contact::before { top: auto; bottom: 320px; }
}

/* Brand caption beside the original logo; scoped to the shared navigation. */
body header .navbar > .brand { display: inline-flex !important; align-items: center !important; gap: 12px !important; flex: 0 0 auto; text-decoration: none !important; min-width: 0; }
body header .navbar > .brand .brand-logo { flex: 0 0 auto; }
body header .ramki-brand-caption { display: flex; flex-direction: column; justify-content: center; min-width: 0; line-height: 1.15; white-space: nowrap; }
body header .ramki-brand-caption strong { font-family: 'Playfair Display', Georgia, serif; font-size: clamp(16px, 1.45vw, 21px); font-weight: 700; letter-spacing: .02em; color: #66152a; }
body header .ramki-brand-caption small { margin-top: 4px; font-family: Poppins, Arial, sans-serif; font-size: clamp(9px, .8vw, 11px); letter-spacing: .025em; font-weight: 500; color: #a97136; }
@media (max-width: 1100px) { body header .navbar > .brand { gap: 7px !important; } body header .ramki-brand-caption strong { font-size: 16px; } body header .ramki-brand-caption small { font-size: 9px; } }
@media (max-width: 620px) { body header .ramki-brand-caption strong { font-size: 14px; } body header .ramki-brand-caption small { font-size: 8px; } body header .navbar > .brand .brand-logo { width: 72px !important; } }
@media (max-width: 390px) { body header .ramki-brand-caption small { max-width: 90px; white-space: normal; } }

/* Hero heading overlap correction — presentation only, no markup changes. */
@media (min-width: 981px) {
  body .hero .hero-content {
    box-sizing: border-box;
    width: 45% !important;
    max-width: 570px !important;
    min-width: 0 !important;
    padding-right: 16px !important;
  }
  body .hero .hero-content h1,
  body .hero .hero-content h2 {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    font-size: clamp(31px, 3.12vw, 46px) !important;
    line-height: 1.22 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  body .hero .hero-content h1 span,
  body .hero .hero-content h2 span {
    overflow-wrap: anywhere !important;
  }
  body .hero .hero-content p { max-width: 94% !important; }
}
@media (min-width: 781px) and (max-width: 980px) {
  body .hero .hero-content { width: 51% !important; max-width: 51% !important; min-width: 0 !important; }
  body .hero .hero-content h1,
  body .hero .hero-content h2 { font-size: clamp(29px, 3.5vw, 36px) !important; line-height: 1.25 !important; overflow-wrap: anywhere !important; }
}
@media (max-width: 780px) {
  body .hero .hero-content h1,
  body .hero .hero-content h2 { max-width: 100% !important; overflow-wrap: anywhere !important; }
}

/* Ramki hero: hard boundary before invitation artwork on desktop. */
@media (min-width: 1100px) {
  body .hero .hero-grid .hero-content {
    flex: 0 0 390px !important;
    width: 390px !important;
    max-width: 390px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding-right: 5px !important;
  }
  body .hero .hero-grid .hero-content h1,
  body .hero .hero-grid .hero-content h2 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 37px !important;
    line-height: 1.21 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-wrap: wrap !important;
  }
  body .hero .hero-grid .hero-content h1 span,
  body .hero .hero-grid .hero-content h2 span {
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }
  body .hero .hero-grid .hero-content > p { max-width: 385px !important; }
}
@media (min-width: 781px) and (max-width: 1099px) {
  body .hero .hero-grid .hero-content {
    width: 39% !important;
    max-width: 39% !important;
    min-width: 0 !important;
  }
  body .hero .hero-grid .hero-content h1,
  body .hero .hero-grid .hero-content h2 {
    font-size: clamp(27px, 3.1vw, 34px) !important;
    line-height: 1.23 !important;
    overflow-wrap: anywhere !important;
  }
}
