/* RF editorial system: strong layout, serious B2B bakery content. */

:root {
  --hard-rule: 2px solid var(--ink);
  --hard-shadow: 8px 8px 0 var(--ink);
  --hard-shadow-small: 5px 5px 0 var(--ink);
}

body { background: #fffdf8; }

main::before {
  content: "WHOLESALE BAKERY MANUFACTURING  /  B2B DESSERT SUPPLY  /  GUJARAT";
  min-height: 36px;
  padding: 0 4vw;
  border-bottom: var(--hard-rule);
  display: flex;
  align-items: center;
  background: var(--ink);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .15em;
  white-space: nowrap;
  overflow: hidden;
}

.eyebrow { margin-bottom: 13px; color: var(--ink); font-size: 9px; letter-spacing: .14em; }
.text-link { border-bottom-width: 2px; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }

.soft-button {
  min-height: 50px;
  border: var(--hard-rule);
  border-radius: 0;
  box-shadow: var(--hard-shadow-small);
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: .08em;
}
.soft-button:hover { transform: translate(-3px,-3px); box-shadow: var(--hard-shadow); }
.soft-button.ghost { background: #fff; }
.soft-button.pink { border-color: var(--ink); }
.soft-button.light { border-color: #fff; box-shadow: 5px 5px 0 var(--pink-2); }

.site-header {
  min-height: 78px;
  border-bottom: var(--hard-rule);
  grid-template-columns: 270px 1fr 270px;
  background: #fffdf8;
  backdrop-filter: none;
}
.site-header.sticky { border-bottom: var(--hard-rule); box-shadow: 0 7px 0 rgba(37,59,85,.13); }
.brand { font-family: var(--sans); font-size: 17px; font-weight: 800; letter-spacing: -.04em; text-transform: uppercase; }
.brand-mark {
  border: var(--hard-rule);
  border-radius: 0;
  background: var(--pink);
  box-shadow: 3px 3px 0 var(--ink);
  font-family: var(--sans);
  font-weight: 800;
  transform: rotate(-3deg);
}
.desktop-nav { height: 78px; gap: 0; border-inline: var(--hard-rule); }
.desktop-nav a { height: 100%; padding: 0 27px; border-right: var(--hard-rule); display: grid; place-items: center; }
.desktop-nav a:last-child { border-right: 0; }
.desktop-nav a::after { display: none; }
.desktop-nav a:hover, .desktop-nav a.active { background: var(--blue); }
.catalogue-link { border-bottom: 2px solid currentColor; padding-bottom: 4px; }
.header-actions .soft-button { min-height: 40px; box-shadow: 4px 4px 0 var(--ink); }

.mobile-nav { background: var(--blue); }
.mobile-nav nav a { border-bottom: var(--hard-rule); font: 800 12vw/.85 var(--sans); letter-spacing: -.06em; text-transform: uppercase; }

.home-hero {
  min-height: 730px;
  padding: 0;
  grid-template-columns: .88fr 1.12fr;
  border-bottom: var(--hard-rule);
  background: var(--blue);
}
.bubble { display: none; }
.hero-copy { padding: 6vw 4vw; border-right: var(--hard-rule); }
.hero-copy h1 {
  max-width: 760px;
  font: 800 clamp(68px,8.7vw,140px)/.78 var(--sans);
  letter-spacing: -.08em;
  text-transform: uppercase;
}
.hero-copy h1 em {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-top: .03em;
  padding: .02em .07em .08em;
  background: var(--pink);
  color: var(--ink);
  font: inherit;
}
.hero-copy > p:not(.eyebrow) { max-width: 620px; margin: 32px 0; font-size: 13px; }
.hero-proof { gap: 0; border: var(--hard-rule); background: #fff; }
.hero-proof div { flex: 1; min-width: 145px; padding: 17px; border-left: 0; border-right: var(--hard-rule); }
.hero-proof div:last-child { border-right: 0; }
.hero-proof strong { font: 800 21px/.95 var(--sans); text-transform: uppercase; letter-spacing: -.04em; }
.hero-proof span { display: block; margin-top: 6px; font-size: 7px; }
.hero-visual { min-height: 730px; border-radius: 0; box-shadow: none; }
.hero-visual::after { content: "BATCH / SERVICE / REPEAT"; position: absolute; inset: auto 0 0; padding: 11px 18px; border-top: var(--hard-rule); background: var(--cream); font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.hero-tag {
  width: 120px;
  height: 120px;
  border: var(--hard-rule);
  border-radius: 0;
  background: var(--pink);
  box-shadow: var(--hard-shadow);
  font: 800 17px/.85 var(--sans);
  text-transform: uppercase;
}
.hero-note { left: 24px; bottom: 60px; border: var(--hard-rule); border-radius: 0; background: #fff; backdrop-filter: none; box-shadow: var(--hard-shadow-small); }

.partner-strip { min-height: 64px; padding: 0 4vw; border-bottom: var(--hard-rule); border-top: 0; justify-content: space-between; gap: 22px; background: var(--ink); }
.partner-strip span { color: #fff; font-size: 9px; }
.partner-strip span::before { content: "✦ "; color: var(--pink-2); }

.intro-grid { padding: 110px 0; grid-template-columns: .25fr 1.15fr .6fr; }
.intro-grid h2, .section-heading h2 {
  font: 800 clamp(54px,6.5vw,100px)/.76 var(--sans);
  letter-spacing: -.07em;
  text-transform: uppercase;
}
.intro-grid h2 em { color: var(--ink); font: inherit; }
.promise-card { border: var(--hard-rule); border-radius: 0; box-shadow: var(--hard-shadow); }
.promise-card span { font: 800 50px/.8 var(--sans); }
.promise-card strong { font: 800 23px/.95 var(--sans); text-transform: uppercase; letter-spacing: -.035em; }

.product-preview { padding: 110px 4vw 130px; border-block: var(--hard-rule); background: var(--pink); }
.section-heading { align-items: start; }
.section-heading > p:last-child { padding-top: 18px; border-top: var(--hard-rule); color: var(--ink); }
.product-cards { grid-template-columns: 1.25fr .875fr .875fr; gap: 22px; align-items: start; }
.product-card {
  padding: 0 0 25px;
  border: var(--hard-rule);
  border-radius: 0;
  background: #fff;
  box-shadow: var(--hard-shadow);
}
.product-card:nth-child(2) { margin-top: 70px; background: var(--blue); }
.product-card:nth-child(3) { margin-top: 145px; background: var(--lavender); }
.product-card:hover { transform: translate(-4px,-4px) rotate(-.15deg); box-shadow: 13px 13px 0 var(--ink); }
.product-card-image { height: 470px; border-bottom: var(--hard-rule); border-radius: 0; }
.product-card:nth-child(2) .product-card-image, .product-card:nth-child(3) .product-card-image { height: 350px; }
.product-card small { margin: 22px 22px 8px; }
.product-card h3 { margin: 0 22px 12px; font: 800 35px/.88 var(--sans); text-transform: uppercase; letter-spacing: -.05em; }
.product-card p { margin: 0 22px 20px; color: var(--ink); }
.product-card .text-link { margin-inline: 22px; }

.flow-section { padding: 115px 4vw; border-bottom: var(--hard-rule); grid-template-columns: .75fr 1.25fr; background: var(--lavender); }
.flow-intro h2 { font: 800 clamp(56px,7vw,105px)/.74 var(--sans); letter-spacing: -.075em; text-transform: uppercase; }
.flow-list { border-top: var(--hard-rule); }
.flow-list article { padding: 28px 0; border-bottom: var(--hard-rule); grid-template-columns: 74px 1fr .9fr; }
.flow-list b { width: 52px; height: 52px; border: var(--hard-rule); border-radius: 0; background: var(--pink); box-shadow: 3px 3px 0 var(--ink); font: 800 16px/1 var(--sans); }
.flow-list h3 { font: 800 28px/.95 var(--sans); text-transform: uppercase; letter-spacing: -.04em; }

.about-preview { min-height: 720px; border-bottom: var(--hard-rule); grid-template-columns: 1.2fr .8fr; }
.about-preview-image { min-height: 720px; border-right: var(--hard-rule); }
.about-preview-copy { padding: 7vw 5vw; background: var(--blue); }
.about-preview-copy h2 { font: 800 clamp(55px,6.5vw,100px)/.75 var(--sans); letter-spacing: -.07em; text-transform: uppercase; }
.quality-chips { gap: 0; border: var(--hard-rule); }
.quality-chips span { flex: 1 1 50%; padding: 12px; border: 0; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); border-radius: 0; background: #fff; text-transform: uppercase; letter-spacing: .04em; }

.testimonial-preview { padding: 110px 4vw 125px; border-bottom: var(--hard-rule); text-align: left; background: var(--pink); }
.testimonial-preview h2 { max-width: 1050px; margin: 0 0 45px; font: 800 clamp(58px,7vw,108px)/.74 var(--sans); letter-spacing: -.075em; text-transform: uppercase; }
.quote-carousel { width: min(950px,calc(100% - 10px)); margin: 0; padding: 38px; border: var(--hard-rule); background: #fff; box-shadow: var(--hard-shadow); }
.quote-slide blockquote { font: 400 clamp(28px,3.4vw,46px)/1.05 var(--serif); }
.quote-dots { justify-content: flex-start; }
.quote-dots button { width: 22px; height: 8px; border: var(--hard-rule); border-radius: 0; }

.bulk-cta { min-height: 610px; border-bottom: var(--hard-rule); padding: 100px 5vw; }
.bulk-cta::before, .bulk-cta::after { display: none; }
.bulk-cta h2 { font: 800 clamp(58px,8vw,120px)/.73 var(--sans); letter-spacing: -.075em; text-transform: uppercase; }

.site-footer { position: relative; padding: 78px 4vw 35px; border-top: var(--hard-rule); background: var(--ink); color: #fff; overflow: hidden; }
.site-footer::after { content: "RF SPECIALITY FOODS"; display: block; margin-top: 60px; color: #fff; font: 800 clamp(60px,12.5vw,190px)/.7 var(--sans); letter-spacing: -.085em; white-space: nowrap; }
.footer-brand p, .footer-col a, .footer-inquiry p { color: #cbd5e1; }
.footer-col h3, .footer-inquiry h3 { color: var(--pink-2); text-transform: uppercase; }
.footer-col a { padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.25); }
.footer-bottom { border-top-color: rgba(255,255,255,.35); }
.site-footer .brand-mark { border-color: #fff; box-shadow: 3px 3px 0 var(--pink-2); color: var(--ink); }
.site-footer .soft-button.pink { border-color: #fff; box-shadow: 5px 5px 0 var(--pink-2); }

.inquiry-drawer { border-left: var(--hard-rule); background: var(--blue); }
.drawer-head { border-bottom: var(--hard-rule); }
.drawer-head h2 { font: 800 42px/.9 var(--sans); letter-spacing: -.05em; text-transform: uppercase; }
.inquiry-form input, .inquiry-form select, .inquiry-form textarea { border: var(--hard-rule); border-radius: 0; }
.toast { border: 2px solid #fff; border-radius: 0; box-shadow: var(--hard-shadow-small); }

/* Inner pages */
.inner-hero { min-height: 700px; padding: 0; border-bottom: var(--hard-rule); grid-template-columns: .9fr 1.1fr; gap: 0; }
.inner-copy { align-self: stretch; padding: 7vw 4vw; border-right: var(--hard-rule); display: flex; flex-direction: column; justify-content: center; }
.inner-copy h1 { font: 800 clamp(68px,8.6vw,132px)/.72 var(--sans); letter-spacing: -.08em; text-transform: uppercase; }
.inner-copy > p:not(.eyebrow) { font-size: 13px; }
.inner-visual { height: 700px; border-radius: 0; }
.inner-copy .demo-label { align-self: flex-start; border: var(--hard-rule); border-radius: 0; background: #fff; }

.product-detail-block { min-height: 760px; border-bottom: var(--hard-rule); }
.product-detail-block:nth-of-type(2) { background: var(--cream); }
.product-detail-block:nth-of-type(3) { background: var(--blue); }
.product-detail-block:nth-of-type(4) { background: var(--pink); }
.detail-image { min-height: 760px; border-right: var(--hard-rule); }
.product-detail-block:nth-child(odd) .detail-image { border-right: 0; border-left: var(--hard-rule); }
.detail-copy { padding: 7vw 6vw; }
.detail-copy h2 { font: 800 clamp(55px,6.5vw,98px)/.74 var(--sans); letter-spacing: -.07em; text-transform: uppercase; }
.detail-copy > p { color: var(--ink); }
.spec-list { border: var(--hard-rule); background: #fff; }
.spec-list div { padding: 13px 15px; border-bottom: 1px solid var(--ink); }
.spec-list div:last-child { border-bottom: 0; }

.range-band { padding: 110px 4vw 130px; border-bottom: var(--hard-rule); background: var(--lavender); }
.range-grid { gap: 24px; }
.range-grid article { min-height: 300px; border: var(--hard-rule); border-radius: 0; box-shadow: var(--hard-shadow); }
.range-grid span { font: 800 55px/.8 var(--sans); }
.range-grid h3 { font: 800 28px/.9 var(--sans); text-transform: uppercase; letter-spacing: -.04em; }

.story-section { border-bottom: var(--hard-rule); grid-template-columns: .25fr 1.1fr .65fr; }
.story-section h2 { font: 800 clamp(58px,7vw,106px)/.74 var(--sans); letter-spacing: -.075em; text-transform: uppercase; }
.story-year { width: 180px; height: 180px; border: var(--hard-rule); border-radius: 0; box-shadow: var(--hard-shadow); transform: rotate(4deg); }
.story-year strong { font: 800 46px/.85 var(--sans); }

.facility-feature { min-height: 730px; border-bottom: var(--hard-rule); grid-template-columns: 1.15fr .85fr; }
.facility-feature img { border-right: var(--hard-rule); }
.facility-copy h2 { font: 800 clamp(52px,6vw,88px)/.75 var(--sans); letter-spacing: -.065em; text-transform: uppercase; }
.facility-copy p { color: var(--ink); }

.values-grid { padding: 110px 4vw 130px; border-bottom: var(--hard-rule); gap: 20px; background: var(--cream); }
.values-grid article { min-height: 330px; border: var(--hard-rule); border-radius: 0; background: #fff; box-shadow: var(--hard-shadow); }
.values-grid article:nth-child(even) { margin-top: 55px; }
.values-grid span { font: 800 44px/.8 var(--sans); }
.values-grid h3 { font: 800 26px/.9 var(--sans); text-transform: uppercase; letter-spacing: -.04em; }

.testimonials-main { padding: 110px 4vw 130px; border-bottom: var(--hard-rule); background: var(--cream); }
.testimonial-grid { gap: 24px; }
.testimonial-card { min-height: 430px; border: var(--hard-rule); border-radius: 0; box-shadow: var(--hard-shadow); }
.testimonial-card:first-child { grid-column: 1 / -1; min-height: 500px; }
.testimonial-card blockquote { font-size: clamp(28px,3.4vw,48px); }
.testimonial-card:first-child blockquote { max-width: 1000px; font-size: clamp(40px,5vw,72px); }
.testimonial-card footer { border-top: var(--hard-rule); }
.testimonial-card .demo-label { align-self: flex-start; border: var(--hard-rule); border-radius: 0; background: #fff; }

.proof-method { padding: 115px 4vw; border-bottom: var(--hard-rule); background: var(--blue); }
.proof-method h2 { font: 800 clamp(54px,6vw,92px)/.74 var(--sans); letter-spacing: -.07em; text-transform: uppercase; }
.proof-list { border-top: var(--hard-rule); }
.proof-list article { border-bottom: var(--hard-rule); }
.proof-list b { font: 800 21px/1 var(--sans); }
.proof-list h3 { font: 800 23px/.95 var(--sans); text-transform: uppercase; letter-spacing: -.035em; }

@media (max-width: 1000px) {
  .site-header { grid-template-columns: 220px 1fr 220px; }
  .desktop-nav a { padding-inline: 16px; }
  .product-cards { grid-template-columns: repeat(3,1fr); }
  .product-card:nth-child(2) { margin-top: 45px; }
  .product-card:nth-child(3) { margin-top: 90px; }
}

@media (max-width: 760px) {
  main::before { min-height: 30px; padding-inline: 18px; font-size: 7px; }
  .site-header { min-height: 70px; grid-template-columns: 1fr auto 1fr; }
  .brand { font-size: 14px; }
  .soft-button { box-shadow: 4px 4px 0 var(--ink); }

  .home-hero { display: flex; padding: 0; }
  .hero-copy { padding: 65px 18px 55px; border-right: 0; border-bottom: var(--hard-rule); }
  .hero-copy h1 { font-size: 18vw; }
  .hero-proof { display: grid; grid-template-columns: 1fr 1fr; }
  .hero-proof div { border-right: var(--hard-rule); border-bottom: var(--hard-rule); }
  .hero-visual { min-height: 112vw; border-radius: 0; }
  .hero-tag { top: 20px; right: 20px; width: 96px; height: 96px; font-size: 13px; }
  .hero-note { bottom: 52px; }
  .partner-strip { flex-wrap: nowrap; overflow: hidden; justify-content: flex-start; }
  .partner-strip span { white-space: nowrap; }

  .intro-grid { padding: 80px 0 90px; }
  .intro-grid h2, .section-heading h2 { font-size: 15vw; }
  .promise-card { margin-right: 8px; border-radius: 0; box-shadow: 7px 7px 0 var(--ink); }

  .product-preview { padding: 80px 14px 95px; }
  .product-cards { display: block; }
  .product-card, .product-card:nth-child(2), .product-card:nth-child(3) { margin: 0 8px 28px 0; border-radius: 0; }
  .product-card-image, .product-card:nth-child(2) .product-card-image, .product-card:nth-child(3) .product-card-image { height: 105vw; border-radius: 0; }

  .flow-section { padding: 85px 18px 95px; }
  .flow-intro h2 { font-size: 16vw; }
  .flow-list article { grid-template-columns: 56px 1fr; }
  .flow-list p { grid-column: 2; }

  .about-preview { display: block; }
  .about-preview-image { min-height: 110vw; border-right: 0; border-bottom: var(--hard-rule); }
  .about-preview-copy { padding: 80px 18px 95px; }
  .about-preview-copy h2 { font-size: 16vw; }

  .testimonial-preview { padding: 80px 18px 95px; }
  .testimonial-preview h2 { font-size: 15vw; }
  .quote-carousel { width: calc(100% - 7px); padding: 25px; box-shadow: 7px 7px 0 var(--ink); }

  .bulk-cta { min-height: 560px; padding: 80px 18px; }
  .bulk-cta h2 { font-size: 16vw; }

  .site-footer { padding: 70px 18px 26px; }
  .site-footer::after { margin-top: 55px; font-size: 21vw; white-space: normal; }

  .inner-hero { display: flex; padding: 0; }
  .inner-copy { padding: 70px 18px 60px; border-right: 0; border-bottom: var(--hard-rule); }
  .inner-copy h1 { font-size: 18vw; }
  .inner-visual { height: 112vw; }

  .product-detail-block { display: flex; }
  .product-detail-block .detail-image, .product-detail-block:nth-child(odd) .detail-image { min-height: 108vw; border: 0; border-bottom: var(--hard-rule); order: 0; }
  .detail-copy { padding: 75px 18px 90px; }
  .detail-copy h2 { font-size: 15vw; }

  .range-band { padding: 80px 14px 95px; }
  .range-grid article { margin: 0 8px 27px 0; border-radius: 0; }

  .story-section { padding: 80px 18px 95px; }
  .story-section h2 { font-size: 15vw; }
  .story-year { width: 150px; height: 150px; }

  .facility-feature { display: block; }
  .facility-feature img { height: 110vw; border-right: 0; border-bottom: var(--hard-rule); }
  .facility-copy { padding: 75px 18px 90px; }
  .facility-copy h2 { font-size: 15vw; }

  .values-grid { padding: 75px 14px 95px; }
  .values-grid article, .values-grid article:nth-child(even) { margin: 0 8px 27px 0; border-radius: 0; }

  .testimonials-main { padding: 80px 14px 95px; }
  .testimonial-card, .testimonial-card:first-child { min-height: 410px; margin: 0 8px 27px 0; border-radius: 0; }
  .testimonial-card:first-child blockquote { font-size: 10vw; }

  .proof-method { padding: 80px 18px 95px; }
  .proof-method h2 { font-size: 15vw; }
}
