.cg-service-page{background:#070b10;color:#e9eff3;overflow:hidden}.cg-service-page h1,.cg-service-page h2{font-family:"Cormorant Garamond",serif;color:#f5f7f8;font-weight:400}.cg-service-page h2{font-size:clamp(2.25rem,4.7vw,4.2rem);line-height:.98}.cg-service-hero{min-height:calc(100svh - 78px);padding:5.5rem 0 4.5rem;display:flex;align-items:center;background:radial-gradient(circle at 82% 18%,rgba(0,229,160,.14),transparent 26rem)}.cg-service-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);gap:clamp(2rem,6vw,7rem);align-items:center}.cg-service-hero h1{font-size:clamp(3.4rem,7vw,7rem);line-height:.84;margin:.5rem 0 1.4rem;max-width:12ch}.cg-service-lede{font-size:clamp(1.15rem,1.7vw,1.4rem);max-width:39rem;color:#c1cbd0;line-height:1.55;margin-bottom:2rem}.cg-service-location{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#7f929b;margin-top:1.7rem;max-width:34rem}.cg-service-hero-media{position:relative;isolation:isolate;aspect-ratio:4/5;border:1px solid rgba(74,237,178,.45);border-radius:1rem;overflow:hidden;background:#0d151c;box-shadow:0 2rem 7rem rgba(0,0,0,.48)}.cg-service-hero-media:before{content:"";position:absolute;inset:.55rem;border:1px solid rgba(255,255,255,.12);border-radius:.65rem;z-index:1;pointer-events:none}.cg-service-hero-media video,.cg-service-hero-media img{width:100%;height:100%;object-fit:cover}.cg-service-food-photo .cg-service-hero-media{aspect-ratio:1/1;border-radius:50% 50% 1rem 1rem;transform:rotate(-3deg)}.cg-service-restaurant-video .cg-service-hero-media{aspect-ratio:16/10;border-radius:0}.cg-service-food-video .cg-service-hero-media{aspect-ratio:3/4;border-radius:12rem 12rem 1rem 1rem}.cg-service-social .cg-service-hero-media{aspect-ratio:9/16;border-radius:.4rem;box-shadow:1rem 1rem 0 #00e5a0}.cg-service-commercial .cg-service-hero{background:linear-gradient(120deg,#030407,#101f1f)}.cg-service-commercial .cg-service-hero-media{aspect-ratio:16/10;border-radius:1.5rem}.narrow{max-width:54rem}.cg-service-intro{padding:8rem 0 6rem}.cg-service-intro p,.cg-service-story p,.cg-service-local p,.cg-service-deliverables p,.cg-service-cta p{font-size:1.1rem;line-height:1.75;color:#b9c5cb}.cg-service-intro h2{max-width:16ch;margin-bottom:2rem}.cg-service-deliverables{padding:6rem 0;background:#0d141a;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.cg-service-split,.cg-service-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,9vw,11rem)}.cg-service-list{list-style:none;padding:0;margin:1rem 0 0}.cg-service-list li{font-family:"Cormorant Garamond",serif;font-size:clamp(1.55rem,2.6vw,2.4rem);padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.13);color:#f1f5f4}.cg-service-list li:before{content:"✦";font-family:Inter,sans-serif;color:#00e5a0;font-size:.7rem;margin-right:.8rem;vertical-align:middle}.cg-service-story{padding:8rem 0}.cg-service-local{padding:1rem 0 8rem}.cg-service-local-card{background:linear-gradient(120deg,#101d20,#071014);border:1px solid rgba(0,229,160,.37);padding:clamp(2rem,6vw,6rem);border-radius:1.3rem}.cg-service-local-card h2{max-width:20ch;margin-bottom:1.5rem}.cg-service-faq{padding:7rem 0}.cg-service-faq details{border-bottom:1px solid rgba(255,255,255,.15);padding:1.15rem 0}.cg-service-faq summary{font-size:1.06rem;font-weight:600;cursor:pointer;color:#f5f7f8;padding-right:2rem}.cg-service-faq summary::marker{color:#00e5a0}.cg-service-faq details p{color:#b9c5cb;line-height:1.6;padding-top:.6rem;max-width:46rem}.cg-service-cta{padding:1rem 0 7rem}.cg-service-cta-card{text-align:center;padding:clamp(2.7rem,7vw,6.5rem);border-radius:1.3rem;background:radial-gradient(circle at 50% 0,rgba(0,229,160,.2),transparent 50%),#101a20}.cg-service-cta-card h2{max-width:14ch;margin:.6rem auto 1rem}.cg-service-cta-card p{max-width:42rem;margin:0 auto 2rem}.cg-related-services{padding:0 0 6rem}.cg-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.cg-related-grid a{border:1px solid rgba(255,255,255,.16);padding:1rem;color:#e8f1ef;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;display:flex;justify-content:space-between}.cg-related-grid a:hover{border-color:#00e5a0;color:#00e5a0}.cg-text-link{color:#00e5a0;text-decoration:none;font-weight:600}.cg-footer-services{border-top:1px solid rgba(255,255,255,.1);margin-top:2rem;padding-top:1.2rem;display:flex;gap:.8rem 1.2rem;flex-wrap:wrap;justify-content:center}.cg-footer-services span,.cg-footer-services a{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em}.cg-footer-services span{color:#73848d}.cg-footer-services a{color:#abb9bd;text-decoration:none}.cg-footer-services a:hover{color:#00e5a0}@media(max-width:767px){.cg-service-hero{min-height:auto;padding:3.5rem 0 3.8rem}.cg-service-hero-grid,.cg-service-split,.cg-service-story-grid{grid-template-columns:1fr;gap:2.7rem}.cg-service-hero h1{font-size:clamp(3.2rem,15vw,5.2rem);max-width:10ch}.cg-service-hero-media{max-width:27rem;margin:auto;width:100%;aspect-ratio:4/4.2}.cg-service-restaurant-video .cg-service-hero-media,.cg-service-commercial .cg-service-hero-media{aspect-ratio:16/10}.cg-service-social .cg-service-hero-media{aspect-ratio:9/13;max-width:20rem}.cg-service-intro,.cg-service-story{padding:5rem 0}.cg-service-deliverables,.cg-service-faq{padding:4.5rem 0}.cg-service-local{padding-bottom:5rem}.cg-related-grid{grid-template-columns:1fr}.cg-service-page h2{font-size:2.65rem}}
.cg-service-hero h1{font-size:clamp(3.05rem,5.55vw,5.85rem);max-width:13ch}@media(min-width:1200px){.cg-service-deliverables .container{max-width:1700px}.cg-service-deliverables .cg-service-split{grid-template-columns:minmax(19rem,.82fr) minmax(0,1.28fr);gap:clamp(3.5rem,8vw,10rem)}.cg-service-deliverables h2{font-size:clamp(2.25rem,3.3vw,3.45rem);max-width:14ch}.cg-service-list li{font-size:clamp(1.2rem,1.5vw,1.68rem);padding:.75rem 0}}
.cg-service-deliverables h2{max-width:20ch}.cg-service-cta-card h2{max-width:22ch;font-size:clamp(2.6rem,4.25vw,4.6rem)}@media(min-width:1200px){.cg-service-deliverables .container{max-width:1500px}}
@media(min-width:768px){.cg-service-social .cg-service-hero-media{width:min(100%,27rem);max-height:72svh;justify-self:center}}
.cg-service-food-photo .cg-service-faq h2,.cg-service-food-video .cg-service-faq h2{font-size:clamp(2.25rem,4.25vw,3.9rem)}
/* Balance long service-page titles on desktop without changing the mobile type scale. */
@media(min-width:768px){
  .cg-service-hero h1{font-size:clamp(3.05rem,5.15vw,5.45rem);max-width:15ch}
  .cg-service-food-photo .cg-service-hero h1,.cg-service-food-video .cg-service-hero h1{font-size:clamp(3rem,4.4vw,4.7rem);max-width:100%}
  .cg-service-page h2{font-size:clamp(2.2rem,4.45vw,4rem)}
  .cg-service-intro h2{max-width:23ch}
  .cg-service-restaurant-video .cg-service-intro h2{font-size:clamp(2.2rem,3.6vw,3.6rem);max-width:none}
  .cg-service-restaurant-video .cg-service-faq h2{font-size:clamp(2.1rem,2.9vw,2.95rem);max-width:none}
  .cg-service-food-video .cg-service-intro h2{font-size:clamp(2.15rem,3.5vw,3.4rem)}
  .cg-service-faq h2,.cg-service-food-photo .cg-service-faq h2,.cg-service-food-video .cg-service-faq h2{font-size:clamp(2.2rem,3.95vw,3.65rem)}
  .cg-service-deliverables .cg-service-split{grid-template-columns:minmax(21rem,.95fr) minmax(0,1.15fr);gap:clamp(2.75rem,6vw,7rem)}
  .cg-service-deliverables h2{font-size:clamp(2.05rem,2.9vw,3rem);max-width:100%}
}

/* The deliverables copy is intentionally asymmetric; offset its shared desktop composition toward center. */
@media(min-width:1200px){
  .cg-service-deliverables .container{transform:translateX(clamp(2rem,4vw,6rem))}
}

/* Restaurant Photography gallery: small, lazy thumbnails; full images load only in the lightbox. */
.cg-service-photography .cg-service-intro h2{font-size:clamp(2.4rem,3.65vw,3.6rem);max-width:100%}
.cg-food-gallery{margin-top:3rem}
.cg-food-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.cg-food-gallery-item{appearance:none;border:1px solid rgba(83,225,174,.32);background:#111821;border-radius:.75rem;cursor:zoom-in;overflow:hidden;padding:0;aspect-ratio:4/3}
.cg-food-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease}
.cg-food-gallery-item:hover img,.cg-food-gallery-item:focus-visible img{opacity:.9;transform:scale(1.04)}
.cg-food-gallery-item:focus-visible{outline:2px solid #53e1ae;outline-offset:3px}
.cg-food-lightbox{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:rgba(1,5,9,.92);padding:2rem 4.5rem}
.cg-food-lightbox figure{margin:0;max-width:min(1100px,100%);max-height:calc(100vh - 4rem);text-align:center}
.cg-food-lightbox figure img{display:block;max-width:100%;max-height:calc(100vh - 7rem);margin:auto;border-radius:.8rem;object-fit:contain}
.cg-food-lightbox figcaption{color:#d9e1e9;font-family:Inter,sans-serif;font-size:.9rem;margin-top:.9rem}
.cg-food-lightbox-close,.cg-food-lightbox-nav{border:0;background:transparent;color:#fff;cursor:pointer;font-family:Inter,sans-serif;line-height:1;position:absolute}
.cg-food-lightbox-close{font-size:2.6rem;right:1.3rem;top:1rem}
.cg-food-lightbox-nav{font-size:4rem;top:50%;transform:translateY(-50%);padding:.75rem}
.cg-food-lightbox-prev{left:1rem}.cg-food-lightbox-next{right:1rem}
body.cg-lightbox-open{overflow:hidden}
@media(max-width:767px){.cg-service-photography .cg-service-intro h2{max-width:100%}.cg-food-gallery{margin-top:2.25rem}.cg-food-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.cg-food-lightbox{padding:1.25rem 2.75rem}.cg-food-lightbox figure img{max-height:calc(100vh - 6rem)}.cg-food-lightbox-close{right:.65rem;top:.4rem}.cg-food-lightbox-nav{font-size:2.8rem;padding:.35rem}.cg-food-lightbox-prev{left:.1rem}.cg-food-lightbox-next{right:.1rem}}

/* Lightweight poster frames; an MP4 is requested only after a visitor selects it. */
.cg-video-gallery{margin-top:3rem}.cg-video-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.cg-video-gallery-item{appearance:none;position:relative;border:1px solid rgba(83,225,174,.32);background:#111821;border-radius:.8rem;cursor:pointer;overflow:hidden;padding:0;aspect-ratio:16/9;text-align:left}.cg-video-gallery-item img,.cg-video-gallery-item video{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease,opacity .3s ease}.cg-video-gallery-item:hover img,.cg-video-gallery-item:hover video,.cg-video-gallery-item:focus-visible img,.cg-video-gallery-item:focus-visible video{opacity:.9;transform:scale(1.04)}.cg-video-gallery-item:focus-visible{outline:2px solid #53e1ae;outline-offset:3px}.cg-video-gallery-play{position:absolute;left:1rem;top:1rem;display:grid;place-items:center;width:2.65rem;height:2.65rem;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(1,8,12,.68);color:#53e1ae;font-size:.8rem;padding-left:.12rem}.cg-video-gallery-label{position:absolute;bottom:0;left:0;right:0;padding:2.5rem 1rem .9rem;background:linear-gradient(transparent,rgba(1,6,10,.9));color:#fff;font-family:Inter,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.cg-video-gallery-stories .cg-video-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cg-video-gallery-stories .cg-video-gallery-item{aspect-ratio:9/16}.cg-video-lightbox{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:rgba(1,5,9,.92);padding:2rem 4.5rem}.cg-video-lightbox figure{margin:0;max-width:min(1200px,100%);max-height:calc(100vh - 4rem);text-align:center}.cg-video-lightbox figure video{display:block;max-width:100%;max-height:calc(100vh - 7rem);margin:auto;border-radius:.8rem;background:#000}.cg-video-lightbox figcaption{color:#d9e1e9;font-family:Inter,sans-serif;font-size:.9rem;margin-top:.9rem}.cg-video-lightbox-close,.cg-video-lightbox-nav{border:0;background:transparent;color:#fff;cursor:pointer;font-family:Inter,sans-serif;line-height:1;position:absolute}.cg-video-lightbox-close{font-size:2.6rem;right:1.3rem;top:1rem}.cg-video-lightbox-nav{font-size:4rem;top:50%;transform:translateY(-50%);padding:.75rem}.cg-video-lightbox-prev{left:1rem}.cg-video-lightbox-next{right:1rem}
@media(max-width:767px){.cg-video-gallery{margin-top:2.25rem}.cg-video-gallery-grid{grid-template-columns:1fr;gap:.7rem}.cg-video-lightbox{padding:1.25rem 2.75rem}.cg-video-lightbox figure video{max-height:calc(100vh - 6rem)}.cg-video-lightbox-close{right:.65rem;top:.4rem}.cg-video-lightbox-nav{font-size:2.8rem;padding:.35rem}.cg-video-lightbox-prev{left:.1rem}.cg-video-lightbox-next{right:.1rem}}
@media(max-width:767px){.cg-video-gallery-stories .cg-video-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cg-service-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.cg-service-hero-actions .cg-btn-ghost{border-color:rgba(0,229,160,.32);color:#c6d1d3}.cg-service-hero-actions .cg-btn-ghost:hover{border-color:#00e5a0;color:#00e5a0}@media(max-width:575.98px){.cg-service-hero-actions{display:grid;grid-template-columns:1fr}.cg-service-hero-actions .cg-btn{text-align:center}}

/* CineGrow blue visual system: production service pages use navy fields with green reserved for accents. */
.cg-service-page{background:radial-gradient(circle at 88% 12%,rgba(70,168,224,.13),transparent 32rem),linear-gradient(180deg,#06121b 0%,#071925 55%,#06121b 100%)}
.cg-service-hero{background:radial-gradient(circle at 82% 18%,rgba(69,170,226,.18),transparent 29rem)}
.cg-service-commercial .cg-service-hero{background:linear-gradient(120deg,#06121b,#0b2838)}
.cg-service-hero-media{border-color:rgba(107,199,238,.57);background:#0a1c28;box-shadow:0 2rem 7rem rgba(0,0,0,.48),0 0 2.5rem rgba(63,169,224,.1)}
.cg-service-deliverables{background:linear-gradient(135deg,#0d2938,#081b28);border-color:rgba(105,194,232,.23)}
.cg-service-local-card{background:linear-gradient(120deg,#102d3c,#081a26);border-color:rgba(102,198,238,.55);box-shadow:0 0 2rem rgba(67,165,223,.09)}
.cg-service-cta-card{background:radial-gradient(circle at 50% 0,rgba(59,163,220,.18),transparent 50%),#0a2231;border:1px solid rgba(101,196,235,.46)}
.cg-related-grid a{border-color:rgba(107,196,233,.36);background:rgba(10,29,42,.64)}
.cg-related-grid a:hover{border-color:#65cbed;background:#102b3a;color:#fff}
.cg-food-gallery-item,.cg-video-gallery-item{border-color:rgba(98,190,232,.4);background:#0a1d2a}
.cg-service-hero-actions .cg-btn-ghost{border-color:rgba(102,199,237,.48)}
.cg-service-hero-actions .cg-btn-ghost:hover{border-color:#65cbed;color:#dff5ff}

/* Preserve a deliberate three-line photography hero composition. */
@media(min-width:768px){.cg-service-photography .cg-service-hero h1{font-size:clamp(3.1rem,4.3vw,4.15rem);line-height:.91;max-width:11.8ch}}
@media(max-width:767px){.cg-service-photography .cg-service-hero h1{font-size:clamp(2.9rem,12.4vw,3.35rem);line-height:.92;max-width:11.7ch}}

@media(min-width:1024px){
  .cg-service-photography .cg-service-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(26rem,.85fr);gap:clamp(2rem,4vw,4.5rem)}
  .cg-service-photography .cg-service-hero h1{font-size:clamp(3rem,3.9vw,3.8rem);max-width:none}
}
