/* Uncle Ben's Pizza — R10.15.0 Signature Ghana Experience
   Final visual layer for the selected green / cream / red / gold concept.
   UI only: ordering, payments, permissions and data logic remain server-owned. */
:root{
  --sig-green:#033d32;--sig-green-2:#075646;--sig-green-3:#0b6b53;
  --sig-red:#e54027;--sig-red-2:#b9291d;--sig-gold:#f6bd36;--sig-gold-2:#ffe08b;
  --sig-cream:#fff9ee;--sig-paper:#fffdf8;--sig-ink:#17231f;--sig-muted:#68736e;
  --sig-line:rgba(13,70,55,.11);--sig-shadow:0 18px 50px rgba(4,48,39,.11);--sig-shadow-xl:0 32px 90px rgba(2,35,29,.22);
  --sig-ease:cubic-bezier(.2,.8,.2,1);
}

body.sf-wow{
  background-color:var(--sig-cream)!important;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(246,189,54,.07),transparent 20%),
    radial-gradient(circle at 88% 65%,rgba(229,64,39,.055),transparent 24%),
    linear-gradient(rgba(255,249,238,.952),rgba(255,249,238,.952)),
    url('/assets/images/patterns/adinkra-watermark.svg')!important;
  background-size:auto,auto,auto,520px 520px!important;
  background-attachment:fixed!important;
}

/* ---------- premium header ---------- */
.site-header{border-bottom:1px solid rgba(255,255,255,.08)!important}
.site-header:before{content:"";position:absolute;left:0;right:0;bottom:-4px;height:4px;background:url('/assets/images/patterns/kente-strip.svg') center/680px 52px;opacity:.92;pointer-events:none}
.site-header-inner{width:min(1580px,calc(100% - 48px))!important;min-height:78px!important;gap:16px!important}
.brand{min-width:230px!important;position:relative!important}
.brand:after{content:"GOOD PIZZA. GREATER PEOPLE.";position:absolute;left:62px;bottom:4px;color:rgba(255,255,255,.52);font-size:6px;font-weight:900;letter-spacing:.16em;white-space:nowrap}
.brand-logo{height:50px!important}
.site-header nav{gap:2px!important}
.site-header nav a{font-size:11px!important;padding:10px 11px!important}
.sf-header-search{height:44px!important;max-width:520px!important;border-radius:16px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 12px 30px rgba(0,0,0,.10)!important;transition:transform .2s var(--sig-ease),box-shadow .2s var(--sig-ease)!important}
.sf-header-search:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(0,0,0,.14)!important}
.sf-header-search span{font-size:10px!important}
.sf-header-location{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.2)!important}
.header-icon-link,.cart-pill,.sf-header-location{transition:transform .2s var(--sig-ease),background .2s var(--sig-ease)!important}
.header-icon-link:hover,.cart-pill:hover,.sf-header-location:hover{transform:translateY(-2px)!important;background:rgba(255,255,255,.14)!important}
.sf-order-now{background:linear-gradient(135deg,#ef4c2d,var(--sig-red-2))!important;box-shadow:0 13px 28px rgba(229,64,39,.28)!important}

/* ---------- cinematic hero ---------- */
.sf-home-hero{
  min-height:650px!important;
  grid-template-columns:minmax(420px,.82fr) minmax(660px,1.28fr)!important;
  padding:58px max(4.7vw,48px) 46px!important;
  background:
    radial-gradient(circle at 73% 40%,rgba(246,189,54,.25),transparent 23%),
    radial-gradient(circle at 57% 84%,rgba(229,64,39,.16),transparent 27%),
    linear-gradient(115deg,#032d26 0%,#043e33 48%,#075846 100%)!important;
}
.sf-home-hero:before{opacity:.16!important;background-size:360px 360px!important;animation:sigPatternDrift 28s linear infinite}
.sf-home-hero:after{width:600px!important;height:600px!important;right:13%!important;top:-190px!important;border-color:rgba(246,189,54,.18)!important;box-shadow:0 0 0 72px rgba(246,189,54,.025),0 0 0 145px rgba(246,189,54,.013)!important;animation:sigHalo 9s ease-in-out infinite}
.sf-hero-copy{max-width:660px!important;padding-right:20px!important}
.sf-hero-badge{font-size:9px!important;letter-spacing:.25em!important;color:rgba(255,255,255,.9)!important}
.sf-home-hero h1{font-size:clamp(62px,5.9vw,98px)!important;line-height:.9!important;letter-spacing:-.06em!important;text-shadow:0 18px 50px rgba(0,0,0,.14)}
.sf-home-hero h1 em{position:relative;display:inline-block;color:var(--sig-gold)!important}
.sf-home-hero h1 em:after{content:"";position:absolute;left:3%;right:0;bottom:-7px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--sig-gold),transparent);opacity:.85;transform:rotate(-1deg)}
.sf-home-hero .sf-hero-copy>p{font-size:15px!important;line-height:1.64!important;color:rgba(255,255,255,.78)!important}
.sf-actions{gap:10px!important}
.sf-btn{min-height:50px!important;border-radius:15px!important}
.sf-origin-proof{margin-top:24px!important;gap:18px!important;font-size:9px!important}
.sf-origin-proof span{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.075)}

