/* Approved ReTech photo concept. Only the home screen receives this presentation. */
#rt-photo-home { display:none; container-type:inline-size; container-name:rph; width:100%; max-width:1080px; margin:0 auto; color:#08112b; background:#fff; font-family:Arial,Helvetica,sans-serif; }
body[data-screen="home"] #rt-photo-home { display:block; }
body[data-screen="home"] { background:#f6f9f9!important; padding:0!important; }
body[data-screen="home"] > :is(.topline,.market-header,#main,.service-directory,#delhi-ncr-ac-pickup,.footer,.sticky-bar,.app-bottom-nav,.phase1-floating-contact,.rt-privacy-footer,#retech-cart-strip,#pickup-tray) { display:none!important; }
body[data-screen="home"] #rt-cookie-choice { bottom:86px; }
#rt-photo-home *, .rph-dialog * { box-sizing:border-box; }
#rt-photo-home :is(h1,h2,h3,p,ol) { margin:0; padding:0; }
#rt-photo-home :is(a,button,input),.rph-dialog :is(a,button) { font:inherit; }
#rt-photo-home a { color:inherit; }
#rt-photo-home button,.rph-dialog button { cursor:pointer; }
#rt-photo-home button { appearance:none; text-transform:none; letter-spacing:normal; }
#rt-photo-home :is(a,button,input):focus-visible,.rph-dialog :is(a,button):focus-visible { outline:3px solid #1451bb; outline-offset:3px; }
.rph-page { position:relative; }
.rph-icon { width:26px; height:26px; flex-shrink:0; vertical-align:middle; }
.rph-art { display:block; width:100%; height:100%; overflow:hidden; }
#rt-photo-home .rph-brand .rph-art { width:100%!important; height:100%!important; }
.rph-header { display:flex; align-items:center; gap:12px; min-height:62px; padding:6px 4.3cqi; border-bottom:1px solid #d8dce2; }
.rph-brand { display:block; width:clamp(126px,20cqi,182px); height:clamp(36px,5.3cqi,48px); flex-shrink:0; }
.rph-city { margin-left:auto; display:flex; align-items:center; justify-content:flex-end; gap:6px; border:0; background:none; color:#08112b; padding:8px 0 8px 6px; min-height:44px; font-size:clamp(13px,2.3cqi,22px)!important; font-weight:700!important; }
.rph-city>.rph-icon:first-child { color:#00998e; width:22px; height:25px; fill:#00998e; stroke:#fff; }
.rph-city>.rph-icon:last-child { width:18px; height:18px; }
.rph-account { padding:8px 0 8px 14px; border-left:1px solid #bcc2cb; min-width:44px; min-height:44px; display:grid; place-items:center; }
.rph-account .rph-icon { width:28px; height:28px; }
.rph-search { position:relative; display:flex; align-items:center; margin:0; padding:0; margin:0 4.3cqi 12px; min-height:48px; border:1px solid #cdd4dd; border-radius:12px; background:#f4f6f8; color:#383f4b; }
.rph-search>.rph-icon { margin-left:14px; width:23px; height:23px; }
.rph-search input { min-width:0; width:100%; border:0; color:#35383c; background:transparent; height:48px; padding:8px 10px; font-size:clamp(14px,2.4cqi,22px)!important; outline-offset:-3px!important; box-shadow:none; }
.rph-search input::placeholder { color:#55595d; opacity:1; }
.rph-search>button { display:none; }
.rph-search-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.rph-hero { background:#eaf8f3; }
.rph-hero-stage { position:relative; height:clamp(192px,30cqi,316px); overflow:hidden; background:linear-gradient(110deg,#e9f8f1,#f1fbf5); }
.rph-hero-image { position:absolute; inset:0 0 0 48%; overflow:hidden; }
.rph-hero-image .rph-art { object-fit:cover; }
.rph-hero-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#eaf8f3,rgba(234,248,243,.65) 10%,transparent 36%); }
.rph-hero-copy { position:relative; z-index:1; padding:clamp(16px,3.2cqi,35px) 4.3cqi 0; pointer-events:none; }
#rt-photo-home .rph-hero h1 { font-size:clamp(24px,5.25cqi,52px); font-weight:800; letter-spacing:-.9px; line-height:1.1; color:#071029; max-width:85%; }
#rt-photo-home .rph-hero-copy p { margin-top:clamp(12px,1.8cqi,18px); max-width:55%; font-size:clamp(13px,2.55cqi,25px); line-height:1.3; color:#272d30; }
.rph-hero-action { padding:10px 3.8cqi 16px; }
#rt-photo-home .rph-primary,.rph-dialog .rph-primary { display:flex; align-items:center; justify-content:center; min-height:48px; border:0; border-radius:10px; background:#008e84; color:#fff; text-decoration:none; font-size:clamp(19px,3.55cqi,34px); font-weight:800; line-height:1.15; padding:9px 16px; text-align:center; }
#rt-photo-home .rph-primary:hover { background:#007a72; }
#rt-photo-home .rph-hero-action>p { margin-top:10px; text-align:center; font-size:clamp(11px,1.92cqi,18px); line-height:1.4; color:#111923; }
.rph-categories { padding:16px 4.3cqi 18px; }
#rt-photo-home h2 { color:#08112b; font-size:clamp(21px,3.75cqi,36px); font-weight:800; line-height:1.15; letter-spacing:-.5px; }
.rph-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:16px; }
#rt-photo-home .rph-category { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; padding:7px 5px 9px; min-width:0; min-height:96px; border:1px solid #dce0e5; border-radius:15px; background:#fff; box-shadow:0 1px 3px #0a173316; color:#08112b; line-height:1.05; font-size:clamp(12px,2.45cqi,24px); font-weight:700; text-align:center; }
#rt-photo-home .rph-category:hover { border-color:#008e84; background:#fbfffd; }
.rph-category-image { width:100%; height:clamp(58px,13cqi,132px); display:block; margin-bottom:5px; }
.rph-category-image .rph-art { background:#fff; }
.rph-category>span:last-child { min-height:1.1em; }
.rph-trust { display:flex; align-items:center; justify-content:center; margin:0 2.7cqi; border-radius:14px; padding:12px 6px; background:#ecf9f4; }
.rph-trust>span { display:flex; justify-content:center; align-items:center; gap:9px; flex:1; min-width:0; padding:0 7px; }
.rph-trust>span+span { border-left:1px solid #a8c6bc; }
.rph-trust .rph-icon { width:clamp(22px,4.3cqi,39px); height:clamp(22px,4.3cqi,39px); color:#152327; }
.rph-trust strong { font-size:clamp(10px,2.2cqi,21px); color:#101817; line-height:1.15; }
.rph-how { padding:20px 4.3cqi 18px; }
#rt-photo-home .rph-how ol { margin-top:14px; list-style:none; }
.rph-how li { display:flex; align-items:center; gap:15px; padding:9px 10px; min-height:58px; }
.rph-how li+li { border-top:1px solid #d8dce2; }
.rph-number { display:grid; place-items:center; width:clamp(30px,4.6cqi,42px); height:clamp(30px,4.6cqi,42px); flex-shrink:0; background:#ffcf3c; color:#101512; border-radius:50%; font-weight:700; font-size:clamp(16px,2.3cqi,23px); }
#rt-photo-home h3 { font-size:clamp(15px,2.5cqi,24px); color:#101512; font-weight:700; letter-spacing:0; }
#rt-photo-home .rph-how li p { margin-top:2px; font-size:clamp(12px,2cqi,20px); color:#404447; line-height:1.2; }
.rph-business { position:relative; margin:0 2cqi 16px; min-height:clamp(132px,16cqi,178px); border-radius:14px; background:#e4f5ee; overflow:hidden; }
.rph-business-art { position:absolute; inset:0 0 0 61%; }
.rph-business-art .rph-art { width:100%; height:100%; }
.rph-business-art:after { position:absolute; inset:0; content:""; background:linear-gradient(90deg,#e4f5ee,transparent 35%); }
.rph-business-copy { position:relative; padding:14px 3.2cqi; z-index:1; }
#rt-photo-home .rph-business h2 { font-size:clamp(20px,3.45cqi,34px); max-width:72%; }
#rt-photo-home .rph-business p { max-width:65%; font-size:clamp(12px,2.25cqi,22px); color:#172a2a; margin-top:5px; line-height:1.25; }
#rt-photo-home .rph-outline { margin-top:10px; padding:6px 12px; border:1.5px solid #008e84; border-radius:9px; color:#005650; background:#f5fffc; font-size:clamp(12px,2.3cqi,22px); min-height:36px; font-weight:700; }
.rph-cities { padding:0 4.3cqi 18px; }
#rt-photo-home .rph-cities h2 { font-size:clamp(21px,3.25cqi,31px); }
.rph-city-pills { display:flex; gap:12px; flex-wrap:wrap; margin:8px 0 9px; }
#rt-photo-home .rph-city-pills button { display:block; min-height:38px; padding:6px 19px; border:0; border-radius:24px; font-weight:700; color:#16372c; background:#e1f4ec; font-size:clamp(13px,2.1cqi,21px); }
#rt-photo-home .rph-cities p { color:#404447; font-size:clamp(12px,2.1cqi,20px); }
#rt-photo-home .rph-cities p a { text-underline-offset:3px; }
.rph-online { display:flex; align-items:center; justify-content:center; gap:15px; margin:0 2.7cqi; background:#fff1bc; border-radius:14px; padding:12px 10px; color:#08112b; min-height:48px; }
.rph-online .rph-icon { width:clamp(24px,3.8cqi,35px); height:clamp(24px,3.8cqi,35px); }
.rph-online strong { font-size:clamp(17px,2.9cqi,29px); line-height:1.2; }
.rph-footer { padding:17px 3cqi 20px; text-align:center; font-size:clamp(12px,2.05cqi,20px); line-height:1.4; }
.rph-footer a,.rph-footer button { text-decoration:underline; text-underline-offset:3px; }
.rph-reviews { display:flex; align-items:center; justify-content:center; gap:26px; flex-wrap:wrap; }
.rph-reviews strong { padding-right:22px; border-right:1px solid #bcc2cb; }
.rph-footer-links { display:flex; gap:15px; align-items:center; justify-content:center; flex-wrap:wrap; margin-top:12px; }
#rt-photo-home .rph-footer-links button { border:0; padding:0; min-height:32px; color:inherit; background:none; }
.rph-bottom { position:sticky; bottom:0; z-index:30; display:grid; align-items:center; grid-template-columns:1fr 1fr 1.65fr 1fr 1fr; gap:5px; padding:8px 2cqi max(8px,env(safe-area-inset-bottom)); border-top:1px solid #d5dce2; background:#fff; box-shadow:0 -3px 10px #08112b05; }
#rt-photo-home .rph-bottom>:is(a,button) { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; min-width:0; min-height:54px; border:0; border-radius:12px; background:#fff; color:#08112b; font-size:clamp(10px,1.9cqi,19px); text-decoration:none; line-height:1; white-space:nowrap; padding:4px 2px; }
.rph-bottom .rph-icon { width:clamp(24px,3.6cqi,34px); height:clamp(24px,3.6cqi,34px); }
#rt-photo-home .rph-bottom>.rph-bottom-book { background:#008e84; color:#fff; font-weight:700; }
.rph-dialog { border:0; border-radius:20px; width:min(92vw,460px); max-height:85dvh; overflow:auto; padding:24px; color:#08112b; font-family:Arial,Helvetica,sans-serif; background:#fff; box-shadow:0 20px 80px #061b3040; }
.rph-dialog::backdrop { background:#08182a70; }
.rph-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.rph-dialog-head h2 { margin:0; color:#08112b; font-size:24px; line-height:1.2; }
.rph-dialog-head button { border:0; background:#f1f5f5; border-radius:50%; min-width:44px; min-height:44px; color:#08112b; }
.rph-dialog p { font-size:15px; line-height:1.5; }
.rph-city-options { display:grid; gap:10px; }
.rph-city-options>:is(a,button) { padding:14px; min-height:64px; border:1px solid #c6d9d4; background:#f8fffc; border-radius:12px; display:flex; flex-direction:column; gap:5px; text-align:left; text-decoration:none; color:#08112b; }
.rph-city-options strong { font-size:17px; }
.rph-city-options span { font-size:13px; color:#405b51; }
.rph-dialog .rph-dialog-note { font-size:13px; color:#405b51; }
@container rph (max-width:500px) {
 .rph-header { gap:5px; min-height:58px; }
 .rph-brand { width:120px; height:33px; }
 .rph-city { gap:4px; font-size:12px!important; }
 .rph-city>.rph-icon:first-child { width:18px; }
 .rph-city>.rph-icon:last-child { width:14px; }
 .rph-account { min-width:38px; padding-left:8px; }
 .rph-account .rph-icon { width:24px; }
 .rph-search { min-height:44px; margin-bottom:10px; border-radius:9px; }
 .rph-search input { height:44px; }
 .rph-hero-stage { height:190px; }
 #rt-photo-home .rph-hero h1 { font-size:clamp(22px,6.2cqi,29px); letter-spacing:-.65px; max-width:95%; }
 #rt-photo-home .rph-hero-copy p { max-width:58%; font-size:13px; }
 .rph-hero-image { left:47%; }
 .rph-hero-image .rph-art { width:138%; margin-left:-20%; }
 .rph-hero-action { padding-top:7px; padding-bottom:12px; }
 .rph-primary { min-height:45px!important; }
 .rph-categories { padding-top:14px; padding-bottom:15px; }
 #rt-photo-home .rph-categories h2 { font-size:21px; letter-spacing:-.55px; }
 .rph-category-grid { gap:7px; margin-top:12px; }
 #rt-photo-home .rph-category { border-radius:11px; min-height:101px; padding:6px 3px 7px; }
 .rph-category-image { height:62px; }
 .rph-trust { padding:11px 4px; }
 .rph-trust>span { gap:5px; padding:0 4px; }
 .rph-trust strong { font-size:10px; }
 .rph-how { padding-top:18px; }
 .rph-how li { gap:12px; padding:8px 4px; }
 .rph-business { min-height:140px; }
 #rt-photo-home .rph-business h2 { font-size:20px; max-width:76%; }
 #rt-photo-home .rph-business p { max-width:68%; }
 #rt-photo-home .rph-outline { min-height:38px; font-size:12px; }
 .rph-reviews { gap:14px; }
 .rph-reviews strong { padding-right:12px; }
 .rph-footer-links { gap:9px; margin-top:7px; }
 .rph-footer { padding-top:14px; padding-bottom:12px; }
 .rph-bottom { padding-left:5px; padding-right:5px; gap:3px; }
 #rt-photo-home .rph-bottom>:is(a,button) { min-height:55px; }
}
@media(prefers-reduced-motion:reduce) { #rt-photo-home * { scroll-behavior:auto; } }

/* Five-city cards and the original ReTech mobile navigation. */
#rt-photo-home .rph-five-cities { padding:0 4.3cqi 20px; }
#rt-photo-home .rph-five-cities h2 { font-size:clamp(25px,4.1cqi,42px); }
#rt-photo-home .rph-five-cities p.rph-city-intro { margin:8px 0 4px; font-size:clamp(14px,2.7cqi,28px); line-height:1.3; color:#5a6273; }
#rt-photo-home .rph-five-cities p.rph-city-services { font-size:clamp(14px,2.7cqi,29px); line-height:1.4; color:#087f73; font-weight:600; margin:0 0 16px; }
.rph-city-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#rt-photo-home .rph-city-card { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px; min-width:0; min-height:clamp(112px,18cqi,188px); padding:13px 8px; border:1.5px solid #2ab5a7; border-radius:20px; background:linear-gradient(125deg,#e9f9f2,#e4f5ef); color:#08112b; text-align:center; box-shadow:none; }
#rt-photo-home .rph-city-card:last-child { grid-column:1 / -1; justify-self:center; width:calc((100% - 14px) / 2); }
#rt-photo-home .rph-city-card>.rph-icon { width:clamp(28px,5.1cqi,52px); height:clamp(28px,5.1cqi,52px); color:#008e84; stroke-width:2.5; }
#rt-photo-home .rph-city-card strong { display:block; max-width:100%; font-size:clamp(17px,4.1cqi,42px); font-weight:800; line-height:1.15; letter-spacing:-.5px; }
#rt-photo-home .rph-city-card span { font-size:clamp(13px,2.85cqi,29px); line-height:1.2; color:#535b6d; }
#rt-photo-home .rph-city-card:hover { background:#d9f2e9; border-color:#087f73; }
#rt-photo-home .rph-footer { padding-bottom:110px; }
#rt-photo-home .rph-bottom { display:none!important; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav {
 display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; gap:3px;
 position:fixed; inset:auto auto 0 50%; transform:translateX(-50%); width:100%; max-width:var(--rph-nav-width,1080px);
 height:calc(80px + env(safe-area-inset-bottom)); min-height:0; box-sizing:border-box; z-index:90;
 padding:4px 8px calc(7px + env(safe-area-inset-bottom)); overflow:visible;
 background:#fff!important; border-top:1px solid #dce5e1!important; box-shadow:0 -2px 12px #143c2f06;
}
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button { position:relative; display:flex; flex-direction:column; justify-content:center; align-items:center; min-width:0; min-height:60px; margin:0; padding:5px 2px; gap:5px; border:0; border-radius:14px; background:transparent; color:#587067; font:600 var(--rph-nav-font,clamp(11px,1.6vw,16px))/1.15 Arial,Helvetica,sans-serif; letter-spacing:0; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button>.icon { width:28px; height:28px; padding:0; margin:0; background:none; box-shadow:none; border:0; border-radius:0; stroke-width:1.8; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button>span { white-space:nowrap; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button[aria-current="page"] { color:#08766c!important; background:#e9f6f1!important; font-weight:700; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button.rbm-sell { justify-content:flex-end!important; padding:0 1px 3px!important; gap:4px!important; color:#08766c!important; background:transparent!important; overflow:visible; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button.rbm-sell>.icon { width:58px!important; height:58px!important; min-width:58px; flex:0 0 58px; box-sizing:border-box!important; border:5px solid transparent!important; border-radius:50%!important; padding:11px!important; margin-top:-22px!important; margin-bottom:0!important; background:linear-gradient(#fff,#fff) padding-box,conic-gradient(#087f73 0deg 125deg,#f5bd39 125deg 235deg,#35b7ad 235deg 360deg) border-box!important; color:#08766c!important; stroke-width:2.8!important; box-shadow:0 2px 7px #164b3d26!important; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button.rbm-sell>span { font:600 var(--rph-nav-font,clamp(11px,1.6vw,16px))/1.15 Arial,Helvetica,sans-serif; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav>button:focus-visible { outline:3px solid #08766c; outline-offset:-2px; }
body[data-screen="home"] #retech-bottom-menu #app-nav-count { position:absolute; top:3px; right:calc(50% - 24px); display:grid; place-items:center; min-width:16px; height:16px; padding:2px; box-sizing:border-box; border-radius:8px; background:#087f73; color:#fff; font:700 9px/1 Arial,Helvetica,sans-serif; }
body[data-screen="home"] #retech-bottom-menu #app-nav-count[hidden] { display:none!important; }
@container rph (max-width:500px) {
 .rph-city-grid { gap:10px; }
 #rt-photo-home .rph-city-card { border-radius:15px; padding:12px 6px; min-height:112px; gap:5px; }
 #rt-photo-home .rph-city-card:last-child { width:calc((100% - 10px) / 2); }
 #rt-photo-home .rph-five-cities h2 { font-size:25px; }
 #rt-photo-home .rph-five-cities p.rph-city-intro { font-size:14px; }
 #rt-photo-home .rph-five-cities p.rph-city-services { font-size:14px; margin-bottom:13px; }
}

/* Bright white and mint; service-city advertising never enters the selling flow. */
html,body.retech-app { background:#fff!important; }
body[data-screen="home"] { background:#fff!important; }
#delhi-ncr-ac-pickup { display:none!important; }
#rt-photo-home { background:#fff; color:#101b30; }
#rt-photo-home .rph-header { border:0; padding-top:10px; padding-bottom:10px; }
#rt-photo-home .rph-city { background:#e8faf4; border-radius:12px; padding:8px 10px; color:#0c5149; }
#rt-photo-home .rph-search { background:#fff; border-color:#e0e5e6; border-radius:14px; box-shadow:0 4px 15px #142e2710; margin-bottom:20px; }
#rt-photo-home .rph-hero { margin:0 3.8cqi; border-radius:18px; background:linear-gradient(110deg,#9af0df,#43d9bf); overflow:hidden; }
#rt-photo-home .rph-hero-stage { height:clamp(208px,30cqi,316px); background:transparent; }
#rt-photo-home .rph-hero-image { left:56%; top:4%; bottom:0; right:1%; }
#rt-photo-home .rph-hero-image .rph-bright-art { width:100%; height:100%; margin:0; }
#rt-photo-home .rph-hero-image:after { display:none; }
#rt-photo-home .rph-hero-copy { padding:22px 5cqi 0; }
#rt-photo-home .rph-hero h1 { max-width:64%; font-size:clamp(23px,4.9cqi,47px); line-height:1.1; letter-spacing:-.75px; }
#rt-photo-home .rph-hero-copy p { max-width:54%; font-size:clamp(14px,2.4cqi,24px); color:#16453c; line-height:1.35; margin-top:13px; }
#rt-photo-home .rph-primary { background:#008476; border-radius:12px; color:#fff; }
#rt-photo-home .rph-hero-action { padding:8px 5cqi 16px; }
#rt-photo-home .rph-hero-action>.rph-primary { max-width:52%; min-height:46px; font-size:clamp(18px,3.1cqi,30px); }
#rt-photo-home .rph-hero-action>p { color:#204f46; font-size:clamp(10px,1.55cqi,15px); text-align:left; max-width:100%; }
#rt-photo-home .rph-categories { padding-top:24px; }
#rt-photo-home .rph-category-grid { gap:12px; }
#rt-photo-home .rph-category { padding:8px 4px; background:#eaf9f5; border:0; border-radius:12px; box-shadow:none; }
#rt-photo-home .rph-category-image .rph-bright-art { width:100%; height:100%; background:transparent; }
#rt-photo-home .rph-category>span:last-child { font-size:clamp(12px,2.3cqi,22px); font-weight:600; }
#rt-photo-home .rph-trust { background:#dcf9f0; color:#104b40; }
#rt-photo-home .rph-how { padding-top:18px; }
#rt-photo-home .rph-business { background:#ecfaf5; box-shadow:0 3px 16px #172e2709; }
#rt-photo-home .rph-online { background:#e3faf2; }
#rt-photo-home .rph-service-areas { margin:16px 4.3cqi; border:1px solid #dce4e2; border-radius:12px; background:#fff; }
#rt-photo-home .rph-service-areas>summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:12px 14px; color:#101b30; font-size:clamp(16px,2.3cqi,23px); font-weight:700; cursor:pointer; }
#rt-photo-home .rph-service-areas>summary::-webkit-details-marker { display:none; }
#rt-photo-home .rph-service-areas[open]>summary { border-bottom:1px solid #e0ece7; }
#rt-photo-home .rph-service-areas>.rph-cities { padding:16px; }
#rt-photo-home .rph-service-areas:not([open])>.rph-cities { display:none; }
#rt-photo-home .rph-service-areas .rph-city-card { min-height:100px; }
body.retech-app .market-header { background:#fff!important; box-shadow:0 4px 18px #163e3210; }
body.retech-app #catalog-search { background:#fff; border:1px solid #e1e7e4; box-shadow:0 3px 14px #173c2f0b; border-radius:14px; }
body.retech-app #catalog-search button { background:#36c2b0!important; color:#103e36!important; }
body.retech-app #all-items .commerce-card { background:#fff; border-color:#e0e9e5; box-shadow:0 2px 12px #163a2b08; }
body.retech-app :is(.commerce-home-category,.rm-category-card,.rm-subcategory) { background:#effbf7; border-color:#e0eeea; }
body.retech-app #booking { background:#fff!important; }
body.retech-app #booking :is(.rt-primary,.rt-flow-progress [aria-current="step"],#rig-location #rsl-change.rsl-needs-details) { background:#008476!important; color:#fff!important; border-color:#008476!important; }
body.retech-app #booking :is(details,.pickup-price-summary,.rtc-summary) { border-color:#dce9e3; background:#f7fffc; }
@container rph (max-width:500px) {
 #rt-photo-home .rph-header { min-height:64px; }
 #rt-photo-home .rph-city { font-size:12px!important; padding:7px 6px; }
 #rt-photo-home .rph-hero h1 { font-size:24px; max-width:64%; }
 #rt-photo-home .rph-hero-copy p { font-size:14px; max-width:53%; }
 #rt-photo-home .rph-hero-copy p .rph-copy-break { display:none; }
 #rt-photo-home .rph-category-grid { gap:9px; }
 #rt-photo-home .rph-category { min-height:108px; }
 #rt-photo-home .rph-category-image { height:67px; }
}

/* Full Diwali home: existing catalogue and booking remain authoritative. */
#rt-photo-home { max-width:1200px; }
body[data-screen="home"] #retech-bottom-menu.app-bottom-nav { max-width:var(--rph-nav-width,1200px); }
#rt-photo-home .rph-header { min-height:76px; padding-top:12px; padding-bottom:10px; }
#rt-photo-home .rph-search { margin-bottom:14px; }
#rt-photo-home .rf-announcement { overflow:hidden; background:#ffda62; color:#174c39; padding:10px 16px; font-size:13px; font-weight:700; text-align:center; line-height:1.4; }
#rt-photo-home .rf-carousel { margin:0; background:#fff; position:relative; }
.rf-viewport { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; scroll-behavior:smooth; }
.rf-viewport::-webkit-scrollbar,.rf-product-rail::-webkit-scrollbar { display:none; }
.rf-slide { position:relative; flex:0 0 100%; min-width:0; overflow:hidden; scroll-snap-align:start; scroll-snap-stop:always; min-height:410px; background:#034c3d; }
.rf-slide-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.rf-slide::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#034538f2 0%,#034538c9 36%,#03453800 72%); pointer-events:none; }
.rf-hero-copy { position:relative; z-index:1; padding:38px 5cqi; width:59%; }
#rt-photo-home .rf-eyebrow { display:inline-flex; gap:7px; align-items:center; border:1px solid #f4d57c80; border-radius:20px; padding:7px 11px; background:#ffffff0c; color:#ffe29b; font-size:12px; line-height:1.2; font-weight:700; letter-spacing:1px; }
#rt-photo-home .rf-title { color:#fff; margin:18px 0 14px; font-size:clamp(30px,4.5cqi,52px); line-height:1.08; font-weight:800; letter-spacing:-1px; }
#rt-photo-home .rf-hero-copy>p { color:#e1f5ec; font-size:clamp(15px,2.1cqi,23px); line-height:1.45; max-width:440px; }
#rt-photo-home .rf-hero-cta { display:inline-flex; align-items:center; gap:10px; margin-top:23px; min-height:46px; border:0; border-radius:8px; background:#ffdb6c; color:#144d3c; padding:12px 19px; font-size:16px; line-height:1.2; font-weight:800; text-decoration:none; }
.rf-slide-mint { background:#dff8ef; }
.rf-slide-mint::after { background:linear-gradient(90deg,#e4faf2 0%,#e4faf2dd 36%,#e4faf200 70%); }
#rt-photo-home .rf-slide-mint .rf-title { color:#103f35; }
#rt-photo-home .rf-slide-mint .rf-eyebrow { color:#0a705a; background:#fff8; border-color:#b0decc; }
#rt-photo-home .rf-slide-mint .rf-hero-copy>p { color:#305e51; }
.rf-slide-mint .rf-slide-image { object-fit:contain; width:55%; left:auto; right:0; }
.rf-slide-bulk { background:#f4ead6; }
.rf-slide-bulk::after { background:linear-gradient(90deg,#f7efdf 0%,#f7efdfed 35%,#f7efdf00 76%); }
#rt-photo-home .rf-slide-bulk .rf-title { color:#173e34; }
#rt-photo-home .rf-slide-bulk .rf-eyebrow { color:#69501d; background:#fff8; border-color:#dec795; }
#rt-photo-home .rf-slide-bulk .rf-hero-copy>p { color:#405f51; }
.rf-slide-bulk .rf-slide-image { width:65%; left:auto; right:0; object-fit:cover; }
.rf-carousel-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 4.3cqi; }
.rf-dots { display:flex; gap:7px; }
#rt-photo-home .rf-dot { display:grid; place-items:center; width:29px; height:32px; border:0; padding:0; background:transparent; }
.rf-dot>span { width:7px; height:7px; background:#d0dad4; border-radius:20px; transition:width .2s; }
.rf-dot[aria-pressed="true"]>span { width:25px; background:#087e65; }
.rf-banner-buttons { display:flex; align-items:center; gap:6px; }
#rt-photo-home .rf-banner-buttons>button,.rf-rail-buttons>button { display:grid; place-items:center; border:1px solid #dce8e1; border-radius:50%; width:34px; height:34px; padding:0; background:#fff; color:#0d725c; font-size:20px; }
#rt-photo-home :is(.rf-banner-buttons,.rf-rail-buttons)>button,#rt-photo-home .rf-dot { min-height:0!important; min-width:0; line-height:1; box-shadow:none; flex-shrink:0; }
.rf-counter { color:#527063; font-size:12px; margin-right:3px; }
.rf-section { padding:24px 4.3cqi 16px; }
.rf-section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:17px; }
#rt-photo-home .rf-section-heading h2 { color:#142c25; font-size:clamp(22px,3.5cqi,32px); line-height:1.17; letter-spacing:-.6px; }
#rt-photo-home .rf-section-heading p { color:#63776c; font-size:13px; line-height:1.4; margin-top:7px; }
.rf-rail-buttons { display:flex; gap:5px; flex-shrink:0; }
.rf-product-rail { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 60px)/5); gap:15px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; padding:2px 1px 12px; overscroll-behavior-x:contain; }
#rt-photo-home .rf-product-card { display:flex; flex-direction:column; align-items:stretch; position:relative; scroll-snap-align:start; width:100%; min-width:0; padding:10px 9px 13px; border:1px solid #e0e9e3; border-radius:12px; color:#193b2f; background:#fff; text-align:left; box-shadow:0 2px 8px #123c2f05; }
.rf-product-art { display:block; width:100%; height:118px; background-color:#f9fcf9; background-repeat:no-repeat; border-radius:7px; margin-bottom:12px; }
.rf-product-plus { position:absolute; top:7px; right:7px; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#168a60; color:#fff; border:2px solid #fff; font-size:19px; line-height:1; }
.rf-product-name { font-size:14px; font-weight:600; line-height:1.35; min-height:38px; }
.rf-price-label { display:block; margin-top:9px; color:#6b7d72; font-size:11px; font-weight:400; }
.rf-product-price { display:block; color:#163d2d; font-size:14px; line-height:1.35; margin-top:3px; }
.rf-section-note { font-size:11px; color:#6b7d72; margin-top:5px!important; line-height:1.4; }
#rt-photo-home .rf-all-link { border:0; background:transparent; color:#08795e; padding:6px 0; min-height:36px; font-size:14px; font-weight:700; text-decoration:underline; text-underline-offset:4px; white-space:nowrap; }
.rf-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
#rt-photo-home .rf-category { display:flex; flex-direction:column; align-items:center; gap:12px; min-width:0; padding:17px 10px 16px; border:1px solid #dfe9e2; border-radius:13px; background:#fff; color:#194335; text-align:center; }
.rf-category-art { width:100%; height:122px; display:block; background-repeat:no-repeat; background-color:#f3faf6; border-radius:10px; }
.rf-category-name { font-size:15px; line-height:1.35; font-weight:600; min-height:38px; }
#rt-photo-home .rf-category:hover,#rt-photo-home .rf-product-card:hover { border-color:#55ba97; box-shadow:0 4px 13px #15452e10; }
.rf-category-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 0 0; }
.rf-category-bottom>p { font-size:12px; color:#62786b; line-height:1.4; }
#rt-photo-home .rph-trust { margin-top:22px; margin-bottom:12px; }
#rt-photo-home .rph-how { padding-top:25px; padding-bottom:24px; }
#rt-photo-home .rph-how ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:20px; }
#rt-photo-home .rph-how li { flex-direction:column; justify-content:flex-start; text-align:center; gap:13px; padding:22px 16px; min-height:190px; background:#f0fbf3; border:1px solid #dceee0; border-radius:12px; }
#rt-photo-home .rph-how li+li { border-top:1px solid #dceee0; }
#rt-photo-home .rph-how li h3 { font-size:20px; }
#rt-photo-home .rph-how li p { font-size:14px; line-height:1.45; margin-top:8px; }
#rt-photo-home .rph-number { background:#fee4a1; width:43px; height:43px; color:#174d35; font-size:21px; }
#rt-photo-home .rph-business { margin:10px 4.3cqi 22px; min-height:210px; }
#rt-photo-home .rph-business-copy { padding:26px 3cqi; }
#rt-photo-home .rph-service-areas { margin:15px 4.3cqi 23px; }
#rt-photo-home .rph-online { margin-bottom:28px; }
#rt-photo-home .rph-footer { background:#07513f; color:#e4f4e9; padding:30px 4.3cqi 114px; }
#rt-photo-home .rf-footer-brand { color:#ffe0a0; font-size:28px; font-weight:800; letter-spacing:-1px; }
#rt-photo-home .rf-footer-description { font-size:13px; line-height:1.5; max-width:400px; margin:9px auto 25px; color:#d2e8db; }
#rt-photo-home .rph-reviews { background:#ffffff0b; padding:18px 10px; border:1px solid #cce9d329; border-radius:12px; gap:14px; }
#rt-photo-home .rph-reviews strong { font-size:14px; border-right:0; padding-right:0; flex:0 0 100%; }
#rt-photo-home .rph-reviews a { font-size:15px; padding:5px 14px; }
#rt-photo-home .rph-footer-links { font-size:13px; margin-top:22px; }
@container rph (max-width:700px) {
 .rf-slide { min-height:330px; }
 .rf-hero-copy { padding:29px 5cqi; width:64%; }
 #rt-photo-home .rf-title { font-size:32px; }
 .rf-product-rail { grid-auto-columns:calc((100% - 24px)/3); gap:12px; }
 .rf-product-art { height:100px; }
 .rf-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
 .rf-category-art { height:94px; }
 #rt-photo-home .rph-how ol { grid-template-columns:1fr; gap:12px; }
 #rt-photo-home .rph-how li { min-height:116px; flex-direction:row; text-align:left; padding:20px; }
 #rt-photo-home .rph-how li h3 { font-size:19px; }
}
@container rph (max-width:500px) {
 #rt-photo-home .rph-header { min-height:69px; padding-top:11px; padding-bottom:9px; }
 #rt-photo-home .rph-search { margin-bottom:13px; }
 #rt-photo-home .rf-announcement { padding:8px 12px; font-size:11px; white-space:normal; }
 .rf-slide { min-height:328px; }
 .rf-hero-copy { padding:26px 5cqi 30px; width:65%; }
 #rt-photo-home .rf-title { font-size:28px; line-height:1.08; margin:14px 0 11px; letter-spacing:-.65px; }
 #rt-photo-home .rf-eyebrow { font-size:9px; padding:6px 8px; letter-spacing:.8px; }
 #rt-photo-home .rf-hero-copy>p { font-size:12px; line-height:1.45; max-width:175px; }
 #rt-photo-home .rf-hero-cta { font-size:13px; min-height:39px; padding:10px 13px; margin-top:19px; }
 .rf-slide-image { object-position:62% center; }
 .rf-slide::after { background:linear-gradient(90deg,#034538e8 0%,#034538aa 44%,#03453800 85%); }
 .rf-slide-mint::after { background:linear-gradient(90deg,#e4faf2 0%,#e4faf2ce 40%,#e4faf200 85%); }
 .rf-slide-mint .rf-slide-image { width:61%; object-position:center; }
 .rf-slide-bulk::after { background:linear-gradient(90deg,#f7efdf 0%,#f7efdfdd 42%,#f7efdf00 86%); }
 .rf-slide-bulk .rf-slide-image { width:75%; object-position:55% center; }
 .rf-carousel-controls { padding:7px 4.3cqi; }
 #rt-photo-home .rf-banner-buttons>button { width:30px; height:30px; font-size:16px; }
 .rf-section { padding-top:23px; padding-bottom:15px; }
 .rf-section-heading { margin-bottom:15px; gap:8px; }
 #rt-photo-home .rf-section-heading h2 { font-size:21px; }
 #rt-photo-home .rf-section-heading p { font-size:11px; margin-top:6px; }
 .rf-rail-buttons>button { width:27px; height:27px; font-size:18px; }
 .rf-product-rail { grid-auto-columns:calc((100% - 18px)/3); gap:9px; }
 #rt-photo-home .rf-product-card { padding:8px 7px 11px; border-radius:8px; }
 .rf-product-art { height:85px; margin-bottom:9px; }
 .rf-product-name { font-size:11px; min-height:43px; }
 .rf-product-price { font-size:12px; }
 .rf-price-label { font-size:10px; }
 .rf-product-plus { width:21px; height:21px; font-size:16px; }
 .rf-category-grid { gap:9px; }
 #rt-photo-home .rf-category { gap:9px; padding:9px 5px 11px; border-radius:9px; }
 .rf-category-art { height:80px; border-radius:7px; }
 .rf-category-name { font-size:11px; min-height:42px; }
 .rf-category-bottom { align-items:flex-start; }
 #rt-photo-home .rf-all-link { font-size:12px; }
 .rf-category-bottom>p { font-size:11px; }
 #rt-photo-home .rph-business { min-height:174px; }
 #rt-photo-home .rph-business-copy { padding:22px 4cqi; }
 #rt-photo-home .rph-business h2 { font-size:22px; }
 #rt-photo-home .rph-business p { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .rf-viewport,.rf-product-rail { scroll-behavior:auto!important; } .rf-dot>span { transition:none; } }
