/*
Theme Name: Tony Montana Media
Theme URI: https://tonymontanamedia.net
Author: Tony Montana Media
Description: Native WordPress block theme for Tony Montana Media. No Elementor. Editable templates, patterns, header, footer, SEO content, and global contact section.
Version: 1.2.1
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
Text Domain: tony-montana-media
*/

html { scroll-behavior: smooth; }
body { background: #070707; }
a { text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.wp-site-blocks { overflow-x: hidden; }
.tmm-site-header { position: sticky; top: 0; z-index: 50; backdrop-filter: blur(12px); }
.tmm-header-logo img { max-height: 72px; width: auto; }
.tmm-section-eyebrow { letter-spacing: .16em; text-transform: uppercase; }
.tmm-card { transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.tmm-card:hover { transform: translateY(-4px); border-color: #e50914 !important; box-shadow: 0 18px 55px rgba(229,9,20,.18); }
.tmm-footer a { color: inherit; }
@media (max-width: 782px) {
  .tmm-header-logo img { max-height: 54px; }
}

.tmm-service-card { overflow: hidden; }
.tmm-service-card figure { margin: 0 0 22px 0; }
.tmm-service-card figure a { display: block; }
.tmm-service-card img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; background:#050505; display: block; transition: transform .25s ease; }
.tmm-service-card:hover img { transform: scale(1.04); }

.tmm-article-grid-card { overflow: hidden; }
.tmm-article-grid-card .wp-block-post-featured-image { margin: 0; }
.tmm-article-grid-card .wp-block-post-featured-image img { width: 100%; height: 220px; object-fit: cover; }

/* v1.0.9 hero slider width fix: keep the graphic slides from being constrained or side-cropped. */
.tmm-hero-slider { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }


/* v1.1.1 service grid and icon badges */
.tmm-services-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.tmm-services-grid > .tmm-service-card { height: 100%; min-width: 0; }
.tmm-service-card { position: relative; display: flex; flex-direction: column; }
.tmm-service-card .wp-block-group { flex: 1; }
.tmm-service-card h3 a { color: inherit; text-decoration: none; }
.tmm-service-media { position: relative; }
.tmm-service-icon { position: absolute; left: 20px; bottom: -24px; z-index: 3; width: 58px; height: 58px; display: inline-flex; align-items: center; justify-content: center; border-radius: 18px; background: #e50914; color: #fff !important; text-decoration: none; box-shadow: 0 16px 34px rgba(229,9,20,.35); border: 1px solid rgba(255,255,255,.18); }
.tmm-service-icon span { font-size: .9rem; font-weight: 900; letter-spacing: .04em; line-height: 1; }
.tmm-service-card .wp-block-group[style*="padding-right:24px"] { padding-top: 30px; }
@media (max-width: 980px) { .tmm-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .tmm-services-grid { grid-template-columns: 1fr; } }


/* v1.1.2 sharper service/article image presentation */
.tmm-service-card img { background:#0b0b0c; height: 230px; object-fit: cover; }
.tmm-service-media:after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.28)); }
.tmm-article-grid-card .wp-block-post-featured-image img, .tmm-post-card-image img { background:#0b0b0c; }


/* v1.1.4 service graphics: use clean icon panels, not cropped hero artwork. */
.tmm-service-card figure img[src$=".svg"] { height: 190px; object-fit: contain; padding: 18px; box-sizing: border-box; background: radial-gradient(circle at 50% 35%, rgba(229,9,20,.24), rgba(12,12,12,.96) 58%, #050505 100%); }
.tmm-service-card:hover figure img[src$=".svg"] { transform: scale(1.02); }
.tmm-service-media:has(img[src$=".svg"]):after { display: none; }
@supports not selector(:has(*)) { .tmm-service-media:after { background: linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.14)); } }


/* v1.1.5 approved service graphics: show full 16:9 artwork, no cropping, 3 per row on desktop. */
.tmm-services-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important;align-items:stretch!important;width:100%;}
.tmm-services-grid>.tmm-service-card{min-width:0;height:100%;}
.tmm-service-card{overflow:hidden;border-radius:22px;display:flex;flex-direction:column;}
.tmm-service-card .wp-block-group{flex:1;}
.tmm-service-media{position:relative;background:#050505;}
.tmm-service-media:after{display:none!important;}
.tmm-service-card .wp-block-image{margin:0!important;width:100%;background:#050505;}
.tmm-service-card .wp-block-image a{display:block;width:100%;}
.tmm-service-card .wp-block-image img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;background:#050505!important;padding:0!important;filter:none!important;}
.tmm-service-card:hover .wp-block-image img{transform:none!important;}
.tmm-service-icon{display:none!important;}
.tmm-service-card .wp-block-group[style*="padding-right:24px"]{padding-top:24px!important;}
.tmm-service-page-art{margin-top:34px!important;margin-bottom:0!important;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.14);box-shadow:0 28px 90px rgba(229,9,20,.18);background:#050505;}
.tmm-service-page-art img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;object-fit:contain!important;background:#050505!important;}
.tmm-service-hero-full{background:radial-gradient(circle at 50% 15%,rgba(229,9,20,.18),transparent 38%),#070707;border-bottom:1px solid rgba(255,255,255,.08);}
@media(max-width:1100px){.tmm-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:700px){.tmm-services-grid{grid-template-columns:1fr!important;}.tmm-service-page-art{border-radius:18px;}}


/* v1.1.7 full-size layout and SEO section polish */
.wp-site-blocks main > .wp-block-group:not(.alignfull),
.wp-block-group.alignwide,
.wp-block-columns.alignwide,
.wp-block-query.alignwide{max-width:min(1440px,calc(100vw - 48px))!important;}
.tmm-orlando-seo-section{background:radial-gradient(circle at 15% 10%,rgba(229,9,20,.16),transparent 34%),linear-gradient(180deg,#080808,#0d0d0d);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);}
.tmm-orlando-seo-section .tmm-seo-columns{margin-top:42px;margin-bottom:42px;gap:24px;}
.tmm-orlando-seo-section .wp-block-column{background:#111;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:28px;box-shadow:0 18px 60px rgba(0,0,0,.26);}
.tmm-orlando-seo-section h2,.tmm-orlando-seo-section h3{color:#fff;}
.tmm-orlando-seo-section p,.tmm-orlando-seo-section li{color:#d4d4d4;}
.tmm-web-design-seo-extra{border-top:1px solid rgba(255,255,255,.1);margin-top:34px;}
.tmm-contact-page-intro{background:linear-gradient(135deg,rgba(229,9,20,.1),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:24px;padding-left:28px!important;padding-right:28px!important;}
.tmm-article-override-image{width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:782px){.wp-site-blocks main > .wp-block-group:not(.alignfull),.wp-block-group.alignwide,.wp-block-columns.alignwide,.wp-block-query.alignwide{max-width:calc(100vw - 32px)!important;}.tmm-orlando-seo-section .wp-block-column{padding:22px;}}

/* v1.1.8 homepage hero SEO expansion */
.tmm-hero-seo-intro{
  background:
    radial-gradient(circle at 15% 20%, rgba(229,9,20,.22), transparent 34%),
    radial-gradient(circle at 88% 72%, rgba(229,9,20,.12), transparent 34%),
    linear-gradient(135deg,#050505 0%,#0a0a0a 48%,#111 100%);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.tmm-hero-seo-layout{gap:44px;align-items:center;}
.tmm-hero-seo-left{position:relative;}
.tmm-hero-seo-copy{
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  padding:34px;
  box-shadow:0 30px 90px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.07);
}
.tmm-hero-seo-copy p{font-size:clamp(1.05rem,1.3vw,1.23rem);line-height:1.78;color:#e2e2e2;margin-top:0;}
.tmm-hero-seo-copy p:last-child{margin-bottom:0;}
.tmm-proof-grid{margin-top:36px!important;gap:24px;}
.tmm-proof-grid .wp-block-column{
  background:#101010;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:26px;
  box-shadow:0 18px 60px rgba(0,0,0,.26);
}
.tmm-proof-grid h3{color:#fff;margin-top:0;}
.tmm-proof-grid p{color:#d2d2d2;}
@media(max-width:900px){.tmm-hero-seo-layout{gap:26px;}.tmm-hero-seo-copy{padding:24px;border-radius:22px;}.tmm-proof-grid{margin-top:22px!important;}}


/* v1.2.0 full-size layout refinements */
.wp-site-blocks > main, .entry-content { width: 100%; }
.tmm-full-width-section { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.tmm-post-card-image img, .tmm-post-card-image svg { width:100%; aspect-ratio:16/9; height:auto; object-fit:cover; display:block; background:#050505; }
.tmm-service-page-art img { width:100%; height:auto; object-fit:contain; background:#050505; }

/* v1.2.2 hard SEO/contact fixes */
.tmm-home-seo-template-section h2,
.tmm-home-bottom-seo-force h2 { font-size: clamp(2rem, 4vw, 4.6rem); line-height: 1.05; text-transform: uppercase; margin-top: 0; }
.tmm-home-seo-template-section p,
.tmm-home-bottom-seo-force p { color: #e5e5e5; line-height: 1.78; }
.tmm-home-seo-template-section .wp-block-button__link,
.tmm-home-bottom-seo-force .wp-block-button__link { font-weight: 900; text-transform: uppercase; border-radius: 999px; }
.tmm-seo-force-grid .wp-block-column { background: #111; border: 1px solid #292929; border-radius: 22px; padding: 26px; }
.tmm-seo-force-grid h3 { margin-top: 0; }