.sf-hero-media{min-height:530px!important;perspective:1400px!important;transform-style:preserve-3d!important}
.sf-hero-media>img{
  width:min(850px,60vw)!important;height:min(550px,40vw)!important;right:-1vw!important;
  border-radius:46% 34% 43% 36%/42% 36% 45% 39%!important;
  clip-path:polygon(4% 8%,93% 0,100% 73%,90% 95%,18% 100%,0 83%)!important;
  filter:saturate(1.18) contrast(1.05) drop-shadow(0 42px 50px rgba(0,0,0,.38))!important;
  transform:translate3d(var(--hero-x,0),calc(-50% + var(--hero-y,0)),0) rotate(-1.6deg)!important;
  transition:transform .35s var(--sig-ease),filter .35s var(--sig-ease)!important;
}
.sf-home-hero:hover .sf-hero-media>img{filter:saturate(1.22) contrast(1.06) drop-shadow(0 48px 60px rgba(0,0,0,.42))!important}
.sf-hero-media:before{right:17%!important;top:6%!important;width:500px!important;height:500px!important;animation:sigPizzaOrbit 14s linear infinite!important}
.sf-flavour-orbit{left:0!important;top:8%!important;filter:drop-shadow(0 10px 20px rgba(0,0,0,.18))}
.sf-hero-scribble{left:1.5%!important;top:23%!important;font-size:19px!important;color:#fff1c3!important}
.sf-hero-promo{right:1%!important;bottom:0!important;width:270px!important;padding:18px!important;border-radius:22px!important;background:linear-gradient(155deg,rgba(59,30,15,.82),rgba(16,42,34,.82))!important;box-shadow:0 20px 54px rgba(0,0,0,.26)!important}
.sf-community-card{right:-3vw!important;top:3%!important;width:215px!important;padding:20px!important;border-radius:26px!important;box-shadow:0 28px 70px rgba(0,0,0,.29)!important}
.sf-community-card strong{font-size:24px!important}
.sf-community-card:after{content:"";position:absolute;inset:8px;border-radius:20px;border:1px solid rgba(255,255,255,.08);pointer-events:none}

.sf-cinematic-orbit{position:absolute;z-index:8;inset:0;pointer-events:none;overflow:visible}
.sf-cinematic-orbit i{position:absolute;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(8px);font-style:normal;box-shadow:0 16px 30px rgba(0,0,0,.16);animation:sigFloat var(--float,7s) ease-in-out infinite var(--delay,0s)}
.sf-cinematic-orbit i:nth-child(1){left:12%;top:8%;--float:6.4s;--delay:-1.5s}
.sf-cinematic-orbit i:nth-child(2){left:29%;top:1%;--float:7.5s;--delay:-3s}
.sf-cinematic-orbit i:nth-child(3){left:49%;top:9%;--float:6.8s;--delay:-2.2s}
.sf-cinematic-orbit i:nth-child(4){left:75%;top:12%;--float:8.2s;--delay:-4s}
.sf-cinematic-orbit i:nth-child(5){left:62%;bottom:7%;--float:7s;--delay:-1s}
.sf-cinematic-orbit i:nth-child(6){left:32%;bottom:3%;--float:8.4s;--delay:-3.6s}
.sf-cinematic-trail{position:absolute;z-index:7;right:12%;top:23%;width:42%;height:52%;border-radius:50%;border:1px dashed rgba(246,189,54,.24);transform:rotate(-12deg);animation:sigTrailSpin 28s linear infinite;pointer-events:none}
.sf-cinematic-trail:before,.sf-cinematic-trail:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--sig-gold);box-shadow:0 0 20px rgba(246,189,54,.75)}
.sf-cinematic-trail:before{left:13%;top:4%}.sf-cinematic-trail:after{right:8%;bottom:10%}

