/* =========================================================
   Aadhi Media LLP: type and editing layer (owner, 2026-10-17). Loads last, on every page.
   Fonts follow Elementor > Site Settings > Global Fonts:
     Primary  (headings)                 -> --am-display
     Text     (paragraphs)               -> --am-body
     Accent   (labels, menu, buttons)    -> --am-head
   Change a global font in Elementor and the whole site follows; the fallbacks are the current choice
   (Cormorant Garamond headings, Manrope for everything else).
   ========================================================= */
html body {
	--am-display: var(--e-global-typography-primary-font-family, 'Cormorant Garamond'), Georgia, 'Times New Roman', serif;
	--am-body: var(--e-global-typography-text-font-family, 'Manrope'), system-ui, -apple-system, 'Segoe UI', sans-serif;
	--am-head: var(--e-global-typography-accent-font-family, 'Manrope'), system-ui, -apple-system, 'Segoe UI', sans-serif;
	font-family: var(--am-body);
}
/* body text that some layers set directly */
html body .elementor-widget-text-editor, html body .elementor-widget-text-editor p,
html body input, html body select, html body textarea { font-family: var(--am-body); }

/* headings stored as plain text: "Line one<br><em class="am-red">Line two</em>" */
html body .am-h2 .elementor-heading-title br, html body .am-feat-h .elementor-heading-title br { display: block; content: ""; }
html body .am-h2 em.am-red, html body .am-h1 em.am-red { font-style: italic; font-weight: 500; }
html body #about .am-h2 em.am-red { color: var(--ab-gold, #C6A15B) !important; font-style: italic; }

