/* SUNROSE OMORI — TAKEOUT MENU
   Designed to match the dinner page: warm ivory, wine red, muted gold,
   editorial serif typography, soft cards and responsive layouts.
*/

:root{
  --gold:#d9a62e;
  --gold-bright:#f0c85b;
  --gold-light:#f4df9b;
  --gold-pale:#fbf3df;
  --gold-dim:#b99a58;
  --cream:#f4ead3;
  --cream-2:#fffaf0;
  --off-white:#fcfaf6;
  --white:#ffffff;
  --text-dark:#1c1712;
  --text-mid:#5d4d36;
  --text-muted:#8c7d67;
  --border:rgba(157,119,43,.18);
  --border-strong:rgba(157,119,43,.38);
  --red:#8d2c1c;
  --red-dark:#42150f;
  --red-light:#b64b2d;
  --green:#5f793b;
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:"DM Sans",Arial,sans-serif;
  --max:1180px;
}

/* ================= OMORI PAGE HEADER ================= */

.omori-page-header {
  position: relative;
  width: 100%;
  height: 84px;
  z-index: 50;

  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 0 66px;
  box-sizing: border-box;

  background: #1a1208;
  border-bottom: 1px solid rgba(201, 168, 76, 0.25);
}

.omori-brand {
  position: relative;
  display: inline-flex;
  flex-direction: column;

  color: #f5ead5;
  text-decoration: none;

  transition: opacity 0.25s ease;
}

.omori-brand:hover {
  opacity: 0.8;
}

.omori-brand-name {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: 0.12em;
}

.omori-brand-branch {
  margin-top: 8px;
  margin-left: 74px;

  font-family: "DM Sans", sans-serif;
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.28em;
  line-height: 1;

  color: #d7aa4b;
}


/* ================= TOP NAVIGATION ================= */

.omori-main-nav {
  display: flex;
  align-items: center;
  gap: 34px;
}

.omori-main-nav a {
  color: rgba(255, 255, 255, 0.75);
  text-decoration: none;

  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.08em;

  transition: color 0.25s ease;
}

.omori-main-nav a:hover {
  color: #e8c97a;
}


/* ================= MOBILE ================= */

@media (max-width: 600px) {

  .omori-page-header {
    height: 70px;
    padding: 0 24px;
  }

  .omori-brand-name {
    font-size: 25px;
  }

  .omori-brand-branch {
    margin-top: 6px;
    margin-left: 55px;
    font-size: 7px;
  }

  .omori-main-nav {
    gap: 14px;
  }

  .omori-main-nav a {
    font-size: 10px;
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text-dark);
  background:
    radial-gradient(circle at 10% 15%,rgba(217,166,46,.045),transparent 28%),
    radial-gradient(circle at 90% 70%,rgba(141,44,28,.035),transparent 25%),
    var(--off-white);
  line-height:1.65;
  font-family:var(--sans);
}
img{width:100%;height:100%;object-fit:cover;display:block}
a{color:inherit}
.home-btn{
  position:fixed;z-index:20;left:20px;top:18px;
  padding:9px 14px;border:1px solid rgba(240,200,91,.25);
  border-radius:999px;background:rgba(23,16,11,.72);color:#fff;
  text-decoration:none;font-size:11px;letter-spacing:.08em;
  backdrop-filter:blur(10px)
}