/* ---------- sections / cards ---------- */
.sf-pattern-rule{height:7px!important;background-size:760px 58px!important}
.sf-experience-rail{position:relative!important;overflow:hidden!important}
.sf-experience-rail:before{content:"";position:absolute;inset:0;background:url('/assets/images/patterns/adinkra-watermark.svg') center/390px;opacity:.025;pointer-events:none}
.sf-experience-rail>div{position:relative!important;transition:transform .22s var(--sig-ease),background .22s var(--sig-ease)!important}
.sf-experience-rail>div:hover{transform:translateY(-3px);background:rgba(255,255,255,.58)}
.sf-shell{width:min(1540px,calc(100% - 64px))!important}
.sf-section{position:relative;padding:36px 0!important}
.sf-section:before{content:"";position:absolute;z-index:-1;left:-6vw;top:8%;width:180px;height:180px;background:url('/assets/images/patterns/adinkra-watermark.svg') center/180px no-repeat;opacity:.024;pointer-events:none}
.sf-section-head{align-items:flex-end!important}
.sf-section-title{font-size:34px!important;letter-spacing:-.04em!important}
.sf-section-head>div:before{width:15px!important;background:linear-gradient(90deg,var(--sig-red),var(--sig-gold))!important}
.sf-category-card,.sf-product-card,.sf-benefit,.sf-quote{position:relative!important;isolation:isolate!important}
.sf-category-card:before,.sf-product-card:before,.sf-benefit:before,.sf-quote:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--spot-x,50%) var(--spot-y,50%),rgba(246,189,54,.12),transparent 38%);opacity:0;transition:opacity .25s var(--sig-ease);pointer-events:none}
.sf-category-card:hover:before,.sf-product-card:hover:before,.sf-benefit:hover:before,.sf-quote:hover:before{opacity:1}
.sf-category-card{min-height:112px!important;border:1px solid rgba(13,70,55,.09)!important}
.sf-category-card:hover{transform:translateY(-6px)!important;box-shadow:0 20px 40px rgba(4,48,39,.12)!important}
.sf-product-grid{gap:16px!important}
.sf-product-card{border-radius:25px!important;box-shadow:0 10px 30px rgba(4,48,39,.07)!important}
.sf-product-card:hover{transform:translateY(-8px)!important;box-shadow:0 24px 50px rgba(4,48,39,.14)!important}
.sf-product-card figure{height:224px!important}
.sf-product-card figure:after{content:"";position:absolute;inset:auto 0 0;height:44%;background:linear-gradient(transparent,rgba(5,45,37,.18));pointer-events:none}
.sf-card-body{padding:17px!important}
.sf-card-body h3{font-size:17px!important;letter-spacing:-.02em}
.sf-card-plus{box-shadow:0 8px 18px rgba(4,48,39,.18)!important}
.sf-promo-band{min-height:360px!important;border-radius:32px!important;box-shadow:0 28px 72px rgba(111,32,19,.22)!important}
.sf-promo-band:after{content:"";position:absolute;left:46%;top:-20%;width:220px;height:140%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.13),transparent);transform:rotate(16deg);animation:sigPromoSheen 7s ease-in-out infinite;pointer-events:none}
.sf-benefits{grid-template-columns:repeat(4,1fr)!important}
.sf-benefit{min-height:190px!important;transition:transform .25s var(--sig-ease),box-shadow .25s var(--sig-ease)!important}
.sf-benefit:hover{transform:translateY(-6px)!important;box-shadow:var(--sig-shadow)!important}
.sf-benefit-icon{background:linear-gradient(145deg,var(--sig-green),var(--sig-green-3))!important;box-shadow:0 10px 20px rgba(3,61,50,.17)}
.sf-testimonials{grid-template-columns:repeat(3,1fr)!important}
.sf-quote{transition:transform .25s var(--sig-ease),box-shadow .25s var(--sig-ease)!important}
.sf-quote:hover{transform:translateY(-5px)!important;box-shadow:var(--sig-shadow)!important}
.sf-social-strip img{border-radius:20px!important}
.sf-social-strip img:hover{transform:translateY(-7px) rotate(.8deg) scale(1.02)!important}

