/*
Theme Name: Rangoli Mobile
Theme URI: https://rangolimobile.online/
Author: OpenAI
Description: Rangoli Mobile branded shop theme with supplied banner and rangoli background, product showcase, WhatsApp ordering, store directions, contact details, blog templates, and custom 404 page.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: rangolimobile-business
*/
:root{--rm-primary:#123c69;--rm-secondary:#f4a261;--rm-ink:#172033;--rm-muted:#667085;--rm-bg:#f7f9fc;--rm-white:#fff;--rm-border:#e5eaf1;--rm-radius:18px;--rm-shadow:0 12px 34px rgba(18,60,105,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--rm-white);color:var(--rm-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:var(--rm-primary);text-decoration:none}a:hover{color:#0a2948}img{max-width:100%;height:auto}button,input,textarea{font:inherit}.rm-container{width:min(1160px,calc(100% - 36px));margin-inline:auto}.rm-topbar{background:#0b2745;color:#dce8f5;font-size:13px;padding:8px 0}.rm-topbar .rm-container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.rm-header{background:#fff;border-bottom:1px solid var(--rm-border);position:sticky;top:0;z-index:50}.rm-navrow{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.rm-brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;color:var(--rm-primary);letter-spacing:-.4px}.rm-brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(135deg,var(--rm-primary),#2c6aa0);color:#fff;font-size:19px}.rm-menu{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.rm-menu a{font-size:14px;font-weight:650;color:#29364b}.rm-menu a:hover{color:var(--rm-secondary)}.rm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--rm-secondary);color:#172033!important;border:0;border-radius:999px;padding:12px 21px;font-weight:800;box-shadow:0 6px 18px rgba(244,162,97,.2);transition:transform .2s,filter .2s}.rm-btn:hover{transform:translateY(-2px);filter:brightness(.98)}.rm-btn-outline{background:transparent;border:1px solid rgba(255,255,255,.55);color:#fff!important;box-shadow:none}.rm-hero{overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(244,162,97,.22),transparent 28%),linear-gradient(120deg,#0b2745,#174f7d);color:#fff;padding:88px 0 82px}.rm-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.rm-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.rm-hero h1{font-size:clamp(38px,5vw,62px);line-height:1.08;letter-spacing:-2px;margin:22px 0}.rm-hero p{font-size:18px;line-height:1.8;color:#e0eaf5;max-width:620px}.rm-hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.rm-hero-art{min-height:350px;border:1px solid rgba(255,255,255,.22);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.04));display:grid;place-items:center;position:relative;padding:28px}.rm-device{width:min(260px,100%);aspect-ratio: .62;border:8px solid #101a29;border-radius:34px;background:linear-gradient(160deg,#eaf5ff,#fff 60%,#ffe1c6);box-shadow:0 28px 70px rgba(0,0,0,.28);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--rm-primary);text-align:center;padding:18px;transform:rotate(-5deg)}.rm-device .rm-device-icon{font-size:58px}.rm-device strong{font-size:24px;line-height:1.1}.rm-device small{margin-top:10px;color:#53647a}.rm-float-card{position:absolute;background:#fff;color:var(--rm-ink);border-radius:15px;padding:13px 17px;box-shadow:var(--rm-shadow);font-weight:750}.rm-float-one{left:0;top:40px}.rm-float-two{right:0;bottom:38px}.rm-section{padding:78px 0}.rm-section-soft{background:var(--rm-bg)}.rm-section-head{text-align:center;max-width:720px;margin:0 auto 38px}.rm-kicker{color:#b96a2b;font-size:12px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase}.rm-section h2{font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-1px;margin:10px 0 14px}.rm-section-head p{color:var(--rm-muted);margin:0}.rm-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rm-card{border:1px solid var(--rm-border);border-radius:var(--rm-radius);background:#fff;padding:27px;box-shadow:0 4px 20px rgba(18,60,105,.035);height:100%;transition:transform .2s,box-shadow .2s}.rm-card:hover{transform:translateY(-4px);box-shadow:var(--rm-shadow)}.rm-iconbox{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#eaf2fa;color:var(--rm-primary);font-size:25px;margin-bottom:18px}.rm-card h3{font-size:20px;margin:0 0 9px}.rm-card p{color:var(--rm-muted);margin:0 0 15px}.rm-text-link{font-weight:800;font-size:14px}.rm-split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.rm-feature-panel{padding:32px;border-radius:25px;background:linear-gradient(135deg,#eaf2fa,#fff4e9);min-height:310px;display:flex;flex-direction:column;justify-content:center}.rm-checklist{list-style:none;padding:0;margin:22px 0 0}.rm-checklist li{margin:12px 0;display:flex;gap:10px;align-items:flex-start}.rm-check{color:#198754;font-weight:900}.rm-statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:26px}.rm-stat{background:#fff;border:1px solid var(--rm-border);padding:17px;border-radius:15px}.rm-stat strong{display:block;color:var(--rm-primary);font-size:25px}.rm-stat span{font-size:12px;color:var(--rm-muted)}.rm-cta{background:linear-gradient(120deg,#0b2745,#174f7d);color:#fff;border-radius:26px;padding:44px;display:flex;align-items:center;justify-content:space-between;gap:24px}.rm-cta h2{margin:0 0 8px}.rm-cta p{margin:0;color:#dce8f5}.rm-footer{background:#081d33;color:#dce8f5;padding:48px 0 20px}.rm-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}.rm-footer h3{color:#fff;font-size:16px}.rm-footer a{color:#dce8f5}.rm-footer p,.rm-footer li{font-size:14px;color:#b9c9d9}.rm-footer ul{padding-left:18px}.rm-footer-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:32px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:13px;color:#b9c9d9}.rm-content{padding:54px 0 76px;min-height:50vh}.rm-content h1,.rm-content h2,.rm-content h3{line-height:1.25}.rm-content article{max-width:850px;margin:auto}.rm-post-meta{font-size:13px;color:var(--rm-muted);margin:10px 0 25px}.rm-post-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.rm-post-list article{border:1px solid var(--rm-border);border-radius:18px;padding:24px}.rm-404{text-align:center;padding:90px 0}.rm-404 .rm-number{font-size:clamp(80px,15vw,150px);font-weight:900;line-height:1;color:#e6edf5}.rm-mobile-toggle{display:none;background:#f2f6fa;border:0;border-radius:10px;padding:10px 13px;font-size:20px}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden}.alignwide{max-width:1100px;margin-left:auto;margin-right:auto}.alignfull{width:100%;max-width:none}.wp-caption{max-width:100%}.gallery{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:900px){.rm-hero-grid,.rm-split{grid-template-columns:1fr}.rm-hero{padding:62px 0}.rm-hero-art{min-height:300px}.rm-grid-3{grid-template-columns:repeat(2,1fr)}.rm-menu{gap:14px}.rm-footer-grid{grid-template-columns:1fr 1fr}.rm-navrow>.rm-btn{display:none}}
@media(max-width:650px){.rm-topbar .rm-container{justify-content:center;text-align:center}.rm-navrow{min-height:68px}.rm-mobile-toggle{display:block}.rm-menu-wrap{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--rm-border);padding:14px 20px 22px;box-shadow:var(--rm-shadow)}.rm-menu-wrap.is-open{display:block}.rm-menu{align-items:stretch;flex-direction:column;gap:0}.rm-menu li a{display:block;padding:11px 4px}.rm-hero h1{letter-spacing:-1.2px}.rm-hero p{font-size:16px}.rm-grid-3,.rm-post-list{grid-template-columns:1fr}.rm-section{padding:56px 0}.rm-cta{padding:28px;align-items:flex-start;flex-direction:column}.rm-footer-grid{grid-template-columns:1fr}.rm-statrow{grid-template-columns:1fr}.rm-float-one{left:-4px;top:20px}.rm-float-two{right:-4px;bottom:20px}}

