| Server IP : 172.67.201.108 / Your IP : 216.73.216.68 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/banners/domains/newkit/ |
Upload File : |
<?php
require_once __DIR__ . '/.credentials.php';
require_once '/home/banners/public_html/bway/db/mysql_bootstrap.php';
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
die('Market not specified. Please use ?id=regionid');
}
$pdo = new PDO(
'mysql:host=' . DB_READ_HOST . ';dbname=amazonrds;charset=utf8mb4',
DB_USER,
DB_PASS,
mysqlPdoOptions([
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
])
);
$stmt = $pdo->prepare('
SELECT regiondeal.*, regions.name, regions.dirname
FROM regiondeal
INNER JOIN regions ON regiondeal.id = regions.id
WHERE regiondeal.id = ?
');
$stmt->execute([(int) $_GET['id']]);
$geter = $stmt->fetch();
if (!$geter) {
die('Market not found.');
}
$marketName = $geter['name'];
$listSize = $geter['listsize'];
$regularPrice = $geter['regularprice'];
$dealPrice = $geter['dealprice'];
$optABanners = $geter['optionabanners'];
$optBBanners = $geter['optionbbanners'];
$optCBanners = $geter['optioncbanners'];
$optAPrice = $geter['optionaprice'];
$optBPrice = $geter['optionbprice'];
$optCPrice = $geter['optioncprice'];
$eblastNormal = $geter['eblastnormalprice'];
$eblastPackage = $geter['eblastpackageprice'];
$interstitialNormal = $geter['interstitialnormalprice'];
$interstitialPackage = $geter['interstitialpackageprice'];
$desktopPushdown = $geter['desktop_pushdown'];
$regionalSkin = $geter['regional_skin'];
/** Ensure price has $ prefix */
function fmtPrice($val) {
$v = trim($val);
if ($v === '' || $v === '0') return 'Contact Us';
if ($v[0] !== '$') $v = '$' . $v;
return $v;
}
/** Strip $ and , to get numeric price */
function numPrice($val) {
$v = preg_replace('/[^0-9.]/', '', trim($val));
if (!is_numeric($v) || (float)$v == 0) return 0;
return (float) $v;
}
// Calculate impression estimates
$optAImpressions = $optABanners * 1.25;
$optBImpressions = $optBBanners * 1.25;
$optCImpressions = $optCBanners * 1.25;
// A la carte banner rate at $11 CPM
$bannerCPM = 11;
$optABannerRate = ($optAImpressions / 1000) * $bannerCPM;
$optBBannerRate = ($optBImpressions / 1000) * $bannerCPM;
$optCBannerRate = ($optCImpressions / 1000) * $bannerCPM;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?= htmlspecialchars($marketName) ?> - BroadwayWorld Advertising Rate Sheet</title>
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
:root {
--bg-primary: #0a0a0a;
--bg-secondary: #1a1a1a;
--bg-tertiary: #141414;
--bg-card: linear-gradient(145deg, #1a1a1a 0%, #141414 100%);
--bg-header: linear-gradient(135deg, #1a1a1a 0%, #0d0d0d 100%);
--text-primary: #ffffff;
--text-secondary: #ccc;
--text-muted: #888;
--text-dimmed: #666;
--text-faint: #555;
--border-primary: #222;
--border-secondary: #2a2a2a;
--border-tertiary: #333;
--accent: #b20223;
--accent-light: #ff4d6d;
}
[data-theme="light"] {
--bg-primary: #f5f5f5;
--bg-secondary: #ffffff;
--bg-tertiary: #fafafa;
--bg-card: linear-gradient(145deg, #ffffff 0%, #f8f8f8 100%);
--bg-header: linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
--text-primary: #1a1a1a;
--text-secondary: #333;
--text-muted: #555;
--text-dimmed: #777;
--text-faint: #999;
--border-primary: #ddd;
--border-secondary: #e0e0e0;
--border-tertiary: #ccc;
}
body {
font-family: 'Poppins', sans-serif;
background-color: var(--bg-primary);
color: var(--text-primary);
line-height: 1.6;
min-height: 100vh;
transition: background-color 0.3s ease, color 0.3s ease;
}
.container {
max-width: 1000px;
margin: 0 auto;
padding: 40px 20px;
}
/* Theme Toggle */
.theme-toggle {
position: fixed;
top: 20px;
right: 20px;
z-index: 1000;
display: flex;
align-items: center;
gap: 10px;
background: var(--bg-secondary);
padding: 10px 15px;
border-radius: 30px;
border: 1px solid var(--border-secondary);
box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}
.theme-toggle-switch {
position: relative;
width: 50px;
height: 26px;
background: var(--border-tertiary);
border-radius: 13px;
cursor: pointer;
transition: background 0.3s ease;
}
.theme-toggle-switch::after {
content: '';
position: absolute;
top: 3px;
left: 3px;
width: 20px;
height: 20px;
background: var(--accent);
border-radius: 50%;
transition: transform 0.3s ease;
}
[data-theme="light"] .theme-toggle-switch::after {
transform: translateX(24px);
}
.theme-icon {
font-size: 16px;
}
/* Header Section */
.ratesheet-header {
text-align: center;
padding: 50px 40px 40px;
background: var(--bg-header);
border-radius: 20px;
margin-bottom: 30px;
border: 1px solid var(--border-primary);
position: relative;
overflow: hidden;
}
.ratesheet-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, #b20223, #ff4d6d, #b20223);
}
.logo {
max-width: 300px;
margin-bottom: 30px;
}
.ratesheet-label {
font-size: 13px;
letter-spacing: 5px;
text-transform: uppercase;
color: var(--accent);
margin-bottom: 15px;
font-weight: 600;
}
.market-name {
font-size: 42px;
font-weight: 700;
color: var(--text-primary);
margin-bottom: 10px;
line-height: 1.2;
}
.market-subtitle {
font-size: 16px;
color: var(--text-muted);
font-weight: 400;
}
/* Audience Stats Bar */
.audience-bar {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-bottom: 30px;
}
.audience-stat {
background: var(--bg-card);
border: 1px solid var(--border-secondary);
border-radius: 16px;
padding: 25px 20px;
text-align: center;
transition: all 0.3s ease;
}
.audience-stat:hover {
border-color: var(--accent);
transform: translateY(-2px);
}
.stat-icon {
width: 45px;
height: 45px;
background: linear-gradient(135deg, #b20223, #8a011a);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
color: #fff;
margin: 0 auto 12px;
}
.stat-value {
font-size: 28px;
font-weight: 700;
color: var(--text-primary);
line-height: 1;
}
.stat-label {
font-size: 11px;
letter-spacing: 2px;
text-transform: uppercase;
color: var(--text-dimmed);
margin-top: 8px;
}
/* Map Section */
.map-section {
background: var(--bg-card);
border: 1px solid var(--border-secondary);
border-radius: 16px;
overflow: hidden;
margin-bottom: 30px;
}
.map-section iframe {
width: 100%;
height: 300px;
border: none;
display: block;
}
.map-caption {
padding: 15px 20px;
font-size: 13px;
color: var(--text-muted);
text-align: center;
border-top: 1px solid var(--border-secondary);
}
/* Section Title */
.section-title {
font-size: 12px;
letter-spacing: 3px;
text-transform: uppercase;
color: var(--text-dimmed);
margin-bottom: 20px;
padding-left: 5px;
}
/* Package Cards */
.packages-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-bottom: 40px;
}
.package-card {
background: var(--bg-card);
border: 1px solid var(--border-secondary);
border-radius: 16px;
padding: 30px 25px;
text-align: center;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.package-card:hover {
border-color: var(--accent);
transform: translateY(-4px);
box-shadow: 0 10px 30px rgba(178, 2, 35, 0.15);
}
.package-card.featured {
border-color: var(--accent);
}
.package-card.featured::before {
content: 'MOST POPULAR';
position: absolute;
top: 15px;
right: -30px;
background: var(--accent);
color: #fff;
font-size: 9px;
font-weight: 700;
letter-spacing: 1px;
padding: 4px 35px;
transform: rotate(45deg);
}
.package-label {
font-size: 11px;
letter-spacing: 3px;
text-transform: uppercase;
color: var(--text-dimmed);
margin-bottom: 8px;
}
.package-name {
font-size: 24px;
font-weight: 700;
color: var(--text-primary);
margin-bottom: 5px;
}
.package-duration {
font-size: 13px;
color: var(--text-muted);
margin-bottom: 20px;
}
.package-price {
font-size: 36px;
font-weight: 700;
color: var(--accent);
margin-bottom: 25px;
line-height: 1;
}
.package-price .price-period {
font-size: 14px;
font-weight: 400;
color: var(--text-dimmed);
display: block;
margin-top: 5px;
}
.package-price .price-cpm {
display: block;
font-size: 13px;
font-weight: 500;
color: var(--text-muted);
margin-top: 4px;
}
.cpm-badge {
display: block;
font-size: 11px;
font-weight: 500;
color: var(--text-muted);
margin-top: 3px;
}
.package-features {
list-style: none;
text-align: left;
padding: 0;
}
.package-features li {
padding: 10px 0;
border-bottom: 1px solid var(--border-primary);
font-size: 13px;
color: var(--text-secondary);
display: flex;
align-items: flex-start;
gap: 10px;
}
.package-features li:last-child {
border-bottom: none;
}
.package-features li .fa {
color: var(--accent);
margin-top: 3px;
min-width: 14px;
}
.feature-detail {
font-size: 11px;
color: var(--text-dimmed);
display: block;
}
/* Rate Chart Table */
.rate-chart {
background: var(--bg-card);
border: 1px solid var(--border-secondary);
border-radius: 16px;
overflow: hidden;
margin-bottom: 30px;
}
.rate-chart-header {
background: linear-gradient(135deg, #b20223, #8a011a);
padding: 20px 25px;
color: #fff;
}
.rate-chart-title {
font-size: 18px;
font-weight: 600;
}
.rate-chart-subtitle {
font-size: 12px;
color: rgba(255,255,255,0.7);
margin-top: 4px;
}
.rate-table {
width: 100%;
border-collapse: collapse;
}
.rate-table thead th {
padding: 14px 20px;
text-align: left;
font-size: 11px;
letter-spacing: 2px;
text-transform: uppercase;
color: var(--text-dimmed);
border-bottom: 2px solid var(--border-secondary);
font-weight: 600;
}
.rate-table tbody tr {
transition: background 0.2s ease;
}
.rate-table tbody tr:hover {
background: var(--bg-tertiary);
}
.rate-table tbody td {
padding: 16px 20px;
border-bottom: 1px solid var(--border-primary);
font-size: 14px;
color: var(--text-secondary);
}
.rate-table tbody tr:last-child td {
border-bottom: none;
}
.rate-table .product-name {
font-weight: 500;
color: var(--text-primary);
}
.rate-table .product-desc {
font-size: 12px;
color: var(--text-dimmed);
margin-top: 3px;
}
.rate-table .rate-price {
font-weight: 600;
color: var(--accent);
font-size: 16px;
}
.rate-table .rate-package-price {
font-weight: 600;
color: #2ecc71;
font-size: 16px;
}
.rate-table .savings-badge {
display: inline-block;
background: rgba(46, 204, 113, 0.15);
color: #2ecc71;
font-size: 10px;
font-weight: 600;
padding: 2px 8px;
border-radius: 10px;
margin-left: 8px;
letter-spacing: 0.5px;
}
/* Contact CTA */
.contact-cta {
background: linear-gradient(135deg, #b20223, #8a011a);
border-radius: 16px;
padding: 50px 40px;
text-align: center;
color: #fff;
margin-bottom: 30px;
}
.cta-title {
font-size: 28px;
font-weight: 700;
margin-bottom: 10px;
}
.cta-subtitle {
font-size: 16px;
color: rgba(255,255,255,0.8);
margin-bottom: 25px;
}
.cta-button {
display: inline-block;
padding: 14px 40px;
background: #fff;
color: #b20223;
border-radius: 30px;
font-size: 15px;
font-weight: 600;
text-decoration: none;
transition: all 0.3s ease;
}
.cta-button:hover {
transform: translateY(-2px);
box-shadow: 0 8px 25px rgba(0,0,0,0.3);
}
/* Footer */
.ratesheet-footer {
text-align: center;
padding: 30px;
color: var(--text-faint);
font-size: 12px;
}
.ratesheet-footer a {
color: var(--accent);
text-decoration: none;
}
/* Responsive */
@media (max-width: 768px) {
.container {
padding: 20px 15px;
}
.market-name {
font-size: 28px;
}
.audience-bar {
grid-template-columns: 1fr;
}
.packages-grid {
grid-template-columns: 1fr;
}
.package-card.featured::before {
right: -32px;
top: 12px;
}
.rate-table {
font-size: 13px;
}
.rate-table thead th,
.rate-table tbody td {
padding: 12px 14px;
}
.contact-cta {
padding: 35px 25px;
}
.cta-title {
font-size: 22px;
}
}
/* Print styles */
@media print {
body {
background: white !important;
color: black !important;
}
.theme-toggle, .contact-cta {
display: none;
}
.package-card, .rate-chart, .audience-stat {
break-inside: avoid;
}
}
</style>
</head>
<body data-theme="light">
<!-- Theme Toggle -->
<div class="theme-toggle">
<span class="theme-icon">☾</span>
<div class="theme-toggle-switch" onclick="toggleTheme()"></div>
<span class="theme-icon">☀</span>
</div>
<div class="container">
<!-- Header -->
<div class="ratesheet-header">
<img src="https://cloudimages.broadwayworld.com/2017/newlogos/broadway_world_logo.png" alt="BroadwayWorld" class="logo">
<div class="ratesheet-label">Advertising Rate Sheet</div>
<h1 class="market-name"><?= htmlspecialchars($marketName) ?></h1>
<div class="market-subtitle">BroadwayWorld Regional Market</div>
</div>
<!-- Audience Stats -->
<div class="audience-bar">
<div class="audience-stat">
<div class="stat-icon"><i class="fa fa-envelope"></i></div>
<div class="stat-value"><?= htmlspecialchars($listSize) ?></div>
<div class="stat-label">Email Subscribers</div>
</div>
<div class="audience-stat">
<div class="stat-icon"><i class="fa fa-desktop"></i></div>
<div class="stat-value"><?= number_format($optAImpressions) ?></div>
<div class="stat-label">Banner Impressions (Pkg A)</div>
</div>
<div class="audience-stat">
<div class="stat-icon"><i class="fa fa-map-marker"></i></div>
<div class="stat-value">Geo-Targeted</div>
<div class="stat-label">Local Audience</div>
</div>
</div>
<!-- Map -->
<div class="map-section">
<iframe
src="https://maps.google.com/maps?q=<?= urlencode($marketName . ' theatre district') ?>&t=&z=10&ie=UTF8&iwloc=&output=embed"
allowfullscreen
loading="lazy"
referrerpolicy="no-referrer-when-downgrade">
</iframe>
<div class="map-caption"><i class="fa fa-map-marker" style="color:var(--accent);"></i> <?= htmlspecialchars($marketName) ?> Market Coverage Area</div>
</div>
<!-- Packages -->
<div class="section-title">Advertising Packages</div>
<div class="packages-grid">
<!-- Package A -->
<div class="package-card featured">
<div class="package-label">Package</div>
<div class="package-name">Premium A</div>
<div class="package-duration">8 Weeks</div>
<div class="package-price"><?= fmtPrice($optAPrice) ?></div>
<ul class="package-features">
<li><i class="fa fa-check"></i> <div>Geotargeted Banner Ads<span class="feature-detail"><?= number_format($optAImpressions) ?> impressions</span></div></li>
<li><i class="fa fa-check"></i> <div>Dedicated eBlast<span class="feature-detail"><?= htmlspecialchars($listSize) ?> email subscribers</span></div></li>
<li><i class="fa fa-check"></i> <div>Desktop Expandable / Mobile Anchor<span class="feature-detail">1 week premium placement</span></div></li>
<li><i class="fa fa-check"></i> <div>Creative Team Q+A<span class="feature-detail">Form-based interview feature</span></div></li>
<li><i class="fa fa-check"></i> <div>Featured Listing<span class="feature-detail">Enhanced visibility in directory</span></div></li>
</ul>
</div>
<!-- Package B -->
<div class="package-card">
<div class="package-label">Package</div>
<div class="package-name">Standard B</div>
<div class="package-duration">6 Weeks</div>
<div class="package-price"><?= fmtPrice($optBPrice) ?></div>
<ul class="package-features">
<li><i class="fa fa-check"></i> <div>Geotargeted Banner Ads<span class="feature-detail"><?= number_format($optBImpressions) ?> impressions</span></div></li>
<li><i class="fa fa-check"></i> <div>Dedicated eBlast<span class="feature-detail"><?= htmlspecialchars($listSize) ?> email subscribers</span></div></li>
<li><i class="fa fa-check"></i> <div>Creative Team Q+A<span class="feature-detail">Form-based interview feature</span></div></li>
<li><i class="fa fa-check"></i> <div>Featured Listing<span class="feature-detail">Enhanced visibility in directory</span></div></li>
</ul>
</div>
<!-- Package C -->
<div class="package-card">
<div class="package-label">Package</div>
<div class="package-name">Essentials C</div>
<div class="package-duration">4 Weeks</div>
<div class="package-price"><?= fmtPrice($optCPrice) ?></div>
<ul class="package-features">
<li><i class="fa fa-check"></i> <div>Geotargeted Banner Ads<span class="feature-detail"><?= number_format($optCImpressions) ?> impressions</span></div></li>
<li><i class="fa fa-check"></i> <div>Dedicated eBlast<span class="feature-detail"><?= htmlspecialchars($listSize) ?> email subscribers</span></div></li>
<li><i class="fa fa-check"></i> <div>Featured Listing<span class="feature-detail">Enhanced visibility in directory</span></div></li>
</ul>
</div>
</div>
<!-- Full Rate Chart -->
<div class="section-title">Complete Rate Chart</div>
<div class="rate-chart">
<div class="rate-chart-header">
<div class="rate-chart-title"><?= htmlspecialchars($marketName) ?> - Advertising Rates</div>
<div class="rate-chart-subtitle">All rates are per campaign. Contact us for custom packages.</div>
</div>
<table class="rate-table">
<thead>
<tr>
<th>Product</th>
<th>Details</th>
<th>Rate</th>
<th>Package Rate</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="product-name"><i class="fa fa-flag" style="color:var(--accent);margin-right:6px;"></i>Banner Ads (Pkg A)</div>
<div class="product-desc">Geotargeted display, 8 weeks</div>
</td>
<td><?= number_format($optAImpressions) ?> impressions</td>
<td class="rate-price">$<?= number_format($optABannerRate) ?><span class="cpm-badge">$<?= $bannerCPM ?> CPM</span></td>
<td class="rate-package-price">Included in Pkg A</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-flag" style="color:var(--accent);margin-right:6px;"></i>Banner Ads (Pkg B)</div>
<div class="product-desc">Geotargeted display, 6 weeks</div>
</td>
<td><?= number_format($optBImpressions) ?> impressions</td>
<td class="rate-price">$<?= number_format($optBBannerRate) ?><span class="cpm-badge">$<?= $bannerCPM ?> CPM</span></td>
<td class="rate-package-price">Included in Pkg B</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-flag" style="color:var(--accent);margin-right:6px;"></i>Banner Ads (Pkg C)</div>
<div class="product-desc">Geotargeted display, 4 weeks</div>
</td>
<td><?= number_format($optCImpressions) ?> impressions</td>
<td class="rate-price">$<?= number_format($optCBannerRate) ?><span class="cpm-badge">$<?= $bannerCPM ?> CPM</span></td>
<td class="rate-package-price">Included in Pkg C</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-paper-plane" style="color:var(--accent);margin-right:6px;"></i>Dedicated eBlast</div>
<div class="product-desc">Full email send to local subscribers</div>
</td>
<td><?= htmlspecialchars($listSize) ?> subscribers</td>
<td class="rate-price"><?php if (is_numeric($eblastNormal) && $eblastNormal > 0): ?>$<?= number_format($eblastNormal) ?><?php else: ?><?= fmtPrice($regularPrice) ?><?php endif; ?></td>
<td class="rate-package-price"><?php if (is_numeric($eblastPackage) && $eblastPackage > 0): ?>$<?= number_format($eblastPackage) ?><?php else: ?>Included in Packages<?php endif; ?></td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-arrows-v" style="color:var(--accent);margin-right:6px;"></i>Expandable / Mobile Anchor</div>
<div class="product-desc">High-impact desktop & mobile unit, 1 week</div>
</td>
<td>Premium Placement</td>
<td class="rate-price"><?php if (is_numeric($interstitialNormal) && $interstitialNormal > 0): ?>$<?= number_format($interstitialNormal) ?><?php else: ?>Contact Us<?php endif; ?></td>
<td class="rate-package-price"><?php if (is_numeric($interstitialPackage) && $interstitialPackage > 0): ?>$<?= number_format($interstitialPackage) ?><?php else: ?>Included in Pkg A<?php endif; ?></td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-microphone" style="color:var(--accent);margin-right:6px;"></i>Creative Team Q+A</div>
<div class="product-desc">Form-based interview article feature</div>
</td>
<td>Published Feature</td>
<td class="rate-price"><?php if (is_numeric($geter['optionavalue']) && $geter['optionavalue'] > 0): ?>$<?= number_format($geter['optionavalue']) ?><?php else: ?>Contact Us<?php endif; ?></td>
<td class="rate-package-price">Included in Pkg A & B</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-star" style="color:var(--accent);margin-right:6px;"></i>Featured Listing</div>
<div class="product-desc">Enhanced visibility in the show directory</div>
</td>
<td>Directory Feature</td>
<td class="rate-price">Contact Us</td>
<td class="rate-package-price">Included in All Packages</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-arrow-down" style="color:var(--accent);margin-right:6px;"></i>One Week Pushdown / Anchor Unit</div>
<div class="product-desc">Desktop pushdown with mobile anchor, 1 week</div>
</td>
<td>Premium Placement</td>
<td class="rate-price"><?= fmtPrice($desktopPushdown) ?></td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-paint-brush" style="color:var(--accent);margin-right:6px;"></i>Three Day Regional Skin</div>
<div class="product-desc">Full-page skin takeover, 3 days</div>
</td>
<td>Premium Placement</td>
<td class="rate-price"><?= fmtPrice($regionalSkin) ?></td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-pencil" style="color:var(--accent);margin-right:6px;"></i>Custom Content</div>
<div class="product-desc">Branded editorial content</div>
</td>
<td>Published Feature</td>
<td class="rate-price">Starting at $500</td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-share-alt" style="color:var(--accent);margin-right:6px;"></i>Custom Content with Social Share</div>
<div class="product-desc">Branded content with social media amplification</div>
</td>
<td>Content + Social</td>
<td class="rate-price">Starting at $2,000</td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-thumbs-up" style="color:var(--accent);margin-right:6px;"></i>Organic Social - 1 Platform</div>
<div class="product-desc">Organic post on one BWW social platform</div>
</td>
<td>Single Platform</td>
<td class="rate-price">$1,500</td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-thumbs-up" style="color:var(--accent);margin-right:6px;"></i>Organic Social - All BWW Platforms</div>
<div class="product-desc">Organic posts across all BWW social channels</div>
</td>
<td>All Platforms</td>
<td class="rate-price">$2,500</td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-instagram" style="color:var(--accent);margin-right:6px;"></i>IG Takeover</div>
<div class="product-desc">Instagram stories/feed takeover</div>
</td>
<td>Social Takeover</td>
<td class="rate-price">$2,000</td>
<td class="rate-package-price">—</td>
</tr>
<tr>
<td>
<div class="product-name"><i class="fa fa-bullhorn" style="color:var(--accent);margin-right:6px;"></i>Boosted and Promoted Social</div>
<div class="product-desc">Paid social media promotion</div>
</td>
<td>Paid Social</td>
<td class="rate-price">Contact Us for Pricing</td>
<td class="rate-package-price">—</td>
</tr>
</tbody>
</table>
</div>
<!-- Package Comparison Summary -->
<div class="section-title">Package Comparison</div>
<div class="rate-chart">
<div class="rate-chart-header">
<div class="rate-chart-title">Quick Comparison</div>
<div class="rate-chart-subtitle">See what's included in each package at a glance</div>
</div>
<table class="rate-table">
<thead>
<tr>
<th>Feature</th>
<th style="text-align:center;">Premium A</th>
<th style="text-align:center;">Standard B</th>
<th style="text-align:center;">Essentials C</th>
</tr>
</thead>
<tbody>
<tr>
<td class="product-name">Duration</td>
<td style="text-align:center;font-weight:600;">8 weeks</td>
<td style="text-align:center;font-weight:600;">6 weeks</td>
<td style="text-align:center;font-weight:600;">4 weeks</td>
</tr>
<tr>
<td class="product-name">Banner Impressions</td>
<td style="text-align:center;font-weight:600;"><?= number_format($optAImpressions) ?></td>
<td style="text-align:center;font-weight:600;"><?= number_format($optBImpressions) ?></td>
<td style="text-align:center;font-weight:600;"><?= number_format($optCImpressions) ?></td>
</tr>
<tr>
<td class="product-name">Dedicated eBlast</td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
</tr>
<tr>
<td class="product-name">Expandable / Mobile Anchor</td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-minus" style="color:var(--text-faint);"></i></td>
<td style="text-align:center;"><i class="fa fa-minus" style="color:var(--text-faint);"></i></td>
</tr>
<tr>
<td class="product-name">Creative Team Q+A</td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-minus" style="color:var(--text-faint);"></i></td>
</tr>
<tr>
<td class="product-name">Featured Listing</td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
<td style="text-align:center;"><i class="fa fa-check" style="color:#2ecc71;font-size:18px;"></i></td>
</tr>
<tr style="background: var(--bg-tertiary);">
<td class="product-name" style="font-size:16px;">Total Price</td>
<td style="text-align:center;" class="rate-price"><?= fmtPrice($optAPrice) ?></td>
<td style="text-align:center;" class="rate-price"><?= fmtPrice($optBPrice) ?></td>
<td style="text-align:center;" class="rate-price"><?= fmtPrice($optCPrice) ?></td>
</tr>
</tbody>
</table>
</div>
<!-- Contact CTA -->
<div class="contact-cta">
<div class="cta-title">Ready to Reach Your Audience?</div>
<div class="cta-subtitle">Connect with theatre fans in <?= htmlspecialchars($marketName) ?> through BroadwayWorld's targeted advertising solutions.</div>
<a href="mailto:[email protected]" class="cta-button"><i class="fa fa-envelope"></i> Contact Our Sales Team</a>
</div>
<!-- Footer -->
<div class="ratesheet-footer">
<p>Rates are subject to change. Contact your sales representative for the most current pricing.</p>
<p style="margin-top:8px;">© <?= date('Y') ?> <a href="https://www.broadwayworld.com">BroadwayWorld.com</a> - All Rights Reserved</p>
</div>
</div>
<script>
function toggleTheme() {
const body = document.body;
const currentTheme = body.getAttribute('data-theme');
const newTheme = currentTheme === 'dark' ? 'light' : 'dark';
body.setAttribute('data-theme', newTheme);
localStorage.setItem('ratesheetTheme', newTheme);
}
document.addEventListener('DOMContentLoaded', function() {
const savedTheme = localStorage.getItem('ratesheetTheme');
if (savedTheme) {
document.body.setAttribute('data-theme', savedTheme);
}
});
</script>
</body>
</html>