/* Floating quick order dock becomes a premium glass command strip. */
.sf-quick-dock{border-radius:18px!important;background:rgba(3,53,44,.92)!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:0 20px 50px rgba(2,39,32,.28)!important;backdrop-filter:blur(18px) saturate(135%)!important}
.sf-quick-dock a{font-size:9px!important}
.sf-quick-dock a.primary{background:linear-gradient(135deg,var(--sig-red),#f15f37)!important}
.sf-back-to-top{background:var(--sig-green)!important;box-shadow:0 14px 28px rgba(3,61,50,.24)!important}

/* Global form/card polish for website subpages. */
.sf-wow :is(.menu-toolbar,.sf-menu-toolbar,.cart-shell,.checkout-shell,.account-shell,.account-panel,.order-summary-card,.checkout-step,.cart-item-card,.location-card,.offer-card,.story-card,.contact-card,.reservation-card,.auth-card,.faq-card){
  border-radius:26px!important;border-color:rgba(13,70,55,.10)!important;box-shadow:0 14px 38px rgba(4,48,39,.07)!important;
}
.sf-wow :is(input,select,textarea){border-radius:15px!important;min-height:47px!important}
.sf-wow :is(input,select,textarea):focus{box-shadow:0 0 0 4px rgba(229,64,39,.08),0 12px 24px rgba(4,48,39,.06)!important}

@keyframes sigFloat{0%,100%{transform:translate3d(0,0,0) rotate(-4deg)}50%{transform:translate3d(8px,-18px,0) rotate(7deg)}}
@keyframes sigHalo{0%,100%{transform:scale(.97);opacity:.85}50%{transform:scale(1.04);opacity:1}}
@keyframes sigPizzaOrbit{to{transform:rotate(360deg)}}
@keyframes sigTrailSpin{to{transform:rotate(348deg)}}
@keyframes sigPatternDrift{to{background-position:360px 180px}}
@keyframes sigPromoSheen{0%,65%,100%{transform:translateX(-160%) rotate(16deg)}78%{transform:translateX(260%) rotate(16deg)}}

@media(max-width:1240px){
  .site-header-inner{grid-template-columns:auto auto minmax(210px,1fr) auto!important;gap:10px!important}.brand{min-width:190px!important}.brand:after{display:none}.site-header nav a{padding:9px 8px!important;font-size:10px!important}.sf-header-search{min-width:190px!important}.sf-home-hero{grid-template-columns:.88fr 1.12fr!important}.sf-community-card{right:-5vw!important}.sf-benefits{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:900px){
  .site-header:before{bottom:-3px;height:3px}.brand{min-width:0!important}.sf-header-search,.sf-header-location{display:none!important}.sf-home-hero{padding:54px 22px 40px!important}.sf-home-hero h1{font-size:clamp(50px,12vw,72px)!important}.sf-hero-media{min-height:400px!important}.sf-hero-media>img{width:min(760px,105vw)!important;height:390px!important;right:-24vw!important}.sf-community-card{right:5px!important;top:0!important;transform:scale(.88);transform-origin:top right}.sf-hero-promo{right:12px!important;bottom:0!important}.sf-cinematic-trail{right:2%;width:68%}.sf-origin-proof{flex-wrap:wrap}.sf-section-title{font-size:30px!important}.sf-benefits{grid-template-columns:1fr 1fr!important}
}
@media(max-width:620px){
  body.sf-wow{background-attachment:scroll!important}.site-header-inner{width:calc(100% - 22px)!important}.sf-home-hero{padding:42px 18px 26px!important}.sf-home-hero h1{font-size:48px!important}.sf-home-hero .sf-hero-copy>p{font-size:13px!important}.sf-origin-proof{gap:6px!important}.sf-origin-proof span{font-size:8px!important}.sf-hero-media{min-height:330px!important}.sf-hero-media>img{width:120vw!important;height:330px!important;right:-38vw!important}.sf-hero-scribble{display:none!important}.sf-community-card{width:170px!important;padding:14px!important}.sf-community-card strong{font-size:19px!important}.sf-hero-promo{width:210px!important;padding:13px!important}.sf-cinematic-orbit i{width:32px;height:32px;font-size:15px}.sf-section{padding:28px 0!important}.sf-shell{width:calc(100% - 24px)!important}.sf-benefits,.sf-testimonials{grid-template-columns:1fr!important}.sf-promo-band{min-height:500px!important}.sf-promo-band>div{padding:28px 22px!important}.sf-quick-dock{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  .sf-home-hero:before,.sf-home-hero:after,.sf-hero-media:before,.sf-cinematic-orbit i,.sf-cinematic-trail,.sf-promo-band:after{animation:none!important}.sf-hero-media>img{transition:none!important}.sf-category-card,.sf-product-card,.sf-benefit,.sf-quote{transform:none!important}
}