/* Rangoli Mobile brand additions */
.rm-brand-banner{background:#fff;overflow:hidden;border-bottom:1px solid var(--rm-border)}
.rm-brand-banner img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center}
.rm-hero{background-image:linear-gradient(110deg,rgba(8,29,51,.88),rgba(18,60,105,.70)),url('assets/images/rangoli-pattern-background.jpeg');background-size:cover;background-position:center}
.rm-hero-art{background:rgba(255,255,255,.10)}
.rm-device{background:rgba(255,255,255,.94)}
.rm-contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.rm-contact-item{background:#fff;border:1px solid var(--rm-border);border-radius:16px;padding:20px;overflow-wrap:anywhere}
.rm-contact-item strong{display:block;margin-bottom:6px;color:var(--rm-primary)}
.rm-shop-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.rm-shop-actions .rm-btn-outline{color:var(--rm-primary)!important;border-color:var(--rm-primary)}
.rm-pattern-panel{background:linear-gradient(rgba(255,255,255,.90),rgba(255,255,255,.90)),url('assets/images/rangoli-pattern-background.jpeg') center/cover;border:1px solid var(--rm-border)}
@media(max-width:650px){.rm-brand-banner img{max-height:360px;object-fit:contain}.rm-contact-details{grid-template-columns:1fr}.rm-shop-actions{flex-direction:column;align-items:stretch}.rm-shop-actions .rm-btn{width:100%}}

/* Product catalogue section */
.rm-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rm-product-card{border:1px solid var(--rm-border);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 5px 24px rgba(18,60,105,.05);display:flex;flex-direction:column}
.rm-product-visual{min-height:170px;display:grid;place-items:center;background:linear-gradient(145deg,#edf5ff,#fff3e7);font-size:66px;color:var(--rm-primary);position:relative}
.rm-product-tag{position:absolute;top:14px;left:14px;border-radius:999px;background:#fff;padding:5px 10px;font-size:11px;font-weight:800;color:var(--rm-primary);border:1px solid var(--rm-border)}
.rm-product-info{padding:22px;display:flex;flex-direction:column;flex:1}
.rm-product-info h3{margin:0 0 8px;font-size:19px}
.rm-product-info p{margin:0 0 18px;color:var(--rm-muted);font-size:14px;flex:1}
.rm-product-info .rm-btn{width:100%;padding:10px 14px;font-size:13px}
.rm-product-note{color:var(--rm-muted);font-size:13px;text-align:center;margin:25px auto 0;max-width:780px}
@media(max-width:900px){.rm-product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.rm-product-grid{grid-template-columns:1fr}.rm-product-visual{min-height:150px}}

/* Added online sales and mobile service cards */
.rm-product-visual span[aria-hidden="true"]{line-height:1.2}

/* Professional layout refinements: compact brand mark and subtle rangoli texture */
.rm-brand-banner{background:#fff;border-bottom:1px solid var(--rm-border);overflow:hidden;padding:8px 18px}
.rm-brand-banner .rm-container{max-width:1160px!important;display:flex;align-items:center;justify-content:center}
.rm-brand-banner img{display:block;width:auto;max-width:min(100%,560px);height:112px;max-height:112px;object-fit:contain;object-position:center;margin:0 auto}
.rm-pattern-panel{background-color:#fff;background-image:linear-gradient(rgba(255,255,255,.94),rgba(255,255,255,.94)),url('assets/images/rangoli-pattern-background.jpeg');background-size:auto,210px 210px;background-repeat:repeat;background-position:center}
.rm-product-grid{align-items:stretch}
.rm-product-card{min-width:0}
.rm-product-visual{min-height:150px}
.rm-product-info .rm-btn{white-space:normal;text-align:center;min-height:44px}
@media(max-width:650px){
 .rm-brand-banner{padding:6px 12px}
 .rm-brand-banner img{height:78px;max-height:78px;max-width:100%}
 .rm-pattern-panel{background-size:auto,150px 150px}
 .rm-product-visual{min-height:135px}
}
