/* Phase 4: homepage-only editorial sections. Uses existing theme tokens/fonts. */
.sh-home #page-blocks{overflow:hidden}
.sh-home .shh-kicker{display:block;color:var(--sh-brick);font-family:var(--font-body);font-weight:700;font-size:.72rem;letter-spacing:.17em;line-height:1.5;margin-bottom:1rem}
.sh-home .shh-kicker-light{color:#f6cd9c}
.sh-home .shh-hero{position:relative;isolation:isolate;min-height:clamp(480px,55vw,680px);display:flex;align-items:center;color:#fff8ee;background:#42251d}
.sh-home .shh-hero-media,.sh-home .shh-hero-shade{position:absolute;inset:0;z-index:-1}
.sh-home .shh-hero-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 45%}
.sh-home .shh-hero-shade{background:linear-gradient(90deg,rgba(34,19,16,.91) 0%,rgba(44,26,22,.77) 36%,rgba(48,30,24,.16) 76%)}
.sh-home .shh-hero-content{width:100%;padding-top:88px;padding-bottom:88px}
.sh-home .shh-hero-copy{max-width:570px}
.sh-home .shh-hero h1{font-family:var(--font-heading);font-size:clamp(2.8rem,5.5vw,5.7rem);font-weight:600;letter-spacing:-.035em;line-height:1.09;margin:0 0 23px;color:#fff9ee;text-wrap:balance}
.sh-home .shh-hero p{font:400 clamp(.95rem,1.45vw,1.16rem)/1.8 var(--font-body);max-width:490px;color:#f9eadd;margin:0 0 29px}
.sh-home .shh-button{font-family:var(--font-body);font-size:.88rem;font-weight:600;border-radius:12px;padding:13px 25px;display:inline-flex;gap:16px;align-items:center;min-height:48px;background:var(--sh-brick);border-color:var(--sh-brick);color:#fff}
.sh-home .shh-button:hover{background:var(--sh-maroon);color:#fff;border-color:var(--sh-maroon)}
.sh-home .shh-specialities{padding:clamp(55px,7vw,98px) 0;background:var(--sh-ivory)}
.sh-home .shh-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:38px}
.sh-home .shh-section-heading h2,.sh-home .shh-story h2{font:600 clamp(2.05rem,3.7vw,3.65rem)/1.14 var(--font-heading);letter-spacing:-.024em;color:var(--sh-maroon);margin:0;text-wrap:balance}
.sh-home .shh-section-heading>p{max-width:365px;font:400 .92rem/1.75 var(--font-body);color:var(--color-text-muted);margin:0}
.sh-home .shh-categories{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,2.5vw,28px)}
.sh-home .shh-category{color:var(--color-text);text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;min-width:0}
.sh-home .shh-category-image{display:block;width:min(100%,170px);aspect-ratio:1;border-radius:22px;padding:7px;overflow:hidden;background:#f4e7d7;border:1px solid #ecd8c4;box-shadow:0 9px 25px rgba(68,47,41,.075);transition:box-shadow .2s ease}
.sh-home .shh-category-image img{border-radius:16px;width:100%;height:100%;object-fit:cover;display:block;background:#f3e3cc;transform:scale(1);transition:transform .28s ease}
.sh-home .shh-category-label{font:600 .84rem/1.35 var(--font-body);color:var(--color-text)}
.sh-home .shh-category:hover .shh-category-image,.sh-home .shh-category:focus-visible .shh-category-image{box-shadow:0 13px 25px rgba(68,47,41,.13)}
.sh-home .shh-category:hover .shh-category-image img,.sh-home .shh-category:focus-visible .shh-category-image img{transform:scale(1.05)}
.sh-home .shh-story{padding:clamp(60px,8vw,110px) 0;background:#f6ead8}
.sh-home .shh-story-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(32px,6vw,100px)}
.sh-home .shh-story-picture{position:relative;margin:0;min-width:0}
.sh-home .shh-story-picture>img{display:block;width:100%;height:clamp(350px,38vw,530px);object-fit:cover;object-position:center;border-radius:20px;box-shadow:0 22px 48px rgba(68,47,41,.12)}
.sh-home .shh-image-caption{display:block;margin-top:14px;font:400 .74rem/1.6 var(--font-body);color:#77645a}
.sh-home .shh-story-copy{max-width:590px}
.sh-home .shh-story-copy h2{margin:0 0 20px}
.sh-home .shh-story-copy p{font:400 .93rem/1.9 var(--font-body);color:var(--color-text-muted);margin:0 0 15px}
.sh-home .shh-story-copy .shh-story-lead{font-family:var(--font-heading);font-weight:500;color:var(--sh-brick);font-size:clamp(1.12rem,1.8vw,1.45rem);line-height:1.5;margin-bottom:19px}
.sh-home .shh-story-link{display:inline-flex;align-items:center;gap:13px;color:var(--sh-brick);font:600 .9rem/1.5 var(--font-body);text-decoration:none;border-bottom:1px solid var(--sh-brick);padding-bottom:6px;margin-top:12px}
.sh-home .shh-story-link:hover{color:var(--sh-maroon)}
@media(max-width:991.98px){.sh-home .shh-categories{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px}.sh-home .shh-story-grid{gap:34px}.sh-home .shh-hero{min-height:500px}}
@media(max-width:767.98px){.sh-home .shh-hero{min-height:530px;align-items:flex-end}.sh-home .shh-hero-media img{object-position:62% center}.sh-home .shh-hero-shade{background:linear-gradient(0deg,rgba(30,18,17,.93) 0%,rgba(40,24,18,.70) 46%,rgba(30,18,17,.06) 100%)}.sh-home .shh-hero-content{padding-top:80px;padding-bottom:52px}.sh-home .shh-hero-copy{max-width:460px}.sh-home .shh-hero h1{font-size:clamp(2.5rem,10vw,3.8rem)}.sh-home .shh-section-heading{display:block;margin-bottom:27px}.sh-home .shh-section-heading>p{margin-top:13px}.sh-home .shh-story-grid{grid-template-columns:1fr}.sh-home .shh-story-picture>img{height:330px}.sh-home .shh-story-copy{max-width:100%}}
@media(max-width:359.98px){.sh-home .shh-category-label{font-size:.72rem}.sh-home .shh-category-image{padding:4px;border-radius:18px}.sh-home .shh-category-image img{border-radius:14px}}
@media(prefers-reduced-motion:reduce){.sh-home .shh-category-image{transition:none}}

/* Phase 4, Part 2 — styles scoped to homepage only. */
.sh-home .shh-favourites{padding:clamp(60px,7.5vw,105px) 0;background:var(--sh-ivory)}
.sh-home .shh-collection-link{margin-top:28px}
.sh-home .shh-featured-loading{margin:0;color:var(--color-text-muted);font-family:var(--font-body)}
.sh-home .shh-gifting{padding:0 0 clamp(60px,8vw,100px);background:var(--sh-ivory)}
.sh-home .shh-gifting-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:0;overflow:hidden;border-radius:24px;background:var(--sh-maroon);color:var(--sh-ivory)}
.sh-home .shh-gifting-copy{padding:clamp(28px,3vw,44px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.sh-home .shh-gifting-copy h2{font:600 clamp(2.05rem,3.2vw,3.1rem)/1.16 var(--font-heading);letter-spacing:-.025em;margin:0 0 20px;color:#fff8ee;max-width:550px}
.sh-home .shh-gifting-copy p{font:400 .95rem/1.85 var(--font-body);color:#f5dfd7;max-width:450px;margin:0 0 25px}
.sh-home .shh-gift-button{display:inline-flex;align-items:center;gap:14px;border-radius:12px;padding:13px 22px;min-height:46px;font:600 .85rem/1.3 var(--font-body);background:#f4d4a2;color:var(--sh-maroon);border:1px solid #f4d4a2;text-decoration:none}
.sh-home .shh-gift-button:hover{background:#fff2d8;color:var(--sh-maroon)}
.sh-home .shh-gifting-media{overflow:hidden;height:clamp(250px,24vw,330px);min-height:0}
.sh-home .shh-gifting-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease}
.sh-home .shh-gifting-panel:hover .shh-gifting-media img{transform:scale(1.025)}
.sh-home .shh-promise{padding:clamp(58px,7vw,94px) 0;background:#f6ead8}
.sh-home .shh-promise-heading{text-align:center;max-width:760px;margin:0 auto 40px}
.sh-home .shh-promise-heading h2,.sh-home .shh-visit h2{font:600 clamp(2.05rem,3.7vw,3.65rem)/1.14 var(--font-heading);letter-spacing:-.024em;color:var(--sh-maroon);margin:0;text-wrap:balance}
.sh-home .shh-promise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.sh-home .shh-promise-item{padding:28px 22px;text-align:center;background:rgba(255,249,238,.8);border:1px solid #ecdac7;border-radius:18px;min-width:0}
.sh-home .shh-promise-icon{display:inline-grid;place-items:center;width:57px;height:57px;margin:0 auto 19px;color:var(--sh-brick);background:#fbe8d0;border-radius:16px}
.sh-home .shh-promise-item h3{font:600 .95rem/1.5 var(--font-body);color:var(--sh-maroon);margin:0 0 8px}
.sh-home .shh-promise-item p{font:400 .78rem/1.7 var(--font-body);color:var(--color-text-muted);margin:0}
.sh-home .shh-visit{background:var(--sh-ivory);padding:clamp(65px,8vw,110px) 0}
.sh-home .shh-visit-inner{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(25px,5vw,80px);align-items:center}
.sh-home .shh-visit-copy{max-width:590px}
.sh-home .shh-visit h2{margin-bottom:19px}
.sh-home .shh-visit-copy>p{font:400 .93rem/1.85 var(--font-body);color:var(--color-text-muted);margin:0 0 19px}
.sh-home .shh-visit address{font:500 .9rem/1.85 var(--font-body);color:var(--sh-maroon);margin:0 0 22px;font-style:normal}
.sh-home .shh-visit-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.sh-home .shh-visit-actions .shh-story-link{margin:0}
.sh-home .shh-visit-art{display:block;min-width:0;overflow:hidden;border:1px solid #e9d8c2;border-radius:22px;background:#fff9ee}.sh-home .shh-visit-art img{display:block;width:100%;height:auto;object-fit:contain}


@media(max-width:991.98px){.sh-home .shh-promise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sh-home .shh-gifting-panel{grid-template-columns:1fr 1fr}.sh-home .shh-visit-inner{gap:28px}}
@media(max-width:767.98px){.sh-home .shh-gifting-panel{grid-template-columns:1fr}.sh-home .shh-gifting-copy{padding:35px 25px}.sh-home .shh-gifting-media{height:260px;min-height:260px}.sh-home .shh-visit-inner{grid-template-columns:1fr}.sh-home .shh-visit-art{min-height:0}.sh-home .shh-promise-item{padding:20px 12px}}
@media(max-width:440px){.sh-home .shh-promise-grid{gap:10px}}
@media(prefers-reduced-motion:reduce){.sh-home .shh-gifting-media img,.sh-home .shh-product-tile>.menu-item-card{transition:none}}

/* Phase 4.3: Homepage featured products reuse the Menu page's exact card markup and rules. */
.sh-home .shh-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.sh-home .shh-product-tile{min-width:0;display:flex}
.sh-home .shh-product-tile>.menu-item-card{width:100%}
.sh-home .shh-google-rating{display:inline-flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 22px;padding:10px 14px;border:1px solid #e9d8c2;border-radius:12px;text-decoration:none;color:var(--sh-maroon);background:#fff8ed;font:500 .8rem/1.3 var(--font-body)}
.sh-home .shh-google-rating:hover{border-color:var(--sh-brick);color:var(--sh-maroon)}
.sh-home .shh-google-rating strong{font-size:.9rem}
.sh-home .shh-rating-stars{color:#e1a53f;font-size:1rem;letter-spacing:1px}
.sh-home .shh-rating-link{color:var(--sh-brick)}
@media(max-width:991.98px){.sh-home .shh-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.sh-home .shh-product-grid{grid-template-columns:1fr;gap:12px}}

/* Exact Shantilal Menu card selectors, scoped to homepage featured grid. */
.sh-home .shh-product-grid .menu-item-card{border:1px solid #EFDEC5;border-radius:17px;background:#FFF9EE;box-shadow:0 3px 13px rgba(68,47,41,.07);}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{padding:15px;gap:5px;}
.sh-home .shh-product-grid .menu-item-card h3{color:#442F29;font-weight:700;line-height:1.32;}
.sh-home .shh-product-grid .menu-item-card .menu-item-price{color:#AF432D;font-weight:750;margin-top:auto;}
.sh-home .shh-product-grid .menu-item-card .menu-item-media img{width:100%;height:100%;object-fit:cover;}
.sh-home .shh-product-grid .menu-item-card .add-fab{background:#AF432D;color:#FFF9EE;}
.sh-home .shh-product-grid .menu-item-card .ribbon-tag{background:#6B2230;color:#FFF9EE;}
@media (max-width:575.98px){.sh-home .shh-product-grid .sh-product-column{width:100%;}
.sh-home .shh-product-grid .menu-item-card{display:grid;grid-template-columns:112px minmax(0,1fr);height:auto;min-height:128px;overflow:visible;align-items:stretch;}
.sh-home .shh-product-grid .menu-item-card .menu-item-media{width:112px;min-height:112px;align-self:start;border-radius:16px 0 0 16px;overflow:hidden;}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{min-width:0;padding:11px 12px;gap:3px;}
.sh-home .shh-product-grid .menu-item-card h3{font-size:14px!important;margin:0!important;}
.sh-home .shh-product-grid .menu-item-card .menu-item-body p{font-size:11px!important;line-height:1.3;margin:0 0 4px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex-grow:0!important;}
.sh-home .shh-product-grid .menu-item-card .menu-item-price{font-size:14px;}
.sh-home .shh-product-grid .menu-item-card .add-fab{right:7px;bottom:7px;width:34px;height:34px;}
.sh-home .shh-product-grid .menu-item-card .size-chip{padding:3px 7px;font-size:11px;}
.sh-home .shh-product-grid .menu-item-card .size-selector{gap:3px;}
.sh-home .shh-product-grid .menu-item-card .pack-select{font-size:12px;padding:5px 25px 5px 8px;margin:4px 0!important;min-height:31px;}
.sh-home .shh-product-grid .menu-item-card .pack-note{font-size:11px;margin:3px 0!important;}
.sh-home .shh-product-grid .menu-item-card .stepper-fab{right:6px;bottom:6px;}}
.sh-home .shh-product-grid .menu-item-card .sh-card-cart-action{margin-top:auto;display:flex;justify-content:flex-end;align-items:center}
.sh-home .shh-product-grid .sh-card-add,.sh-home .shh-product-grid .sh-card-stepper{border-radius:9px;background:#6B2230;color:#FFF9EE;border:0;min-height:34px;font-size:13px;font-weight:700;letter-spacing:.015em}
.sh-home .shh-product-grid .sh-card-add{padding:7px 18px;min-width:83px}
.sh-home .shh-product-grid .sh-card-stepper{display:flex;align-items:center;justify-content:space-between;min-width:100px;gap:6px}
.sh-home .shh-product-grid .sh-card-stepper button{width:33px;height:34px;border:0;background:transparent;color:inherit;font-size:18px}
.sh-home .shh-product-grid .sh-card-stepper output{font-size:13px;min-width:16px;text-align:center}
.sh-home .shh-product-grid [hidden]{display:none!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{min-width:0}
.sh-home .shh-product-grid .menu-item-card .menu-item-price{margin:0}
@media (max-width:575.98px){.sh-home .shh-product-grid .menu-item-card{grid-template-columns:112px minmax(0,1fr);min-height:138px;}
.sh-home .shh-product-grid .menu-item-card .menu-item-media{width:112px;height:112px;border-radius:12px;margin:10px 0 10px 10px}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{padding:10px 13px 10px 18px}
.sh-home .shh-product-grid .menu-item-card .ribbon-tags{left:0;right:0;top:0}
.sh-home .shh-product-grid .menu-item-card .ribbon-tag{font-size:8px;padding:3px 6px}
.sh-home .shh-product-grid .menu-item-card .sh-card-cart-action{align-self:stretch}}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{justify-content:flex-start!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-price{margin:2px 0 4px!important;flex:0 0 auto!important}
.sh-home .shh-product-grid .sh-card-bottom-row{display:flex;align-items:center;gap:8px;width:100%;min-width:0;margin-top:auto}
.sh-home .shh-product-grid .sh-card-variants{flex:1 1 0;min-width:0}
.sh-home .shh-product-grid .sh-card-variants .pack-select{width:100%;max-width:100%;min-width:0;margin:0!important}
.sh-home .shh-product-grid .sh-card-variants .pack-note{margin:0!important;line-height:1.3}
.sh-home .shh-product-grid .sh-card-cart-action{flex:0 0 auto;margin:0!important;align-self:center!important}
.sh-home .shh-product-grid .sh-card-stepper{min-width:94px;gap:0}
.sh-home .shh-product-grid .sh-card-stepper button{width:29px}
.sh-home .shh-product-grid .menu-item-media{overflow:hidden}
.sh-home .shh-product-grid .menu-item-media .ribbon-tags{position:absolute!important;left:9px;right:auto;top:9px;z-index:3}
.sh-home .shh-product-grid .menu-item-media .ribbon-tag{display:block;max-width:100%;background:#D87719;color:#FFF9EE;font-weight:700;border-radius:5px;padding:4px 7px}
@media (max-width:575.98px){.sh-home .shh-product-grid .menu-item-card{min-height:0!important;grid-template-columns:112px minmax(0,1fr)!important;align-items:start!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-media{width:102px!important;height:102px!important;min-height:0!important;margin:10px 0 10px 10px!important;aspect-ratio:1/1!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-body{padding:10px 12px!important;gap:3px!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-body p{margin:0!important;flex-grow:0!important}
.sh-home .shh-product-grid .menu-item-card .ribbon-tags{left:0!important;right:0!important;top:0!important;width:100%;gap:0}
.sh-home .shh-product-grid .menu-item-card .ribbon-tag{border-radius:0!important;text-align:center;font-size:8px!important;padding:3px 2px!important;width:100%;white-space:normal}
.sh-home .shh-product-grid .sh-card-bottom-row{gap:6px;align-items:center;margin-top:4px}
.sh-home .shh-product-grid .sh-card-add{min-width:76px;padding:7px 10px}
.sh-home .shh-product-grid .sh-card-stepper{min-width:92px}
.sh-home .shh-product-grid .sh-card-variants .pack-select{font-size:11px!important;padding:5px 18px 5px 5px!important}
.sh-home .shh-product-grid .menu-item-card .menu-item-price{font-size:14px!important}
.sh-home .shh-product-grid .menu-item-card .size-selector{margin:0!important}}
@media (max-width:767.98px){body:not(.is-pwa) .sh-home .shh-product-grid{padding-bottom:100px!important}}

/* Phase 4 visit refinements — homepage-only, no shared chrome changes. */
@media (min-width:768px) {
  .sh-home .shh-gifting-panel{align-items:stretch}
  .sh-home .shh-gifting-media{position:relative;height:auto;min-height:100%;align-self:stretch}
  .sh-home .shh-gifting-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
}
.sh-home .shh-promise-icon{width:66px;height:66px;border-radius:18px;background:#fbe8d0}
.sh-home .shh-promise-icon svg{width:37px;height:37px;stroke-width:1.4}
/* Visit Shantilal: art touches section top/right/bottom; no bordered picture card. */
@media (min-width:768px) {
  .sh-home .shh-visit{position:relative;overflow:hidden;padding:0;min-height:530px}
  .sh-home .shh-visit > .container{max-width:none;width:100%;padding-left:max(24px,calc((100vw - 1320px)/2));padding-right:0}
  .sh-home .shh-visit-inner{grid-template-columns:minmax(0,40%) minmax(0,60%);gap:0;min-height:530px;align-items:stretch}
  .sh-home .shh-visit-copy{position:relative;z-index:1;align-self:center;padding:70px clamp(24px,4vw,68px) 70px 0;max-width:600px}
  .sh-home .shh-visit-art{position:relative;align-self:stretch;overflow:visible;display:flex;align-items:center;justify-content:flex-end;margin:0;border:0;border-radius:0;min-height:530px;background:transparent}
  .sh-home .shh-visit-art img{display:block;width:125%;max-width:none;height:auto;object-fit:contain;object-position:right center;mix-blend-mode:multiply}
}
@media (min-width:768px) and (max-width:1050px){
  .sh-home .shh-visit-inner{grid-template-columns:minmax(0,43%) minmax(0,57%)}
  .sh-home .shh-visit-art img{width:135%}
}
@media (max-width:767.98px){
  .sh-home .shh-visit-art{margin:12px -12px -48px;border:0;border-radius:0;background:transparent;overflow:visible}
  .sh-home .shh-visit-art img{width:100%;max-width:none;height:auto;mix-blend-mode:multiply}
}

/* v5.15 — heritage ticker: homepage-only, immediately below the hero. */
.sh-home .shh-ticker{width:100%;overflow:hidden;background:#580000;color:#FFF9EE;padding:0;min-height:68px;display:flex;align-items:center}
.sh-home .shh-ticker-track{display:flex;width:max-content;animation:shh-marquee 15s linear infinite;will-change:transform}
.sh-home .shh-ticker-set{display:flex;align-items:center;flex:none;gap:0}
.sh-home .shh-ticker-item{display:inline-flex;align-items:center;white-space:nowrap;gap:13px;padding:17px clamp(26px,3.2vw,52px);font:600 clamp(1.5rem,1.12vw,2rem)/1.35 var(--font-heading);letter-spacing:.02em;color:#FFF9EE}
.sh-home .shh-ticker-item svg{flex:none;width:29px;height:29px;stroke:#FFF9EE}
@keyframes shh-marquee{to{transform:translateX(-50%)}}
.sh-home .shh-ticker:hover .shh-ticker-track,.sh-home .shh-ticker:focus-within .shh-ticker-track{animation-play-state:paused}
@media(max-width:767.98px){.sh-home .shh-ticker{min-height:56px}.sh-home .shh-ticker-item{padding:12px 26px;gap:10px;font-size:.78rem}.sh-home .shh-ticker-item svg{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.sh-home .shh-ticker{overflow-x:auto}.sh-home .shh-ticker-track{animation:none!important;will-change:auto}.sh-home .shh-ticker-set[aria-hidden="true"]{display:none}}