/* HERO — matched to SUNROSE DINNER */
.takeout-hero{
  position:relative;
  min-height:520px;
  display:grid;
  place-items:center;
  overflow:hidden;
  isolation:isolate;
  text-align:center;
  color:var(--white);
  background:#1a1009;
}
.takeout-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    radial-gradient(ellipse 70% 55% at 50% 25%,rgba(217,166,46,.20),transparent 70%),
    radial-gradient(ellipse 45% 45% at 85% 85%,rgba(141,44,28,.30),transparent 70%),
    linear-gradient(145deg,#140b07 0%,#32170d 45%,#160c08 100%);
}
.takeout-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.42;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.055'/%3E%3C/svg%3E");
}
.hero-pattern{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
}
.hero-pattern::before,
.hero-pattern::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(240,200,91,.13);
  border-radius:50%;
}
.hero-pattern::before{width:min(760px,82vw);height:min(760px,82vw)}
.hero-pattern::after{width:min(500px,58vw);height:min(500px,58vw);border-color:rgba(240,200,91,.09)}
.hero-content{
  width:min(900px,100%);
  position:relative;
  z-index:2;
  padding:90px 24px 100px;
  animation:fadeUp .9s ease both;
}
.eyebrow{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  color:var(--gold-bright);
  font-size:11px;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.eyebrow::before,.eyebrow::after{
  content:"";
  width:42px;
  height:1px;
  background:linear-gradient(to right,transparent,var(--gold-dim));
}
.eyebrow::after{background:linear-gradient(to left,transparent,var(--gold-dim))}
.takeout-hero h1{
  margin:25px 0 22px;
  font-family:var(--serif);
  font-size:clamp(3.2rem,8vw,6.5rem);
  line-height:.92;
  font-weight:300;
  letter-spacing:-.025em;
}
.takeout-hero h1 em{
  display:inline;
  margin:0;
  font-family:var(--serif);
  font-style:italic;
  font-size:inherit;
  letter-spacing:inherit;
  font-weight:300;
  color:var(--gold-light);
}
.takeout-hero p{
  max-width:590px;
  margin:0 auto 30px;
  color:rgba(255,255,255,.68);
  font-size:14px;
  font-weight:300;
  letter-spacing:.035em;
}

/* NAV */
.takeout-nav{
  position:sticky;top:0;z-index:15;
  display:flex;justify-content:center;gap:4px;flex-wrap:wrap;
  padding:10px 16px;background:rgba(252,250,246,.94);
  border-bottom:1px solid var(--border);backdrop-filter:blur(14px)
}
.takeout-nav a{
  padding:9px 15px;border-radius:999px;text-decoration:none;
  font-size:12px;color:var(--text-mid);transition:.2s
}
.takeout-nav a:hover{background:#3a281b;color:var(--gold-light)}

/* COMMON */
main{max-width:var(--max);margin:auto;padding:34px 22px 70px}
.intro-card{
  display:flex;align-items:center;gap:20px;max-width:920px;margin:0 auto 45px;
  padding:22px 25px;border:1px solid var(--border);border-radius:20px;
  background:rgba(255,255,255,.72);box-shadow:0 12px 30px rgba(57,28,10,.06)
}
.intro-mark{
  width:54px;height:54px;display:grid;place-items:center;flex:none;
  border-radius:50%;background:var(--red);color:#f7d98b;font-size:23px
}
.kicker,.section-heading small,.curry-heading small,.spice-title small{
  display:block;color:var(--gold-dim);font-size:10px;font-weight:800;letter-spacing:.2em
}
.intro-card h2{font-family:var(--serif);font-size:29px;margin:3px 0 2px;font-weight:600}
.intro-card p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.6}

.menu-section{margin:65px 0}
.section-heading{
  display:flex;align-items:center;gap:16px;margin-bottom:25px
}
.section-heading>span{
  font-family:var(--serif);font-size:40px;color:var(--gold);line-height:1
}
.section-heading h2{font-family:var(--serif);font-size:38px;margin:2px 0 0;font-weight:500}
.section-heading>div{flex:1}
.section-heading:after{
  content:"";height:1px;background:linear-gradient(90deg,var(--gold),transparent);
  flex:1
}

/* FEATURED SETS */
.featured-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px
}
.featured-card{
  overflow:hidden;border-radius:20px;background:var(--cream-2);
  border:1px solid var(--border);box-shadow:0 12px 28px rgba(49,28,10,.08);
  transition:transform .22s,box-shadow .22s
}
.featured-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(49,28,10,.13)}
.set-photo{height:205px;background:#eee}
.card-body{padding:17px 17px 20px;border-top:5px solid var(--red)}
.featured-card.navy .card-body{border-color:var(--gold-dim)}
.featured-card.green .card-body{border-color:var(--green)}
.featured-card.burgundy .card-body{border-color:var(--red)}
.card-top{display:flex;justify-content:space-between;align-items:center;color:#8b6a32}
.card-top strong{font-family:var(--serif);font-size:25px;color:var(--red-dark)}
.set-label{font-size:10px;letter-spacing:.16em}
.card-body h3{margin:6px 0 13px;font-family:var(--serif);font-size:25px;font-weight:600;line-height:1.05}
.card-body ul{list-style:none;margin:0;padding:0}
.card-body li{
  padding:6px 0;border-top:1px solid rgba(100,70,35,.08);
  font-size:11px;line-height:1.4
}
.card-body li:before{content:"✦";color:var(--gold);margin-right:7px;font-size:8px}

/* UPGRADE */
.upgrade-banner{
  margin-top:20px;padding:17px 21px;display:flex;align-items:center;gap:15px;
  border:1px solid rgba(172,123,36,.3);border-radius:16px;
  background:linear-gradient(100deg,#fff4cc,#fffaf0)
}
.upgrade-icon{
  width:39px;height:39px;border-radius:50%;display:grid;place-items:center;
  background:var(--red);color:var(--gold-light)
}
.upgrade-banner small{font-size:9px;letter-spacing:.18em;color:var(--gold-dim);font-weight:800}
.upgrade-banner strong{display:block;font-size:14px;margin-top:2px}
.upgrade-banner p{margin:4px 0 0;color:#776b5f;font-size:12px}

/* SINGLE SETS */
.single-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.single-card{
  position:relative;overflow:hidden;border:1px solid var(--border);border-radius:18px;
  background:#fffdf8;box-shadow:0 10px 24px rgba(49,28,10,.07)
}
.single-card.special{border-color:rgba(141,44,28,.35)}
.single-number{
  position:absolute;z-index:2;top:12px;left:12px;
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,252,244,.93);color:var(--red);
  font-family:var(--serif);font-size:23px;font-weight:600;
  box-shadow:0 4px 12px rgba(40,20,10,.12)
}
.single-image{height:185px;background:#eee}
.single-content{padding:16px 17px 19px}
.single-content .price{
  font-family:var(--serif);font-size:27px;font-weight:600;color:var(--red)
}
.single-content h3{font-family:var(--serif);font-size:25px;margin:1px 0 8px}
.single-content p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.55}

/* CURRY */
.curry-section{
  padding:30px;border-radius:25px;
  background:linear-gradient(145deg,#140b07 0%,#32170d 45%,#5a2717 100%);
  color:#fff;box-shadow:0 20px 48px rgba(70,20,18,.18)
}
.curry-heading{display:flex;gap:16px;align-items:center;margin-bottom:20px}
.curry-heading .down{
  width:43px;height:43px;display:grid;place-items:center;border-radius:50%;
  background:var(--gold-light);color:#42150f;font-size:23px
}
.curry-heading h2{margin:3px 0 0;font-family:var(--serif);font-size:29px;font-weight:500}
.curry-heading small{color:var(--gold-light)}
.curry-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}
.curry-chip{
  min-height:77px;padding:12px 8px;display:flex;flex-direction:column;justify-content:center;
  text-align:center;border-radius:13px;color:#fff;
  border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08)
}
.curry-chip b{font-size:10px;letter-spacing:.04em}
.curry-chip span{font-size:11px;opacity:.78;margin-top:5px}
.curry-chip.chicken{background:#d65c2a}.curry-chip.pork{background:#a33a4c}
.curry-chip.keema{background:#486a49}.curry-chip.mutton{background:#65413d}
.curry-chip.sag{background:#304c7a}.curry-chip.prawn{background:#6b3982}
.curry-chip.dal{background:#23736c}.curry-chip.butter{background:#b62d4a}

/* SPICE */
.spice-section{
  margin-top:24px;padding:25px;border:1px solid var(--border);border-radius:23px;
  background:#fffdf8;box-shadow:0 10px 28px rgba(49,28,10,.06)
}
.spice-title{display:flex;gap:13px;align-items:center;margin-bottom:18px}
.spice-title>span{font-size:28px}
.spice-title h2{font-family:var(--serif);font-size:26px;margin:2px 0 0;font-weight:500}
.spice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.spice{
  padding:15px 10px;text-align:center;border-radius:15px;background:var(--gold-pale);
  border:1px solid rgba(157,119,43,.10)
}
.spice span{display:block;min-height:25px;font-size:17px}
.spice strong{display:block;margin-top:6px;font-size:11px}
.spice small{display:block;color:#8c7b6b;margin-top:3px;font-size:10px}
.spice.mild{border-top:4px solid #d9d0bf}
.spice.medium{border-top:4px solid #dfad45}
.spice.spicy{border-top:4px solid #c94b34}
.spice.hot{border-top:4px solid #a5292b}
.spice.super{border-top:4px solid #67101e}

/* FOOTER — FULL WIDTH */

.takeout-footer {
  width: 100vw;
  min-height: 128px;
  box-sizing: border-box;
  margin-left: calc(50% - 50vw);
  padding: 44px 24px 38px;

  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;

  color: #c9a95a;
  background: #17100b;
  border-top: 1px solid rgba(234,173,6,.08);
}

.takeout-footer p {
  margin: 0;
  font-family: var(--sans);
  font-size: 11px;
  line-height: 1.7;
  font-weight: 400;
  letter-spacing: .08em;
  color: #bda66e;
}

.takeout-footer p span {
  color: #e3ad20;
}

@media (max-width: 650px) {
  .takeout-footer {
    min-height: 112px;
    padding: 36px 18px 32px;
  }

  .takeout-footer p {
    font-size: 10px;
    letter-spacing: .055em;
  }
}

/* ANIMATION */
@keyframes fadeUp{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:translateY(0)}
}

/* RESPONSIVE */
@media(max-width:1000px){
  .featured-grid,.single-grid{grid-template-columns:repeat(2,1fr)}
  .curry-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:650px){
  main{padding:25px 14px 0}
  .takeout-hero{min-height:430px}
  .takeout-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}
  .takeout-nav a{white-space:nowrap}
  .intro-card{align-items:flex-start;padding:18px}
  .intro-card h2{font-size:24px}
  .section-heading h2{font-size:31px}
  .section-heading:after{display:none}
  .featured-grid,.single-grid{grid-template-columns:1fr}
  .set-photo{height:230px}
  .single-image{height:230px}
  .curry-section{padding:21px 16px}
  .curry-grid{grid-template-columns:repeat(2,1fr)}
  .spice-section{padding:19px 14px}
  .spice-grid{grid-template-columns:repeat(2,1fr)}
  .spice:last-child{grid-column:1/-1}
}
