/* =========================================================================
   Grace of Punjab – site elements in the style of the dish pages.
   Backgrounds are NOT changed: only buttons, headings, icons, images,
   cards, menus and animations. Loaded on every page (header & footer too)
   once "Apply" is clicked in Menu Dishes → Settings.
   ========================================================================= */
:root {
	--gop-gold: #c9a45c;
	--gop-gold-hi: #ecd28f;
	--gop-gold-lo: #a37a2e;
	--gop-goldgrad: linear-gradient(180deg, #f3d792 0%, #d3a956 50%, #b1832f 100%);
	--gop-ease: cubic-bezier(.22, .61, .36, 1);
}

/* ---------- headings: same font as the dish pages ---------- */
body.gop-site .elementor-heading-title,
body.gop-site .elementor-headline,
body.gop-site .elementor-icon-box-title,
body.gop-site .elementor-image-box-title,
body.gop-site .e-n-accordion-item-title-text,
body.gop-site .elementor-tab-title,
body.gop-site .eael-accordion_media-list [class*="title"],
body.gop-site .n2-ss-slider .n2-ss-item-content[class*="-heading"] {
	font-family: "Cinzel", Georgia, serif !important;
	letter-spacing: .02em;
}
body.gop-site .elementor-headline-dynamic-text,
body.gop-site .elementor-headline-dynamic-letter { color: var(--gop-gold) !important; }
body.gop-site .elementor-headline svg path { stroke: var(--gop-gold) !important; }

/* gold ornament under section headings (added by site-motion.js) */
.gop-orn { display: block; width: 140px; height: 14px; margin: 14px 0 4px; color: var(--gop-gold); }
.gop-orn.is-center { margin-left: auto; margin-right: auto; }
.gop-orn.is-right { margin-left: auto; }
.gop-orn svg { display: block; width: 100%; height: 100%; overflow: visible; }
.gop-orn path, .gop-orn circle { transform-origin: 50% 50%; }
.gop-orn .l, .gop-orn .r { transition: transform .9s var(--gop-ease) .15s; }
.gop-orn .l { transform: scaleX(0); transform-origin: 100% 50%; }
.gop-orn .r { transform: scaleX(0); transform-origin: 0 50%; }
.gop-in .gop-orn .l, .gop-in .gop-orn .r, .gop-orn.gop-in .l, .gop-orn.gop-in .r { transform: scaleX(1); }

/* ---------- buttons: soft gold with black text; rich gold fills in on hover ---------- */
html body.gop-site .elementor-button,
html body.gop-site .eael-creative-button,
html body.gop-site .n2-ss-button-container a,
html body.gop-site button[type="submit"], html body.gop-site input[type="submit"],
html body.gop-site .wp-block-button__link,
html body.gop-site .gop-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	background: linear-gradient(180deg, #f3d792 0%, #d3a956 50%, #b1832f 100%) no-repeat left center, linear-gradient(180deg, #f6e6bd, #e6cd8e) !important;
	background-size: 0% 100%, 100% 100% !important;
	color: #16110b !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: inset 0 0 0 1.5px #b1832f, 0 8px 20px -14px rgba(169, 122, 44, .7) !important;
	padding: 15px 30px !important;
	font-family: "Poppins", "Helvetica Neue", Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	filter: none !important;
	transition: background-size .45s var(--gop-ease), box-shadow .35s var(--gop-ease), transform .35s var(--gop-ease) !important;
}
html body.gop-site .n2-ss-button-container a { min-height: 0; padding: 14px 28px !important; }
html body.gop-site .elementor-button .elementor-button-text,
html body.gop-site .elementor-button .elementor-button-icon,
html body.gop-site .n2-ss-button-container a * { color: #16110b !important; fill: #16110b !important; font-weight: 700 !important; }
html body.gop-site .elementor-button svg { fill: #16110b !important; }

html body.gop-site .elementor-button:hover, html body.gop-site .elementor-button:focus-visible,
html body.gop-site .eael-creative-button:hover,
html body.gop-site .n2-ss-button-container a:hover,
html body.gop-site button[type="submit"]:hover, html body.gop-site input[type="submit"]:hover,
html body.gop-site .wp-block-button__link:hover,
html body.gop-site .gop-btn:hover {
	background-size: 100% 100%, 100% 100% !important;
	color: #000 !important;
	box-shadow: inset 0 0 0 1.5px #b1832f, 0 14px 28px -12px rgba(169, 122, 44, .85) !important;
	transform: translateY(-2px);
}
html body.gop-site .elementor-button:active, html body.gop-site .gop-btn:active { transform: translateY(0); }

/* light (parchment / white) sections */
body.gop-site .gop-light .elementor-headline-dynamic-text,
body.gop-site .gop-light .elementor-headline-dynamic-letter { color: #94661C !important; }
body.gop-site .gop-light .gop-orn { color: #A97A2C; }
body.gop-site .gop-light .elementor-icon-list-icon svg, body.gop-site .gop-light .elementor-icon-list-icon i { color: #A97A2C !important; fill: #A97A2C !important; }

/* ---------- icons ---------- */
body.gop-site .elementor-view-stacked .elementor-icon {
	background: var(--gop-goldgrad) !important;
	box-shadow: 0 10px 22px -12px rgba(169, 122, 44, .8);
	transition: transform .35s var(--gop-ease);
}
body.gop-site .elementor-view-stacked .elementor-icon i,
body.gop-site .elementor-view-stacked .elementor-icon svg { color: #16110b !important; fill: #16110b !important; }
body.gop-site .elementor-view-framed .elementor-icon { border-color: var(--gop-gold) !important; color: var(--gop-gold) !important; }
body.gop-site .elementor-view-framed .elementor-icon svg { fill: var(--gop-gold) !important; }
body.gop-site .elementor-widget-icon-box:hover .elementor-icon,
body.gop-site .elementor-widget-icon:hover .elementor-icon { transform: translateY(-3px) rotate(-4deg); }
body.gop-site .elementor-icon-list-icon i,
body.gop-site .elementor-icon-list-icon svg { color: var(--gop-gold) !important; fill: var(--gop-gold) !important; }

/* social icons: gold outline, fill on hover */
body.gop-site .elementor-social-icon {
	background: transparent !important;
	box-shadow: inset 0 0 0 1.5px var(--gop-gold);
	transition: background-color .3s, transform .3s var(--gop-ease) !important;
}
body.gop-site .elementor-social-icon i, body.gop-site .elementor-social-icon svg { color: var(--gop-gold) !important; fill: var(--gop-gold) !important; }
body.gop-site .elementor-social-icon:hover { background: var(--gop-gold) !important; transform: translateY(-3px); }
body.gop-site .elementor-social-icon:hover i, body.gop-site .elementor-social-icon:hover svg { color: #16110b !important; fill: #16110b !important; }

/* ---------- images: rounded, gold edge, gentle zoom (like the dish photos) ---------- */
body.gop-site .gop-img {
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 0 0 1px rgba(201, 164, 92, .45), 0 24px 40px -26px rgba(0, 0, 0, .8);
	transition: box-shadow .4s var(--gop-ease), transform .4s var(--gop-ease);
}
body.gop-site .gop-img img { display: block; border-radius: 0 !important; transition: transform 1.1s var(--gop-ease) !important; }
body.gop-site .gop-img:hover { box-shadow: 0 0 0 1px rgba(201, 164, 92, .9), 0 30px 50px -26px rgba(0, 0, 0, .9); }
body.gop-site .gop-img:hover img { transform: scale(1.045); }

/* ---------- cards (boxes with a border / panels) ---------- */
body.gop-site .gop-card {
	transition: transform .4s var(--gop-ease), box-shadow .4s var(--gop-ease), border-color .4s !important;
}
body.gop-site .gop-card:hover {
	transform: translateY(-4px);
	border-color: rgba(201, 164, 92, .85) !important;
	box-shadow: 0 0 0 1px rgba(201, 164, 92, .5), 0 26px 44px -26px rgba(0, 0, 0, .85) !important;
}

/* ---------- header ---------- */
body.gop-site .elementor-location-header { transition: box-shadow .35s; }
body.gop-site.gop-scrolled .elementor-location-header .e-con.e-parent:first-child,
body.gop-site.gop-scrolled .elementor-location-header > .elementor-section:first-child {
	box-shadow: 0 1px 0 rgba(201, 164, 92, .45), 0 12px 30px -16px rgba(0, 0, 0, .9);
}
body.gop-site .elementor-nav-menu--main .elementor-item {
	font-family: "Cinzel", Georgia, serif !important;
	letter-spacing: .08em;
	position: relative;
	transition: color .3s !important;
}
body.gop-site .elementor-nav-menu--main .elementor-item:hover,
body.gop-site .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--gop-gold-hi) !important; }
body.gop-site .elementor-nav-menu--main .elementor-item::after {
	content: "" !important;
	position: absolute !important;
	left: 20% !important; right: 20% !important; bottom: 4px !important; top: auto !important;
	height: 1.5px !important; width: auto !important;
	background: var(--gop-gold) !important;
	opacity: 1 !important;
	transform: scaleX(0); transition: transform .35s var(--gop-ease) !important;
}
body.gop-site .elementor-nav-menu--main .elementor-item:hover::after,
body.gop-site .elementor-nav-menu--main .elementor-item.elementor-item-active::after { transform: scaleX(1); }
body.gop-site .elementor-nav-menu--dropdown a:hover,
body.gop-site .elementor-nav-menu--dropdown a.elementor-item-active { color: var(--gop-gold) !important; }
body.gop-site .elementor-menu-toggle svg, body.gop-site .elementor-menu-toggle i { fill: var(--gop-gold) !important; color: var(--gop-gold) !important; }

/* ---------- FAQ / accordions: gold accents only ---------- */
body.gop-site .e-n-accordion-item, body.gop-site .elementor-accordion-item, body.gop-site .elementor-toggle-item,
body.gop-site .eael-accordion_media-list { border-color: rgba(201, 164, 92, .55) !important; transition: border-color .3s, transform .3s var(--gop-ease); }
body.gop-site .eael-accordion_media-list:hover { border-color: var(--gop-gold) !important; transform: translateX(3px); }
body.gop-site .e-n-accordion-item-title-icon, body.gop-site .elementor-accordion-icon,
body.gop-site .eael-accordion_media-list svg, body.gop-site .eael-accordion_media-list i { color: var(--gop-gold) !important; fill: var(--gop-gold) !important; }

/* ---------- Smart Slider (hero) ---------- */
body.gop-site .n2-ss-slider .n2-bullet { background-color: rgba(201, 164, 92, .45) !important; }
body.gop-site .n2-ss-slider .n2-bullet.n2-active { background-color: var(--gop-gold) !important; }

/* ---------- reveal on scroll (same fade-up as the dish page) ---------- */
.gop-reveal { opacity: 0; transform: translateY(22px); transition: opacity .8s var(--gop-ease), transform .8s var(--gop-ease); transition-delay: var(--gop-d, 0s); will-change: opacity, transform; }
.gop-reveal.gop-reveal--img { transform: translateY(16px) scale(.985); }
.gop-reveal.gop-in { opacity: 1; transform: none; }

/* small selection & scrollbar touches */
body.gop-site ::selection { background: var(--gop-gold); color: #16110b; }

@media (prefers-reduced-motion: reduce) {
	.gop-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
	body.gop-site .gop-img:hover img, body.gop-site .gop-card:hover, body.gop-site .elementor-button:hover { transform: none !important; }
	html body.gop-site .elementor-button, html body.gop-site .gop-btn { transition: none !important; }
}

/* =====================================================================
   v2.5 – borders, FAQ and buttons exactly like the dish pages
   ===================================================================== */

/* every bordered box (cards, panels, footer columns): thin gold edge, rounded like the dish cards */
body.gop-site .gop-card {
	border-color: rgba(201, 164, 92, .55) !important;
	border-radius: 14px !important;
	box-shadow: 0 24px 40px -30px rgba(0, 0, 0, .8);
}
body.gop-site .gop-card:hover { border-color: rgba(201, 164, 92, .95) !important; }
/* full-width separator lines (e.g. footer rows) */
body.gop-site .gop-line { border-color: rgba(201, 164, 92, .28) !important; }

/* FAQ – black & gold, same borders as the dish page */
body.gop-site .eael-accordion_media-list,
body.gop-site .e-n-accordion-item,
body.gop-site .elementor-accordion-item,
body.gop-site .elementor-toggle-item {
	background: #16130f !important;
	border: 1px solid rgba(201, 164, 92, .35) !important;
	border-radius: 14px !important;
	box-shadow: none !important;
	overflow: hidden;
	transition: border-color .3s, box-shadow .3s, transform .3s var(--gop-ease) !important;
}
body.gop-site .elementor-accordion-item + .elementor-accordion-item,
body.gop-site .elementor-toggle-item + .elementor-toggle-item { margin-top: 10px; }
body.gop-site .eael-accordion_media-list:hover,
body.gop-site .eael-accordion_media-list.active,
body.gop-site .e-n-accordion-item:hover,
body.gop-site .e-n-accordion-item[open],
body.gop-site .elementor-accordion-item:hover,
body.gop-site .elementor-toggle-item:hover {
	border-color: rgba(201, 164, 92, .9) !important;
	box-shadow: 0 0 0 1px rgba(201, 164, 92, .3), 0 18px 32px -22px rgba(0, 0, 0, .9) !important;
}
body.gop-site .eael-accordion_media-list * { color: #cbbfa8 !important; background-color: transparent !important; }
body.gop-site .eael-accordion_media-list [class*="title"],
body.gop-site .e-n-accordion-item-title, body.gop-site .e-n-accordion-item-title-text,
body.gop-site .elementor-tab-title, body.gop-site .elementor-tab-title a {
	color: #ecd28f !important;
	font-family: "Cinzel", Georgia, serif !important;
	letter-spacing: .03em;
	background: transparent !important;
}
body.gop-site .eael-accordion_media-list.active [class*="title"] { color: #f3d792 !important; }
body.gop-site .elementor-tab-content, body.gop-site .e-n-accordion-item > [role="region"] {
	color: #cbbfa8 !important; background: transparent !important; border-color: rgba(201, 164, 92, .2) !important;
}
body.gop-site .eael-accordion_media-icon {
	border-color: rgba(201, 164, 92, .6) !important;
	border-radius: 50% !important;
}
body.gop-site .eael-accordion_media-icon svg, body.gop-site .eael-accordion_media-icon i,
body.gop-site .e-n-accordion-item-title-icon svg, body.gop-site .elementor-accordion-icon svg { fill: #c9a45c !important; color: #c9a45c !important; }
body.gop-site .eael-accordion_media-list.active .eael-accordion_media-icon { background: linear-gradient(180deg, #f3d792, #b1832f) !important; border-color: transparent !important; }
body.gop-site .eael-accordion_media-list.active .eael-accordion_media-icon svg { fill: #16110b !important; }
