.elementor-kit-85{--e-global-color-primary:#ECECEC;--e-global-color-secondary:#9AA0AA;--e-global-color-text:#ECECEC;--e-global-color-accent:#3B82F6;--e-global-color-8785445:#0B0E12;--e-global-color-7d01433:#12161D;--e-global-color-c4a974a:#1A1F28;--e-global-color-a5b2550:#07090C;--e-global-color-55a58c5:#FFFFFF14;--e-global-color-304e5d1:#FFFFFF2E;--e-global-color-8d68746:#5C6370;--e-global-color-ec84359:#6EE787;--e-global-color-8d9c652:#F2B441;--e-global-color-f5db0f5:#1E40AF;--e-global-color-ff36a8d:#C8102E;--e-global-color-5bbb057:#FFFFFF;--e-global-color-f48bd15:#000000;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:800;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.55em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0.2em;background-color:var( --e-global-color-8785445 );color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );color:var( --e-global-color-5bbb057 );border-radius:4px 4px 4px 4px;}.elementor-kit-85 button:hover,.elementor-kit-85 button:focus,.elementor-kit-85 input[type="button"]:hover,.elementor-kit-85 input[type="button"]:focus,.elementor-kit-85 input[type="submit"]:hover,.elementor-kit-85 input[type="submit"]:focus,.elementor-kit-85 .elementor-button:hover,.elementor-kit-85 .elementor-button:focus{background-color:var( --e-global-color-5bbb057 );color:var( --e-global-color-f48bd15 );border-radius:4px 4px 4px 4px;}.elementor-kit-85 e-page-transition{background-color:#FFBC7D;}.elementor-kit-85 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 a:hover{color:var( --e-global-color-accent );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 label{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-85 input:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea,.elementor-kit-85 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-primary );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-7d01433 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-304e5d1 );border-radius:4px 4px 4px 4px;padding:12px 16px 12px 16px;}.elementor-kit-85 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea:focus,.elementor-kit-85 .elementor-field-textual:focus{color:var( --e-global-color-primary );background-color:var( --e-global-color-7d01433 );border-style:solid;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-85{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 a{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 a:hover{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 h1{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h2{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h3{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h4{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h5{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h6{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-85 label{line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-85 input:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea,.elementor-kit-85 .elementor-field-textual{line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}@media(max-width:767px){.elementor-kit-85{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 a{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 a:hover{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 h1{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h2{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h3{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h4{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h5{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 h6{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );padding:14px 22px 14px 22px;}.elementor-kit-85 label{line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-85 input:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea,.elementor-kit-85 .elementor-field-textual{line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}}/* Start custom CSS *//* ============ CCGC site-wide helpers ============ */

/* 1 · Crosshair cursor — ENGAGED, kept red #C8102E */

body, body * {

  cursor:

    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'><circle cx='16' cy='16' r='10' fill='none' stroke='%23C8102E' stroke-width='1.2'/><line x1='16' y1='0' x2='16' y2='11' stroke='%23C8102E' stroke-width='1.2'/><line x1='16' y1='21' x2='16' y2='32' stroke='%23C8102E' stroke-width='1.2'/><line x1='0' y1='16' x2='11' y2='16' stroke='%23C8102E' stroke-width='1.2'/><line x1='21' y1='16' x2='32' y2='16' stroke='%23C8102E' stroke-width='1.2'/><circle cx='16' cy='16' r='1.5' fill='%23C8102E'/></svg>") 16 16, crosshair;

}

/* 2 · Outlined display text — used on hero "TRUE." and footer mega word */

.ccgc-outline .elementor-heading-title,

.ccgc-outline {

  -webkit-text-stroke: 1.5px #ECECEC;

  color: transparent !important;

}

/* 3 · Marquee scroller — used by the marquee strip track */

@keyframes ccgc-marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

.ccgc-marquee-track { animation: ccgc-marquee 40s linear infinite; will-change: transform; }

.ccgc-marquee-wrap:hover .ccgc-marquee-track { animation-play-state: paused; }

/* 4 · Hero grid background with a soft radial fade */

.ccgc-hero-grid::before {

  content:''; position:absolute; inset:0; pointer-events:none; opacity:.5;

  background-image:

    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);

  background-size:80px 80px;

  -webkit-mask-image: radial-gradient(ellipse at 50% 40%, #000 20%, transparent 75%);

          mask-image: radial-gradient(ellipse at 50% 40%, #000 20%, transparent 75%);

}

/* 5 · Map pin pulse — used by the contact map pin */

@keyframes ccgc-pulse { 0%{box-shadow:0 0 0 0 rgba(59,130,246,.5)} 100%{box-shadow:0 0 0 40px rgba(59,130,246,0)} }

.ccgc-pin { animation: ccgc-pulse 2s ease-out infinite; }

/* ccgc: tighten mobile hero top gap */
@media(max-width:767px){
  .ccgc-hero-grid > .e-con-inner{ padding-top:48px !important; }
}/* End custom CSS */