/* Advantage: one line on desktop, wraps naturally on smaller screens */
html body #advantage .am-h2 .elementor-heading-title { white-space: nowrap; }
@media (max-width: 1024px) { html body #advantage .am-h2 .elementor-heading-title { white-space: normal; text-wrap: balance; } }

/* ---------- Elementor editor: every section always visible (no scroll-reveal states while editing) ---------- */
html body.elementor-editor-active .am-reveal, html body.elementor-editor-active .am-reveal .am-ln > span,
html body.elementor-editor-active .am-ln > span, html body.elementor-editor-active .am-curtain img,
html body.elementor-editor-active .e-con.am-scope, html body.elementor-editor-active .am-cap-body,
html body.elementor-editor-active .am-mo, html body.elementor-editor-active .am-ab-item, html body.elementor-editor-active .am-unveil,
html body.elementor-editor-active .am-rise, html body.elementor-editor-active .am-mv-panel, html body.elementor-editor-active .am-mv-panel *,
html body.elementor-editor-active .swiper-slide-inner, html body.elementor-editor-active .am-about-img,
html body.elementor-editor-active .am-hero-tag, html body.elementor-editor-active .am-hero-copy, html body.elementor-editor-active .am-hero-btns {
	opacity: 1 !important; transform: none !important; clip-path: none !important; visibility: visible !important; animation: none !important;
}
html body.elementor-editor-active .am-gate { display: none !important; }

/* ---------- dark photo sections: a dark base colour under the photo so the light text reads at once ---------- */
html body #partnerships.e-con, html body #productions.e-con, html body #contact.e-con { background-color: #131313 !important; }

/* =========================================================
   Native widgets that replaced HTML blocks (owner, 2026-10-17: everything editable in Elementor).
   Low specificity on purpose: changes made in a widget's Style tab in Elementor take priority.
   ========================================================= */
/* figures row (About) */
.e-con.am-figs-n { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 56px; }
.e-con.am-fig { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; justify-content: center; align-items: center; column-gap: 16px; row-gap: 4px; padding: 8px 12px; border-left: 1px solid rgba(242, 235, 223, .12); }
.e-con.am-fig:first-child { border-left: 0; }
.am-fig > .am-fig-ico { grid-row: 1 / span 2; width: auto; }
.am-fig-ico svg { display: block; width: 42px; height: 42px; fill: none; stroke: #C6A15B; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.am-fig-num .elementor-heading-title { font-family: var(--am-display); font-size: 54px; font-weight: 500; line-height: 1; color: #F2EBDF; }
.am-fig-label .elementor-heading-title { font-family: var(--am-body); font-size: 13.5px; font-weight: 400; line-height: 1.4; color: #8F857B; }
@media (min-width: 1025px) { .am-fig-label .elementor-heading-title { white-space: nowrap; } }
@media (max-width: 1024px) {
	.e-con.am-figs-n { grid-template-columns: 1fr 1fr; row-gap: 36px; }
	.e-con.am-fig:nth-child(3) { border-left: 0; }
	.e-con.am-fig { justify-content: start; }
}
@media (max-width: 767px) {
	.am-fig-num .elementor-heading-title { font-size: 40px; }
	.am-fig-ico svg { width: 30px; height: 30px; }
	.e-con.am-fig { column-gap: 10px; padding: 4px 8px; }
}

/* Sree Ayyappan specs */
.e-con.am-specs-n { margin: 0 0 32px; }
.e-con.am-spec-row { display: grid; grid-template-columns: 130px 1fr; gap: 6px 20px; padding: 14px 0; border-top: 1px solid rgba(255, 255, 255, .16); }
.e-con.am-spec-row:last-child { border-bottom: 1px solid rgba(255, 255, 255, .16); }
.am-spec-k .elementor-heading-title { font-family: var(--am-head); font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: #FF4D63; line-height: 1.6; }
.am-spec-v, .am-spec-v p { font-family: var(--am-body); font-size: 15px; line-height: 1.6; color: #F0EDE8; margin: 0; }
@media (max-width: 640px) { .e-con.am-spec-row { grid-template-columns: 1fr; } }

/* contact topics (Icon List): the font is the widget's own Typography setting */
.am-topics-n .elementor-icon-list-items { margin: 32px 0 0; padding: 0; max-width: 460px; }
.am-topics-n .elementor-icon-list-item { display: flex; align-items: center; gap: 14px; margin: 0 !important; padding: 13px 0 !important; border-bottom: 1px solid rgba(255, 255, 255, .16); }
.am-topics-n .elementor-icon-list-item::before { content: ""; width: 8px; height: 8px; flex: 0 0 8px; background: #C8102E; }
.am-topics-n .elementor-icon-list-icon { display: none; }
.am-topics-n .elementor-icon-list-text { font-size: 16px; letter-spacing: .06em; text-transform: uppercase; color: #fff; }

/* ---------- contact details (owner, 2026-10-17): Contact section and footer, native Icon List widgets ---------- */
.e-con.am-cinfo { margin-top: 40px; padding-top: 30px; border-top: 1px solid rgba(255, 255, 255, .16); max-width: 460px; }
.am-cinfo-h .elementor-heading-title { font-family: var(--am-display); font-size: 28px; font-weight: 500; line-height: 1.2; color: #fff; }
.e-con .elementor-widget.am-cinfo-h { margin-bottom: 16px; }
.am-cinfo-list .elementor-icon-list-items { margin: 0; padding: 0; }
.am-cinfo-list .elementor-icon-list-item { align-items: flex-start; margin: 0 0 12px !important; padding: 0 !important; }
.am-cinfo-list .elementor-icon-list-item > a { display: flex; align-items: flex-start; }
.am-cinfo-list .elementor-icon-list-icon { width: 18px; margin-top: 4px; }
.am-cinfo-list .elementor-icon-list-icon svg { width: 14px; height: 14px; fill: #E5092A; }
.am-cinfo-list .elementor-icon-list-text { padding-left: 12px; font-family: var(--am-body); font-size: 15.5px; line-height: 1.6; color: #E8E3DA; transition: color .3s ease; }
.am-cinfo-list a:hover .elementor-icon-list-text, .am-cinfo-list a:focus-visible .elementor-icon-list-text { color: #FF4D63; }
/* footer row */
.am-fcinfo { width: 100%; margin-top: 26px; }
.am-fcinfo .elementor-icon-list-items { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; margin: 0; padding: 0; }
.am-fcinfo .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; align-items: center; }
.am-fcinfo .elementor-icon-list-item::after { display: none !important; }
.am-fcinfo .elementor-icon-list-icon svg { width: 13px; height: 13px; fill: #E5092A; }
.am-fcinfo .elementor-icon-list-text { padding-left: 9px; font-family: var(--am-body); font-size: 14px; color: #D8D2C8; transition: color .3s ease; }
.am-fcinfo a:hover .elementor-icon-list-text, .am-fcinfo a:focus-visible .elementor-icon-list-text { color: #fff; }
@media (max-width: 767px) { .am-fcinfo .elementor-icon-list-items { flex-direction: column; align-items: center; } }