/*
Theme Name: Atlantis Digital
Theme URI: https://atlantisdigital.com.au/
Author: Atlantis Digital
Author URI: https://atlantisdigital.com.au/
Description: Custom WordPress theme preserving the Atlantis Digital production website and service pages.
Version: 1.0.8
Requires at least: 6.8
Requires PHP: 8.2
Text Domain: atlantis-digital
License: GNU General Public License v2 or later
*/

/* Official Atlantis Media Productions identity. */
.brand {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: clamp(148px, 16vw, 218px);
    min-width: 0;
}

/* Web design service upgrade. Scoped so no other Atlantis page is affected. */
.webDesignPage { background: #eef4fa; color: #071a2d; }
.webDesignMain { overflow: hidden; font-family: Manrope, Arial, sans-serif; }
.webDesignMain *, .webDesignMain *::before, .webDesignMain *::after { box-sizing: border-box; }
.webEyebrow { margin: 0 0 16px; color: #26bdeb; font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.webDesignMain h1, .webDesignMain h2, .webDesignMain h3, .webDesignMain p { margin-top: 0; }
.webDesignMain h1, .webDesignMain h2 { font-weight: 800; letter-spacing: -.045em; line-height: 1.02; }
.webDesignMain h1 em, .webDesignMain h2 em { color: #26bdeb; font-style: normal; }
.webHero { min-height: 690px; padding: clamp(72px, 8vw, 124px) max(5vw, 24px); display: grid; grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr); align-items: center; gap: clamp(36px, 6vw, 90px); color: #f7fbff; background: radial-gradient(circle at 82% 46%, rgba(0, 142, 225, .23), transparent 34%), linear-gradient(120deg, #020b13, #031c31 58%, #04111e); }
.webHeroCopy { max-width: 650px; }
.webHero h1 { margin-bottom: 25px; font-size: clamp(46px, 5.2vw, 82px); }
.webHeroCopy > p:not(.webEyebrow) { max-width: 620px; color: #c2d0da; font-size: clamp(17px, 1.35vw, 21px); line-height: 1.75; }
.webHeroVisual { position: relative; }
.webHeroVisual::before { content: ""; position: absolute; inset: 10% 6%; border-radius: 50%; background: rgba(19, 164, 230, .23); filter: blur(70px); }
.webHeroVisual img { position: relative; width: 100%; border: 1px solid rgba(77, 197, 240, .3); border-radius: 22px; box-shadow: 0 34px 90px rgba(0, 0, 0, .45); }
.webActions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; margin-top: 32px; }
.webDesignMain .button, .webCardButton, .webButtonSecondary { min-height: 48px; padding: 14px 22px; display: inline-flex; align-items: center; justify-content: center; border-radius: 9px; font-size: 13px; font-weight: 800; letter-spacing: .055em; text-decoration: none; text-transform: uppercase; transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease; }
.webDesignMain .button, .webCardButton { color: #fff; border: 1px solid #168cde; background: linear-gradient(135deg, #0878e8, #095dbb); box-shadow: 0 12px 28px rgba(5, 109, 209, .18); }
.webButtonSecondary { color: #f5fbff; border: 1px solid rgba(133, 206, 233, .5); background: rgba(3, 22, 38, .52); }
.webDesignMain .button:hover, .webCardButton:hover, .webButtonSecondary:hover { transform: translateY(-2px); border-color: #36d5ef; box-shadow: 0 15px 32px rgba(14, 165, 198, .2); }
.webSection { padding: clamp(72px, 8vw, 120px) max(5vw, 24px); }
.webSectionHeading { max-width: 820px; margin: 0 auto 48px; text-align: center; }
.webSectionHeading h2 { margin-bottom: 22px; color: #071a2d; font-size: clamp(38px, 4.1vw, 64px); }
.webSectionHeading > p:not(.webEyebrow) { color: #5b6c7a; font-size: 17px; line-height: 1.75; }
.webPackages { background: #f7fbff; }
.webPricingGrid { max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 22px; }
.webPriceCard { position: relative; padding: 34px 30px 30px; display: flex; flex-direction: column; border: 1px solid #d8e4ee; border-radius: 20px; background: #fff; box-shadow: 0 18px 48px rgba(7, 26, 45, .08); }
.webPriceFeatured { border-color: #148ddb; box-shadow: 0 22px 60px rgba(0, 115, 209, .18); transform: translateY(-10px); }
.webPopular { position: absolute; top: 0; left: 30px; padding: 7px 14px; color: #fff; border-radius: 0 0 9px 9px; background: #0878e8; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.webPriceFeatured .webCardLabel { padding-top: 14px; }
.webCardLabel { margin-bottom: 28px; color: #0878e8; font-size: 15px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.webPriceCard > small { color: #758694; font-size: 11px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.webPriceCard > strong { margin: 6px 0 20px; color: #061a2e; font-size: clamp(34px, 3vw, 48px); letter-spacing: -.04em; line-height: 1; }
.webPriceCard > strong span { color: #407087; font-size: 14px; letter-spacing: 0; }
.webPriceCard > p:not(.webCardLabel) { min-height: 78px; color: #60717e; line-height: 1.6; }
.webPriceCard ul { margin: 16px 0 28px; padding: 0; list-style: none; }
.webPriceCard li { position: relative; padding: 7px 0 7px 25px; color: #263d4e; font-size: 14px; line-height: 1.35; }
.webPriceCard li::before { content: "✓"; position: absolute; left: 0; color: #08a5cc; font-weight: 900; }
.webPriceCard .webCardButton { width: 100%; margin-top: auto; }
.webAdvanced { max-width: 1320px; margin: 48px auto 0; padding: 34px 38px; display: flex; align-items: center; justify-content: space-between; gap: 32px; color: #edf9ff; border: 1px solid rgba(32, 184, 222, .36); border-radius: 18px; background: linear-gradient(120deg, #031523, #062943); }
.webAdvanced h3 { margin-bottom: 10px; font-size: clamp(27px, 2.8vw, 40px); }
.webAdvanced p:not(.webEyebrow) { max-width: 850px; margin-bottom: 0; color: #b8cad5; line-height: 1.65; }
.webBenefits { background: #eaf2fa; }
.webIconGrid { max-width: 1240px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.webIconGrid article { padding: 28px; border: 1px solid rgba(27, 111, 167, .14); border-radius: 16px; background: rgba(255, 255, 255, .76); }
.webIconGrid article > span { width: 46px; height: 46px; margin-bottom: 20px; display: grid; place-items: center; color: #08a5d8; border: 1px solid rgba(8, 165, 216, .28); border-radius: 12px; background: rgba(8, 165, 216, .08); font-size: 23px; }
.webIconGrid h3 { margin-bottom: 9px; color: #071a2d; font-size: 18px; }
.webIconGrid p { margin-bottom: 0; color: #60717f; line-height: 1.55; }
.webAdvantage { color: #f5fbff; background: radial-gradient(circle at 10% 10%, rgba(0, 126, 214, .18), transparent 30%), #020e19; }
.webAdvantage .webSectionHeading h2 { color: #fff; }
.webAdvantage .webSectionHeading > p:not(.webEyebrow) { color: #b5c8d4; }
.webServiceGrid { max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid rgba(64, 167, 213, .22); border-radius: 18px; overflow: hidden; }
.webServiceGrid a { min-height: 240px; padding: 28px 24px; color: inherit; border-right: 1px solid rgba(64, 167, 213, .18); background: rgba(5, 30, 48, .54); text-decoration: none; transition: background .2s ease, transform .2s ease; }
.webServiceGrid a:last-child { border-right: 0; }
.webServiceGrid a:hover { background: rgba(7, 77, 119, .48); }
.webServiceGrid span { color: #26bdeb; font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.webServiceGrid h3 { margin: 34px 0 13px; font-size: 19px; }
.webServiceGrid p { margin-bottom: 0; color: #aebfca; font-size: 14px; line-height: 1.55; }
.webAddons { background: #f7fbff; }
.webAddonGrid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; overflow: hidden; border: 1px solid #d7e4ed; border-radius: 16px; background: #d7e4ed; }
.webAddonGrid p { margin: 0; padding: 22px 24px; display: flex; justify-content: space-between; gap: 20px; background: #fff; }
.webAddonGrid b { color: #132c3f; }
.webAddonGrid span { color: #0878c8; text-align: right; }
.webProcess { background: #eaf2fa; }
.webProcess ol { max-width: 1320px; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); list-style: none; }
.webProcess li { padding: 25px 22px; border-left: 1px solid rgba(22, 118, 177, .18); }
.webProcess li:last-child { border-right: 1px solid rgba(22, 118, 177, .18); }
.webProcess li span { color: #0788d1; font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.webProcess h3 { margin: 24px 0 10px; color: #071a2d; font-size: 17px; text-transform: uppercase; }
.webProcess li p { margin-bottom: 0; color: #60717f; font-size: 14px; line-height: 1.55; }
.webFaq { background: #f7fbff; }
.webFaqList { max-width: 900px; margin: 0 auto; border-top: 1px solid #d1e0ea; }
.webFaq details { border-bottom: 1px solid #d1e0ea; }
.webFaq summary { position: relative; padding: 23px 48px 23px 0; color: #0a2439; cursor: pointer; font-size: 17px; font-weight: 800; list-style: none; }
.webFaq summary::-webkit-details-marker { display: none; }
.webFaq summary::after { content: "+"; position: absolute; right: 8px; color: #078fd5; font-size: 25px; font-weight: 400; }
.webFaq details[open] summary::after { content: "–"; }
.webFaq details p { padding: 0 48px 22px 0; color: #5d6f7d; line-height: 1.7; }
.webFinalCta { padding: clamp(74px, 8vw, 118px) max(5vw, 24px); display: flex; align-items: flex-end; justify-content: space-between; gap: 48px; color: #fff; background: radial-gradient(circle at 80% 50%, rgba(0, 132, 228, .24), transparent 28%), linear-gradient(125deg, #020b13, #041f35); }
.webFinalCta > div { max-width: 850px; }
.webFinalCta h2 { margin-bottom: 22px; font-size: clamp(42px, 5vw, 72px); }
.webFinalCta > div > p:not(.webEyebrow) { max-width: 720px; color: #bdccd6; font-size: 17px; line-height: 1.7; }
.webFinalCta address { min-width: 210px; display: grid; gap: 8px; font-style: normal; }
.webFinalCta address a { color: #fff; font-size: 20px; font-weight: 800; text-decoration: none; }
.webFinalCta address a::before { content: "☎"; margin-right: 9px; color: #18d0cc; }

@media (max-width: 1050px) {
  .webHero { min-height: auto; grid-template-columns: 1fr 1fr; }
  .webPricingGrid { grid-template-columns: 1fr; max-width: 720px; }
  .webPriceFeatured { transform: none; }
  .webPriceCard > p:not(.webCardLabel) { min-height: 0; }
  .webServiceGrid { grid-template-columns: repeat(2, 1fr); }
  .webServiceGrid a, .webServiceGrid a:last-child { border-right: 1px solid rgba(64, 167, 213, .18); border-bottom: 1px solid rgba(64, 167, 213, .18); }
  .webProcess ol { grid-template-columns: repeat(3, 1fr); }
  .webProcess li:nth-child(4) { border-left: 1px solid rgba(22, 118, 177, .18); }
}

@media (max-width: 760px) {
  .webHero { padding-top: 64px; grid-template-columns: 1fr; }
  .webHeroVisual { order: -1; }
  .webHero h1 { font-size: clamp(40px, 12vw, 58px); }
  .webIconGrid, .webAddonGrid, .webProcess ol { grid-template-columns: 1fr; }
  .webServiceGrid { grid-template-columns: 1fr; }
  .webServiceGrid a { min-height: auto; }
  .webAdvanced, .webFinalCta { align-items: flex-start; flex-direction: column; }
  .webAddonGrid p { align-items: flex-start; flex-direction: column; gap: 7px; }
  .webAddonGrid span { text-align: left; }
  .webFinalCta address { min-width: 0; }
}

@media (max-width: 460px) {
  .webSection, .webHero, .webFinalCta { padding-left: 18px; padding-right: 18px; }
  .webActions { align-items: stretch; flex-direction: column; }
  .webActions a { width: 100%; }
  .webPriceCard { padding: 30px 22px 24px; }
  .webAdvanced { padding: 28px 23px; }
}
.brandLogo {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: contain;
}
.footLead > span {
    display: block;
    width: min(270px, 100%);
    height: auto;
}
.footerBrandLogo { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; border-radius: 8px; }
.headerPhones {
    padding: 8px 10px;
    border: 1px solid rgba(20, 136, 205, .52);
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(0, 91, 164, .22), rgba(0, 21, 39, .72));
    box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
}
.headerPhones a { font-weight: 800 !important; }
.headerPhones a:focus-visible,
.brand:focus-visible { outline: 3px solid #1488cd; outline-offset: 4px; }

/* September Website Offer landing page. */
.septemberOfferPage { background: #f7f9fc; color: #071a2d; }
.offerPage { overflow: hidden; font-family: Manrope, Arial, sans-serif; }
.offerHero,
.offerPricing,
.offerPortfolio,
.offerProcess,
.offerPackages,
.offerFinalCta { padding: clamp(72px, 9vw, 132px) max(5vw, 24px); }
.offerHero {
    min-height: 750px;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(440px, 1.1fr);
    align-items: center;
    gap: clamp(42px, 7vw, 100px);
    padding-top: clamp(145px, 15vw, 190px);
    background: radial-gradient(circle at 82% 35%, rgba(0, 116, 217, .34), transparent 38%), linear-gradient(135deg, #020b14, #03182c 56%, #052b4c);
    color: #fff;
}
.offerHeroCopy { max-width: 720px; }
.offerEyebrow { margin: 0 0 18px; color: #1499f6; font-size: .78rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.offerHero h1 { margin: 0 0 30px; font-size: clamp(3.4rem, 6.8vw, 7.7rem); line-height: .9; letter-spacing: -.06em; }
.offerHero h1 em { color: #1599f6; font-style: normal; }
.offerHeroCopy > p:not(.offerEyebrow) { max-width: 650px; margin: 0 0 15px; color: #d2deea; font-size: clamp(1.02rem, 1.45vw, 1.24rem); line-height: 1.7; }
.offerHeroCopy strong { color: #fff; }
.offerHeroCopy > small { display: block; margin-top: 22px; color: #91a9bd; letter-spacing: .03em; }
.offerHeroCopy > small span { padding: 0 8px; color: #1499f6; }
.offerActions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 32px; }
.offerActions .button { min-height: 52px; padding: 16px 23px; border-radius: 5px; background: #087bea; color: #fff; font-size: .76rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; box-shadow: 0 16px 38px rgba(0, 93, 191, .3); }
.offerSecondary,
.offerCall { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 14px 20px; border: 1px solid rgba(255,255,255,.34); border-radius: 5px; color: #fff; font-size: .76rem; font-weight: 800; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; }
.offerActions a:hover { transform: translateY(-2px); }
.offerActions a:focus-visible,
.offerPriceCard a:focus-visible { outline: 3px solid #6fc4ff; outline-offset: 4px; }
.offerHeroVisual {
    position: relative;
    min-height: 540px;
    border-radius: 28px;
    background-image: linear-gradient(150deg, rgba(5, 40, 73, .12), rgba(0, 9, 19, .48)), url('assets/images/september-website-offer-hero.webp');
    background-position: center;
    background-size: cover;
    filter: drop-shadow(0 36px 65px rgba(0,0,0,.38));
}
.offerHeroVisual::before { content: ''; position: absolute; inset: 8% 4% 1%; border: 1px solid rgba(91, 186, 255, .26); border-radius: 24px; background: radial-gradient(circle at 72% 26%, rgba(0, 151, 255, .4), transparent 28%), linear-gradient(145deg, #031321, #074a7a 55%, #010a12); }
.offerScreen { position: absolute; z-index: 2; overflow: hidden; border: 8px solid #111a23; border-radius: 13px; background: linear-gradient(145deg, #02111f, #0b73b5); box-shadow: 0 24px 44px rgba(0,0,0,.45); color: #fff; }
.offerDesktop { inset: 15% 8% 13% 15%; padding: 18% 8% 8%; }
.offerDesktop span { position: absolute; inset: 0 0 auto; height: 12%; background: rgba(255,255,255,.08); }
.offerDesktop strong { display: block; max-width: 360px; font-size: clamp(1.6rem, 3vw, 3.5rem); line-height: .94; text-transform: uppercase; }
.offerDesktop small { display: block; margin-top: 12px; color: #b2d6eb; }
.offerTablet { width: 34%; height: 48%; left: 2%; bottom: 2%; }
.offerMobile { width: 17%; height: 42%; right: 0; bottom: 0; border-radius: 19px; }
.offerSectionIntro { max-width: 830px; }
.offerSectionIntro h2 { margin: 0 0 22px; font-size: clamp(2.55rem, 5vw, 5.4rem); line-height: .96; letter-spacing: -.055em; }
.offerSectionIntro > p:last-child { color: #536776; font-size: 1.05rem; line-height: 1.72; }
.offerPricing { display: grid; grid-template-columns: minmax(0, .8fr) minmax(480px, 1fr); align-items: start; gap: clamp(44px, 8vw, 110px); background: #fff; }
.offerPriceCard { padding: clamp(28px, 5vw, 54px); border: 1px solid #d9e4ed; border-top: 5px solid #087bea; border-radius: 18px; background: #fff; box-shadow: 0 24px 80px rgba(5, 37, 62, .11); }
.offerPriceCard > p,
.offerPackageGrid article > p { color: #087bea; font-size: .76rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.offerPriceCard h3 { margin: 10px 0 28px; font-size: clamp(3.9rem, 7vw, 7.2rem); line-height: .85; letter-spacing: -.07em; }
.offerPriceCard h3 small,
.offerPackageGrid h3 small { font-size: .25em; letter-spacing: 0; }
.offerPriceCard ul { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 28px; margin: 0 0 32px; padding: 0; list-style: none; }
.offerPriceCard li { position: relative; padding-left: 22px; color: #304a5d; line-height: 1.45; }
.offerPriceCard li::before { content: '✓'; position: absolute; left: 0; color: #087bea; font-weight: 900; }
.offerPriceCard .button { display: flex; justify-content: center; text-align: center; }
.offerPriceCard > small { display: block; margin-top: 20px; color: #71838f; line-height: 1.55; }
.offerPortfolio { background: #f1f6fb; }
.offerPortfolio .offerSectionIntro { margin: 0 auto 50px; text-align: center; }
.offerPortfolioGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.offerPortfolioGrid article { overflow: hidden; border: 1px solid #dce6ee; border-radius: 14px; background: #fff; box-shadow: 0 14px 38px rgba(5, 37, 62, .08); }
.offerPortfolioGrid article > h3,
.offerPortfolioGrid article > p { margin-left: 24px; margin-right: 24px; }
.offerPortfolioGrid article > h3 { margin-top: 24px; margin-bottom: 8px; font-size: 1.25rem; }
.offerPortfolioGrid article > p { margin-top: 0; margin-bottom: 28px; color: #647987; line-height: 1.6; }
.offerPortfolioPlaceholder { min-height: 260px; padding: 28px; display: flex; flex-direction: column; justify-content: flex-end; background: radial-gradient(circle at 74% 26%, rgba(0, 137, 234, .42), transparent 32%), linear-gradient(145deg, #020d18, #06385d); color: #fff; }
.offerPortfolioPlaceholder span { margin-bottom: auto; color: #6fc4ff; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.offerPortfolioPlaceholder strong { font-size: 2rem; line-height: .95; }
.portfolioTwo { background: radial-gradient(circle at 18% 80%, rgba(8, 123, 234, .38), transparent 36%), linear-gradient(145deg, #05101e, #183f5b); }
.portfolioThree { background: radial-gradient(circle at 77% 22%, rgba(45, 185, 255, .35), transparent 32%), linear-gradient(145deg, #02121e, #0b5272); }
.offerProcess { background: #fff; }
.offerProcess .offerSectionIntro { margin: 0 auto 55px; text-align: center; }
.offerProcessGrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 1360px; margin: 0 auto; }
.offerProcessGrid article { position: relative; padding: 26px clamp(20px, 3vw, 38px); border-right: 1px solid #d9e4ed; }
.offerProcessGrid article:last-child { border-right: 0; }
.offerProcessGrid span { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: #e9f5ff; color: #087bea; font-weight: 900; }
.offerProcessGrid h3 { margin: 24px 0 10px; text-transform: uppercase; }
.offerProcessGrid p { color: #5f7380; line-height: 1.65; }
.offerPackages { background: #071a2d; color: #fff; }
.offerPackages .offerSectionIntro > p:last-child { color: #afc0cc; }
.offerPackageGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 45px; }
.offerPackageGrid article { padding: clamp(26px, 4vw, 46px); border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(255,255,255,.04); }
.offerPackageGrid h3 { margin: 14px 0 0; font-size: clamp(2rem, 3.8vw, 4rem); letter-spacing: -.05em; }
.offerFinalCta { min-height: 570px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; background: radial-gradient(circle at 80% 30%, rgba(0, 128, 223, .38), transparent 35%), linear-gradient(140deg, #020b14, #052a48); color: #fff; }
.offerFinalCta h2 { max-width: 980px; margin: 0 0 24px; font-size: clamp(3rem, 6vw, 7rem); line-height: .94; letter-spacing: -.06em; }
.offerFinalCta > p:not(.offerEyebrow) { max-width: 700px; color: #bdccd7; font-size: 1.08rem; line-height: 1.7; }
@media (max-width: 1050px) {
    .offerHero,
    .offerPricing { grid-template-columns: 1fr; }
    .offerHero { padding-top: 150px; }
    .offerHeroVisual { min-height: 480px; }
    .offerPricing .offerSectionIntro { max-width: none; }
    .offerPortfolioGrid { grid-template-columns: 1fr 1fr; }
    .offerProcessGrid { grid-template-columns: 1fr 1fr; gap: 18px; }
    .offerProcessGrid article { border: 1px solid #d9e4ed; border-radius: 10px; }
}
@media (max-width: 680px) {
    .brand { width: 172px; }
    .septemberOfferPage header nav { display: none; }
    .septemberOfferPage header .headerPhones a:last-child { display: none; }
    .offerHero { min-height: auto; padding-top: 132px; }
    .offerHero h1 { font-size: clamp(3.05rem, 15vw, 5rem); }
    .offerHeroVisual { min-height: 350px; }
    .offerDesktop { inset: 10% 7% 15% 10%; padding-top: 24%; }
    .offerDesktop strong { font-size: 1.7rem; }
    .offerActions { align-items: stretch; flex-direction: column; }
    .offerActions a { width: 100%; box-sizing: border-box; text-align: center; }
    .offerPriceCard ul,
    .offerPortfolioGrid,
    .offerProcessGrid,
    .offerPackageGrid { grid-template-columns: 1fr; }
    .offerPortfolioPlaceholder { min-height: 220px; }
    .offerProcessGrid article { border: 1px solid #d9e4ed; }
}

.availabilityButton {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 14px 20px;
    border: 1px solid #16d9d0;
    border-radius: 4px;
    color: #16d9d0;
    font: 600 12px Manrope, sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
    transition: background .2s, color .2s, transform .2s;
}
.availabilityButton:hover,
.availabilityButton:focus-visible { background: #16d9d0; color: #061824; transform: translateY(-2px); outline: 3px solid rgba(22,217,208,.28); outline-offset: 2px; }
.availabilityButton::before { content: "\1F4C5"; margin-right: 8px; font-size: 14px; }
.ctaActions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.contactAvailability { margin-top: 24px; }
.contactAvailability p { margin: 0 0 12px; color: #a2b3b9; font-size: 14px; }
.innerCta .availabilityButton { border-color: #061824; color: #061824; }
.innerCta .availabilityButton:hover,
.innerCta .availabilityButton:focus-visible { background: #061824; color: #fff; }
@media (max-width: 600px) {
    .ctaActions { align-items: stretch; flex-direction: column; }
    .ctaActions a { width: 100%; text-align: center; }
    .availabilityButton { min-height: 48px; }
}

/* Secure Square payment flow. */
.paymentNav { color: #16d9d0 !important; }
.paymentMain { min-height: 100vh; padding: clamp(8rem, 13vw, 11rem) max(5vw, 24px) clamp(4rem, 8vw, 8rem); background: #061824; color: #fff; display: grid; grid-template-columns: minmax(0, .82fr) minmax(420px, 1.18fr); gap: clamp(2rem, 7vw, 7rem); }
.paymentIntro { max-width: 620px; }
.paymentIntro h1 { margin: 12px 0 24px; font-size: clamp(3.7rem, 7vw, 7rem); line-height: .88; letter-spacing: -.06em; }
.paymentIntro h1 em { color: #16d9d0; font-weight: inherit; }
.paymentIntro > p { max-width: 580px; color: #c8d5d9; font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.7; }
.paymentMethods { margin: 34px 0 20px; display: flex; flex-wrap: wrap; gap: 10px; }
.paymentMethods strong { flex-basis: 100%; margin-bottom: 6px; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.paymentMethods span { padding: 9px 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 100px; color: #fff; font-size: .82rem; }
.paymentIntro .afterpayNotice { padding: 18px 20px; border-left: 3px solid #b2fce4; background: rgba(178,252,228,.08); color: #dce9ec; font-size: .92rem; }
.paymentPanel { align-self: start; padding: clamp(24px, 4vw, 48px); border: 1px solid rgba(255,255,255,.14); border-radius: 8px; background: #fff; color: #061824; box-shadow: 0 28px 90px rgba(0,0,0,.25); }
.paymentPanel h2 { margin: 0 0 26px; font-size: clamp(1.65rem, 2.5vw, 2.25rem); }
.paymentForm { display: grid; gap: 20px; }
.paymentForm label, .paymentForm legend { color: #17313b; font-size: .78rem; font-weight: 700; letter-spacing: .04em; }
.paymentForm input, .paymentForm select, .paymentForm textarea { box-sizing: border-box; width: 100%; margin-top: 8px; padding: 13px 14px; border: 1px solid #bfd0d5; border-radius: 4px; background: #f8fbfc; color: #061824; font: inherit; }
.paymentForm input:focus, .paymentForm select:focus, .paymentForm textarea:focus { outline: 3px solid rgba(22,217,208,.24); border-color: #0aa8a1; }
.paymentFields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.travelCheckoutNote { display: grid; gap: 7px; padding: 16px 18px; border-left: 3px solid #0aa8a1; border-radius: 4px; background: #eef9f8; color: #39525b; font-size: .82rem; line-height: 1.5; }
.travelCheckoutNote strong { color: #061824; font-size: .92rem; }
.travelCheckoutNote a { justify-self: start; color: #007d77; font-weight: 800; letter-spacing: .04em; text-decoration: none; }
.paymentForm fieldset { min-width: 0; margin: 3px 0 0; padding: 0; border: 0; }
.paymentForm legend { margin-bottom: 12px; }
.paymentChoices { display: flex; flex-wrap: wrap; gap: 8px; }
.paymentChoices label { cursor: pointer; }
.paymentChoices input { position: absolute; opacity: 0; width: 1px; }
.paymentChoices span { display: block; padding: 10px 12px; border: 1px solid #bfd0d5; border-radius: 4px; font-weight: 600; }
.paymentChoices input:checked + span { border-color: #008f89; background: #e4fbfa; color: #006b67; box-shadow: inset 0 0 0 1px #008f89; }
.amountLabel { margin-top: 5px; }
.amountInput { display: grid; grid-template-columns: auto 1fr auto; align-items: center; margin-top: 8px; padding: 0 15px; border: 2px solid #0aa8a1; border-radius: 5px; background: #f5fffe; }
.amountInput input { margin: 0; padding: 17px 10px; border: 0; background: transparent; font-size: 1.45rem; font-weight: 750; }
.amountInput input:focus { outline: none; }
.amountInput b, .amountInput em { color: #3b5963; font-style: normal; }
.paymentSubmit { width: 100%; border: 0; cursor: pointer; }
.paymentSubmit:disabled { cursor: not-allowed; opacity: .45; }
.squareSecurity { display: flex; justify-content: space-between; gap: 16px; margin: 0; color: #39525b; font-size: .78rem; }
.squareSecurity span { text-align: right; }
.paymentPrivacy { margin: 0; color: #6b7e84; font-size: .75rem; text-align: center; }
.paymentAlert, .paymentSetupNotice { padding: 14px 16px; margin: 0 0 22px; border-radius: 4px; font-size: .88rem; line-height: 1.5; }
.paymentAlert { border: 1px solid #b62727; background: #fff1f1; color: #8b1515; }
.paymentSetupNotice { border: 1px solid #d5a20b; background: #fff9df; color: #654b00; }
.paymentHoneypot { position: absolute !important; left: -9999px !important; }
.paymentResultPage { background: #061824; color: #fff; }
.paymentResult { min-height: 100vh; max-width: 780px; margin: 0 auto; padding: clamp(10rem, 18vw, 15rem) 24px 6rem; text-align: center; }
.paymentResult h1 { font-size: clamp(2.4rem, 6vw, 5rem); line-height: 1; }
.paymentResult p { color: #c8d5d9; line-height: 1.7; }
.paymentResult .button { display: inline-flex; margin-top: 24px; }
.resultIcon { display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto 26px; border-radius: 50%; background: #16d9d0; color: #061824 !important; font-size: 2rem; font-weight: 800; }
.resultIcon.pending { background: #ffd267; }
.bookingPayment { margin-top: 42px; padding: clamp(24px, 4vw, 42px); border-radius: 6px; background: #061824; color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.bookingPayment h2 { margin: 7px 0; font-size: clamp(1.8rem, 3vw, 3rem); }
.bookingPayment p { margin: 0; color: #c8d5d9; }
.bookingPayment > div:last-child { display: grid; gap: 12px; justify-items: center; }
.bookingPayment small { color: #a9bec5; text-align: center; }
.amountLabel > small { display: block; margin-top: 8px; color: #52707a; font-size: .8rem; }
.sitePaymentCta { padding: clamp(48px,7vw,90px) 8vw; background: #16d9d0; color: #061824; display: flex; justify-content: space-between; align-items: center; gap: 36px; }
.sitePaymentCta h2 { max-width: 760px; margin: 8px 0 12px; font: 600 clamp(2rem,4vw,4rem)/1 Manrope,sans-serif; letter-spacing: -.045em; }
.sitePaymentCta p { margin: 0 0 12px; }
.sitePaymentCta small { display: block; color: #24444e; }
.paymentRequestCard { width: min(760px,calc(100% - 32px)); min-height: 60vh; margin: 120px auto 60px; padding: clamp(28px,6vw,64px); border-radius: 10px; background: #fff; color: #061824; box-shadow: 0 30px 100px rgba(0,0,0,.35); }
.paymentRequestCard h1 { margin: 8px 0 18px; font: 650 clamp(2.8rem,7vw,5.6rem)/.9 Manrope,sans-serif; letter-spacing: -.06em; }
.requestProject { color: #46616a; font-size: 1.25rem; }
.paymentRequestCard dl, .paymentReceipt { margin: 30px 0; border-top: 1px solid #d5e0e3; }
.paymentRequestCard dl div, .paymentReceipt div { display: flex; justify-content: space-between; gap: 25px; padding: 14px 0; border-bottom: 1px solid #d5e0e3; }
.paymentRequestCard dt, .paymentReceipt dt { color: #647b83; }
.paymentRequestCard dd, .paymentReceipt dd { margin: 0; font-weight: 700; text-align: right; }
.requestAmount { margin: 28px 0; padding: 24px; background: #e9fffb; border-left: 4px solid #16d9d0; }
.requestAmount small, .requestAmount span { display: block; color: #506970; }
.requestAmount strong { display: block; margin: 5px 0; font: 700 clamp(2.2rem,6vw,4.5rem)/1 Manrope,sans-serif; letter-spacing: -.05em; }
.paymentReceipt { max-width: 620px; margin-left: auto; margin-right: auto; text-align: left; }
@media (max-width: 820px) {
    .paymentMain { grid-template-columns: 1fr; padding-top: 9rem; }
    .paymentIntro { max-width: none; }
    .bookingPayment { align-items: stretch; flex-direction: column; }
    .sitePaymentCta { align-items: stretch; flex-direction: column; }
    .sitePaymentCta .button { text-align: center; }
}
@media (max-width: 560px) {
    .paymentFields { grid-template-columns: 1fr; }
    .paymentPanel { padding: 22px 18px; }
    .squareSecurity { align-items: center; flex-direction: column; }
    .squareSecurity span { text-align: center; }
}
.packageList .packageCard{display:flex;flex-direction:column;min-width:0;background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 16px 45px rgba(0,18,38,.1)}
.packageList .packageCard .packageLearn{display:flex;flex:1;flex-direction:column;color:inherit;text-decoration:none}
.packageActions{display:grid;gap:.55rem;padding:1rem;border-top:1px solid #e4e9ef}
.packageActions .button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.72rem .8rem;font-size:.72rem;text-align:center}
.packageActions .orderAction{background:#087bea;color:#fff;border-color:#087bea;order:-1}
.packageActions .dayOrderAction{background:#fff;color:#061a2e;border:1px solid #061a2e}
.packageActions .quoteAction{background:#061a2e;color:#fff;border-color:#061a2e}
.packageActions .depositAction{background:#fff;color:#087bea;border:1px solid #087bea}
.packageActions .weeklyAction{background:#edf6ff;color:#061a2e;border:1px solid #9acaf4}
.packageQuotePrompt{margin:clamp(3rem,7vw,7rem) auto 0;padding:clamp(2rem,5vw,4rem);max-width:900px;text-align:center;background:#061a2e;color:#fff;border-radius:1.25rem}
.packageQuotePrompt h2{margin:0 0 .6rem}.packageQuotePrompt p{margin:0 0 1.4rem}
.packageTravelShort{margin:.7rem 0 2rem;font-size:.86rem}.packageTravelShort a{color:#087bea;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.packageTravelPanel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(1.2rem,3vw,2.5rem);margin:clamp(3rem,7vw,6rem) auto 0;padding:clamp(1.6rem,4vw,2.8rem);max-width:1100px;border:1px solid #d8e5ee;border-radius:1rem;background:#f5f9fc;color:#17313b;box-shadow:0 12px 35px rgba(0,24,48,.06)}
.packageTravelIcon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#087bea;color:#fff;font-size:2rem}.packageTravelCopy .eyebrow{margin:0 0 .35rem;color:#087bea}.packageTravelCopy h2{margin:0 0 .7rem;color:#061a2e}.packageTravelCopy p{margin:.35rem 0;line-height:1.6}.packageTravelCopy strong{display:block;margin-top:.75rem;color:#061a2e}.packageTravelPanel>.button{white-space:nowrap;background:#087bea;color:#fff;border-color:#087bea}
.packageCheckoutSummary{margin:0 0 1.5rem;padding:1rem;border:1px solid #dce4ec;border-radius:.8rem;background:#f7fafc}
.packageCheckoutSummary>strong{display:block;margin-bottom:.7rem}.packageCheckoutSummary dl{margin:0}.packageCheckoutSummary dl div{display:flex;justify-content:space-between;padding:.3rem 0}.packageCheckoutSummary dl div:last-child{margin-top:.3rem;padding-top:.7rem;border-top:1px solid #cfd9e2;font-weight:800}
.weeklyPackageSummary>strong{text-transform:uppercase}.weeklyPackageSummary>p{margin:1rem 0 0;color:#39525b;font-size:.82rem;line-height:1.5}
.depositTotals{display:grid;gap:.45rem;margin:.2rem 0 1rem;padding:1rem;background:#061a2e;color:#fff;border-radius:.7rem}.depositTotals span{display:flex;justify-content:space-between}.depositTotals span:last-child{padding-top:.5rem;border-top:1px solid rgba(255,255,255,.25)}
@media(max-width:700px){.packageActions{grid-template-columns:1fr}.packageActions .button{width:100%}.packageQuotePrompt{border-radius:.8rem}.packageTravelPanel{grid-template-columns:1fr;text-align:left}.packageTravelPanel>.button{width:100%;text-align:center}.packageTravelIcon{width:50px;height:50px}}

/* School concert, graduation and Deb Ball production packages. */
.eventServicePage{background:#f3f6f8;color:#061824}.eventArtwork{height:clamp(260px,33.2vw,510px);overflow:hidden;background:#020b19}.eventArtwork img{display:block;width:100%;height:200%;object-fit:cover}.graduationArtwork img{object-position:center top}.debArtwork img{transform:translateY(-50%);object-position:center bottom}.eventServiceHero{padding:clamp(70px,9vw,130px) max(6vw,24px);background:#061824;color:#fff}.eventServiceHero>p:not(.eyebrow){max-width:760px;color:#c3d1d7;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.7}.eventServiceHero h1{margin:20px 0 28px;font:650 clamp(3.6rem,8vw,8.2rem)/.88 Manrope,sans-serif;letter-spacing:-.06em}.eventServiceHero h1 em{color:#16d9d0;font-weight:400}.eventServiceHero .ctaActions{margin-top:32px}.eventServiceHero .outline{border:1px solid #16d9d0;background:transparent;color:#16d9d0}.eventPackages,.eventUpgrades{padding:clamp(70px,9vw,120px) max(6vw,24px)}.eventSectionHead{max-width:820px;margin-bottom:clamp(35px,5vw,65px)}.eventSectionHead h2{margin:12px 0;font:650 clamp(2.7rem,5vw,5.6rem)/.95 Manrope,sans-serif;letter-spacing:-.05em}.eventSectionHead>p:last-child{color:#61747c;line-height:1.7}.eventPackageGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1300px}.eventPackageCard{display:flex;flex-direction:column;padding:clamp(26px,4vw,48px);border:1px solid #d8e2e7;border-radius:12px;background:#fff;box-shadow:0 18px 55px rgba(0,25,48,.08)}.eventPackageCard h3{margin:10px 0 20px;font:650 clamp(1.65rem,2.5vw,2.6rem)/1.05 Manrope,sans-serif}.eventPrice{margin:0 0 25px;color:#087bea;font:750 clamp(2.5rem,4.7vw,4.7rem)/1 Manrope,sans-serif;letter-spacing:-.045em}.eventPrice small,.eventPrice span{font-size:.3em;letter-spacing:.08em}.eventPrice small{display:block;margin-bottom:7px;color:#60737c}.eventPackageCard ul{flex:1;margin:0 0 30px;padding:0;list-style:none}.eventPackageCard li{position:relative;padding:8px 0 8px 24px;border-bottom:1px solid #edf1f3;color:#3f555e;line-height:1.45}.eventPackageCard li:before{content:'✓';position:absolute;left:0;color:#0aa8a1;font-weight:800}.eventPackageActions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.eventPackageActions .button{display:flex;align-items:center;justify-content:center;min-height:50px;text-align:center}.eventPackageActions .outline{border:1px solid #087bea;background:#fff;color:#087bea}.eventPackageCondition{max-width:1050px;margin:34px 0 0;color:#61747c;font-size:.88rem;line-height:1.65}.premiumUpgrade{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:clamp(42px,6vw,75px) max(6vw,24px);background:#061824;color:#fff}.premiumUpgrade>div{max-width:820px}.premiumUpgrade h2{margin:10px 0;font:650 clamp(2.1rem,4vw,4.4rem)/1 Manrope,sans-serif}.premiumUpgrade>div>p:last-child{color:#c5d2d7;line-height:1.65}.premiumUpgrade .eventPrice{flex:0 0 auto;margin:0;color:#16d9d0}.eventUpgrades{background:#fff}.upgradeGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#dbe4e8;border:1px solid #dbe4e8}.upgradeGrid article{padding:25px;background:#fff}.upgradeGrid h3{margin:0 0 18px;font:650 1.05rem/1.25 Manrope,sans-serif}.upgradeGrid p{margin:0;color:#087bea;font-weight:750}.multiEventPrompt{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:clamp(50px,7vw,90px) max(6vw,24px);background:#16d9d0}.multiEventPrompt>div{max-width:850px}.multiEventPrompt h2{margin:10px 0;font:650 clamp(2.5rem,5vw,5.3rem)/.95 Manrope,sans-serif}.eventPaymentChoice{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 24px}.eventPaymentChoice a{padding:13px;border:1px solid #b9cbd2;border-radius:4px;color:#24444e;font-size:.78rem;font-weight:800;text-align:center;text-decoration:none}.eventPaymentChoice a.active{border-color:#087bea;background:#087bea;color:#fff}.eventUpgradeChoices{display:grid!important;gap:8px;padding:18px!important;border:1px solid #d5e0e3!important;border-radius:5px!important;background:#f7fafb}.eventUpgradeChoices>p{margin:0 0 8px;color:#61747c;font-size:.8rem}.eventUpgrade{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-top:1px solid #e0e8eb}.eventUpgrade>span{color:#17313b;font-weight:700}.eventUpgrade small{display:block;margin-top:3px;color:#61747c;font-weight:500}.eventUpgrade input{width:22px;height:22px;margin:0}.eventUpgrade a{color:#087bea;font-weight:800;text-decoration:none}.eventQuoteFields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.eventQuoteFields label:last-child:nth-child(odd){grid-column:1/-1}
.eventPageNav{display:flex;justify-content:center;gap:8px;padding:18px 20px;background:#fff;border-bottom:1px solid #dbe4e8}.eventPageNav a{padding:11px 17px;border-radius:999px;color:#17313b;font-size:.78rem;font-weight:800;text-decoration:none}.eventPageNav a.active{background:#087bea;color:#fff}
@media(max-width:900px){.upgradeGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.eventPackageActions{grid-template-columns:1fr}.premiumUpgrade,.multiEventPrompt{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.eventArtwork{height:55vw}.eventArtwork img{height:200%}.eventPackageGrid,.upgradeGrid,.eventQuoteFields{grid-template-columns:1fr}.eventServiceHero h1{font-size:clamp(3.2rem,16vw,5.1rem)}.premiumUpgrade .eventPrice{font-size:2.7rem}.eventPaymentChoice{grid-template-columns:1fr}.eventPackageCard{padding:25px 20px}.eventPackageActions .button{width:100%}}

/* Professional Video Editing pricing. */
.editingPricing{padding:clamp(70px,9vw,120px) max(6vw,24px);background:#f2f6f8;color:#061824}.editingPricingHead{max-width:820px;margin-bottom:clamp(34px,5vw,60px)}.editingPricingHead h2{margin:12px 0 18px;font:650 clamp(2.8rem,5vw,5.6rem)/.95 Manrope,sans-serif;letter-spacing:-.05em}.editingPricingHead>p:last-child{color:#536b74;line-height:1.65}.editingPriceGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.editingPriceGrid article{display:flex;flex-direction:column;min-width:0;padding:clamp(24px,3vw,38px);border:1px solid #d7e2e6;border-radius:10px;background:#fff;box-shadow:0 16px 45px rgba(0,24,45,.07)}.editingPriceGrid small{color:#087bea;font-size:.72rem;font-weight:800;letter-spacing:.11em}.editingPriceGrid h3{margin:18px 0 14px;color:#061824;font:750 clamp(2.25rem,3.4vw,3.75rem)/1 Manrope,sans-serif;letter-spacing:-.045em}.editingPriceGrid h3 span{display:block;margin-top:7px;color:#55707a;font-size:.3em;letter-spacing:.04em}.editingPriceGrid p{min-height:3.4em;margin:0 0 16px;color:#536b74;line-height:1.55}.editingPriceGrid strong{display:block;min-height:2.6em;margin-bottom:22px;color:#17313b;font-size:.88rem}.editingPriceGrid .button{margin-top:auto;text-align:center}.editingIncluded{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:clamp(35px,7vw,90px);padding:clamp(70px,9vw,120px) max(6vw,24px);background:#061824;color:#fff}.editingIncluded h2{margin:13px 0;font:650 clamp(2.6rem,5vw,5.3rem)/.95 Manrope,sans-serif;letter-spacing:-.05em}.editingIncluded h2 em{color:#16d9d0;font-weight:inherit}.editingIncluded ul{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:0;padding:0;list-style:none}.editingIncluded li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15);color:#d4e0e4}.editingIncluded li:before{content:'✓';margin-right:10px;color:#16d9d0;font-weight:800}.editingIncluded>p{grid-column:2;margin:0;color:#9fb3ba;font-size:.9rem;line-height:1.65}
@media(max-width:1050px){.editingPriceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.editingPriceGrid,.editingIncluded,.editingIncluded ul{grid-template-columns:1fr}.editingIncluded>p{grid-column:1}.editingPriceGrid article{padding:25px 20px}.editingPriceGrid h3 span{font-size:.36em}.editingPriceGrid p,.editingPriceGrid strong{min-height:0}.editingPriceGrid .button{width:100%}}
.editingHourlyGrid{grid-template-columns:minmax(0,760px);justify-content:center}.editingHourlyCard{min-height:0}.editingHoursForm{display:grid;gap:14px;margin-top:10px}.editingHoursForm label{font-weight:800;color:#17313b}.editingHoursForm select{width:100%;padding:13px 14px;border:1px solid #afc1c9;border-radius:8px;background:#fff;color:#061824;font:700 1rem Manrope,sans-serif}.editingLiveTotal{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;padding:18px;border-radius:8px;background:#eef5f8}.editingLiveTotal span{display:flex;justify-content:space-between;gap:15px;color:#536b74}.editingLiveTotal span:last-child{grid-column:1/-1;padding-top:9px;border-top:1px solid #cbdbe1;color:#061824;font-size:1.08rem}.editingQuoteLink{display:block;margin-top:16px;text-align:center;color:#087bea;font-weight:800;text-decoration:none}
.filmingPaymentCards{padding:clamp(70px,9vw,120px) max(6vw,24px);background:#f2f6f8;color:#061824}.filmingPaymentHead{max-width:800px;margin-bottom:40px}.filmingPaymentHead h2{margin:12px 0;font:650 clamp(2.6rem,5vw,5rem)/.95 Manrope,sans-serif;letter-spacing:-.05em}.filmingPaymentHead>p:last-child{color:#536b74}.filmingPaymentGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.filmingPaymentGrid article{display:flex;flex-direction:column;padding:clamp(24px,3vw,38px);border:1px solid #d7e2e6;border-radius:10px;background:#fff;box-shadow:0 16px 45px rgba(0,24,45,.07)}.filmingPaymentGrid small{color:#087bea;font-weight:800;letter-spacing:.1em}.filmingPaymentGrid h3{margin:18px 0 10px;font-size:1.65rem}.filmingPaymentGrid>article>strong{font-size:2rem}.filmingPaymentGrid p{flex:1;color:#536b74;line-height:1.6}.filmingPaymentGrid article>div{display:grid;gap:12px}.filmingPaymentGrid article>div>a:not(.button){text-align:center;color:#087bea;font-weight:800;text-decoration:none}
@media(max-width:900px){.filmingPaymentGrid{grid-template-columns:1fr 1fr}.filmingPaymentGrid article:last-child{grid-column:1/-1}}
@media(max-width:600px){.editingLiveTotal{grid-template-columns:1fr}.editingLiveTotal span:last-child{grid-column:auto}.filmingPaymentGrid{grid-template-columns:1fr}.filmingPaymentGrid article:last-child{grid-column:auto}.filmingPaymentGrid article>div{grid-template-columns:1fr}.packageCheckoutSummary dl div{align-items:flex-start;gap:18px}.packageCheckoutSummary dd{text-align:right}}
.dronePackageSelector>p{margin:0 0 10px;color:#17313b;letter-spacing:.08em}.dronePaymentChoice a{display:flex;align-items:center;flex-direction:column;gap:4px}.dronePaymentChoice a span{font-weight:800}.dronePaymentChoice a small,.dronePaymentChoice a em{font-size:.72rem;font-style:normal;font-weight:500}.dronePaymentChoice a strong{font-size:.9rem}.dronePaymentChoice a:not(.active) small,.dronePaymentChoice a:not(.active) em{color:#61747c}.dronePaymentChoice a:hover{border-color:#087bea;background:#edf6ff;color:#061a2e}.dronePaymentChoice a.active:hover{background:#087bea;color:#fff}
