/* Creative Ventures — what the port needs on top of Divi's own stylesheet (divi.css).
   Divi's JavaScript is not loaded: these rules stand in for what it used to set at runtime. */

/* The "playlist" script font (Use Any Font plugin) used for the big headings. */
@font-face { font-family: 'playlist'; src: url('/fonts/5908Playlist.woff2') format('woff2'), url('/fonts/5908Playlist.woff') format('woff'); font-display: swap; }
.playlist { font-family: 'playlist' !important; }

/* Divi's JS measured the header and padded the page to match; the header is 66px (80px on phones). */
#page-container { padding-top: 66px; }
@media (max-width: 980px) { #page-container { padding-top: 80px; } }
#main-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 99999; background: #fff; box-shadow: 0 0 7px rgba(0,0,0,.1); transition: all .4s ease-in-out; }
#main-header.et-fixed-header { box-shadow: 0 0 7px rgba(0,0,0,.1); }
.cv-wordmark { font-family: Montserrat, sans-serif; font-weight: 700; font-size: 20px; color: #31b2ae; line-height: 66px; }

/* Modules Divi animates in with JS: show them. */
.et_animated, .et-waypoint:not(.et_pb_counters), .et_pb_animation_off { opacity: 1 !important; animation: none !important; }

/* Mobile menu (Divi builds this with JS; here it is server-rendered and toggled by site.js). */
#mobile_menu { display: none; }
.mobile_nav.opened #mobile_menu { display: block; }

/* Dropdowns: Divi's CSS hides .sub-menu and shows it on hover; keep keyboard focus working too. */
#top-menu li:focus-within > ul { opacity: 1; visibility: visible; }

/* Video modules: the overlay image sits over the iframe until clicked (site.js). */
.et_pb_video_box iframe { width: 100%; }

/* Contact forms, ported from Divi's module. */
.hp-field { position: absolute; left: -9999px; top: -9999px; height: 0; overflow: hidden; }
.cv-contact-message:empty { display: none; }
.cv-contact-message { margin-top: 12px; }
.cv-contact-message.ok { color: #1a8472; }
.cv-contact-message.err { color: #c0392b; }

/* The FAQ section on every page (Divi accordion markup). */
.cv-faq { background: #f7f9fa; padding: 54px 0; }
.cv-faq h2 { text-align: center; font-family: Montserrat, sans-serif; font-weight: 700; color: #2f5b7a; }
.cv-faq .et_pb_toggle { border: 1px solid #d9e2e7; background: #fff; }
.cv-faq .et_pb_toggle_title { font-family: Montserrat, sans-serif; font-weight: 600; color: #31b2ae; cursor: pointer; }
.cv-faq .et_pb_toggle_content p { font-size: 15px; }

/* Pages written in the CMS editor (not ported from Divi). */
.cv-hero { padding: 120px 0; background-size: cover; background-position: center; }
.cv-hero h1, .cv-hero p { color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,.5); }
.cv-subtitle { font-size: 18px; color: #666; }

/* Footer bar (Divi's #footer-bottom with its colours; the credits were disabled on the old site). */
#main-footer { background: #222; }
#footer-bottom { background: rgba(0,0,0,.32); padding: 15px 0 5px; }
#footer-info { color: #fff; font-size: 14px; text-align: center; font-family: Roboto, sans-serif; }
