

/* Embedded Lato font license
Copyright (c) 2010-2014 by tyPoland Lukasz Dziedzic (team@latofonts.com) with Reserved Font Name "Lato"

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded, 
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

*/
@font-face{font-family:CG4Lato;font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lato-regular.woff2") format("woff2")}
@font-face{font-family:CG4Lato;font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lato-bold.woff2") format("woff2")}
/* Complete Home-only design. No framework or animation-library dependency. */
html,body{margin:0;padding:0}
#cgc-home{--cg-wine:#751827;--cg-deep:#24171e;--cg-rose:#bc5260;--cg-paper:#f4f0e9;--cg-ink:#242126;--cg-muted:#70676c;--cg-admin:0px;font:400 16px/1.75 CG4Lato,Arial,sans-serif;color:var(--cg-ink);background:#fff;width:100%;max-width:none;overflow-x:clip;isolation:isolate;-webkit-font-smoothing:antialiased}
#cgc-home *,#cgc-home *::before,#cgc-home *::after{box-sizing:border-box}
#cgc-home h1,#cgc-home h2,#cgc-home h3,#cgc-home p,#cgc-home ul,#cgc-home figure{margin:0}
#cgc-home h1,#cgc-home h2,#cgc-home h3{font-family:CG4Lato,Arial,sans-serif;font-weight:700;color:inherit}
#cgc-home h2{font-size:clamp(34px,3.6vw,52px);letter-spacing:-1.8px;line-height:1.13}
#cgc-home h3{font-size:25px;letter-spacing:-.65px;line-height:1.2}
#cgc-home p{margin-bottom:18px}
#cgc-home img{max-width:100%;display:block;height:auto}
#cgc-home a{color:inherit;text-decoration:none;transition:color .25s,background .25s,transform .3s}
#cgc-home ul{padding:0;list-style:none}
#cgc-home button{font:inherit;cursor:pointer}
#cgc-home a:focus-visible,#cgc-home button:focus-visible,#cgc-home summary:focus-visible{outline:3px solid #bc5260;outline-offset:5px}
#cgc-home .tx-container,#cgc-home .cg4-container{width:calc(100% - 88px);max-width:1240px;margin-inline:auto;position:relative}
#cgc-home .tx-section{padding:90px 0}
#cgc-home .tx-label{display:block;font-size:11px;font-weight:700;letter-spacing:2.3px;text-transform:uppercase;color:var(--cg-wine);margin-bottom:17px;line-height:1.4}
#cgc-home .tx-label-light{color:#efbac4}
#cgc-home .cgc-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#cgc-home .tx-skip{position:absolute;top:-100px;left:20px;padding:12px 20px;background:white;z-index:1200}
#cgc-home .tx-skip:focus{top:10px}
#cgc-home .cgc-button{display:inline-flex;align-items:center;justify-content:center;gap:27px;min-height:52px;padding:13px 24px;border-radius:7px;background:var(--cg-wine);color:#fff;font-size:13px;font-weight:700;position:relative;overflow:hidden;border:1px solid transparent;line-height:1.4;box-shadow:none}
#cgc-home .cgc-button:hover{background:#93293b;transform:translateY(-3px)}
#cgc-home .cgc-button>span:last-child{font-size:20px;line-height:1}
#cgc-home .cgc-arrow{display:inline-flex;align-items:center;justify-content:center;font-size:22px}
/* Brand and navigation */
#cgc-home .cg4-header{position:sticky;top:var(--cg-admin);z-index:1100;background:#fff;transition:transform .32s cubic-bezier(.2,.7,.2,1),box-shadow .3s;border-bottom:1px solid #ece5e6;will-change:transform}
#cgc-home .cg4-header.cg4-header-hidden{transform:translateY(calc(-100% - var(--cg-admin) - 2px))}
#cgc-home .cg4-header:focus-within{transform:translateY(0)}
#cgc-home .tx-nav-inner{min-height:90px;display:flex;align-items:center;gap:28px}
#cgc-home .tx-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;line-height:1}
#cgc-home .cg4-brand-symbol{width:47px;height:63px;object-fit:contain;background:#fff;flex-shrink:0}
#cgc-home .cg4-wordmark{display:grid;gap:4px;font-family:CG4Lato,Arial,sans-serif}
#cgc-home .cg4-wordmark strong{font-size:25px;letter-spacing:.1px;font-weight:700;color:#292128}
#cgc-home .cg4-wordmark>span{font-size:14px;letter-spacing:5px;color:var(--cg-wine);font-weight:700}
#cgc-home .cgc-navigation{margin-left:auto}
#cgc-home .tx-nav-list{display:flex;align-items:center;gap:24px}
#cgc-home .tx-nav-list li{display:block;margin:0;padding:0}
#cgc-home .tx-nav-list a{display:block;position:relative;font-size:13px;font-weight:700;line-height:1.4;padding:14px 0;white-space:nowrap}
#cgc-home .tx-nav-list a::after{content:"";position:absolute;bottom:6px;left:0;height:2px;width:100%;background:var(--cg-wine);transform:scaleX(0);transform-origin:left;transition:transform .25s}
#cgc-home .tx-nav-list a:hover,#cgc-home .tx-nav-list a[aria-current=page]{color:var(--cg-wine)}
#cgc-home .tx-nav-list a:hover::after,#cgc-home .tx-nav-list a[aria-current=page]::after{transform:scaleX(1)}
#cgc-home .tx-header-cta{background:var(--cg-wine);color:white;padding:13px 20px;font-size:12px;font-weight:700;border-radius:6px;white-space:nowrap}
#cgc-home .tx-header-cta:hover{background:#93293b}
#cgc-home .cgc-menu-toggle{display:none;background:white;border:1px solid #e4d9dd;color:var(--cg-wine);width:42px;height:42px;border-radius:6px;align-items:center;justify-content:center}
#cgc-home .tx-menu-bars,#cgc-home .tx-menu-bars::before,#cgc-home .tx-menu-bars::after{display:block;width:19px;height:2px;background:var(--cg-wine);position:relative;transition:transform .25s}
#cgc-home .tx-menu-bars::before,#cgc-home .tx-menu-bars::after{content:"";position:absolute;left:0;top:-6px}
#cgc-home .tx-menu-bars::after{top:6px}
#cgc-home .cgc-menu-toggle[aria-expanded=true] .tx-menu-bars{background:transparent}
#cgc-home .cgc-menu-toggle[aria-expanded=true] .tx-menu-bars::before{top:0;transform:rotate(45deg)}
#cgc-home .cgc-menu-toggle[aria-expanded=true] .tx-menu-bars::after{top:0;transform:rotate(-45deg)}
/* First impression: steady photography, animated connection paths. */
#cgc-home .cg4-hero{position:relative;background:radial-gradient(ellipse at 90% 5%,#652330 0%,transparent 55%),linear-gradient(115deg,#241c23,#351722 65%,#4b1d28);color:#fff;isolation:isolate;overflow:hidden}
#cgc-home .cg4-hero::after{content:"";position:absolute;top:-25%;right:-29%;width:76%;height:150%;border-radius:50%;background:linear-gradient(150deg,#f2e8dc,#e7d7ce);z-index:-1;box-shadow:-30px 0 100px #1b10181f}
#cgc-home .cg4-hero-texture{position:absolute;inset:0;z-index:-1;opacity:.12;background-image:linear-gradient(90deg,transparent 24.8%,#ffffff25 25%,transparent 25.2%,transparent 74.8%,#ffffff25 75%,transparent 75.2%);background-size:220px 100%;mask-image:linear-gradient(90deg,#000,transparent 68%)}
#cgc-home .cg4-hero-grid{display:grid;grid-template-columns:1.07fr 1fr;align-items:center;gap:58px;min-height:650px;padding-top:62px;padding-bottom:89px}
#cgc-home .cg4-hero-copy{position:relative;z-index:2}
#cgc-home .cg4-approval{display:inline-flex;align-items:center;gap:10px;padding:9px 13px;border:1px solid #ffffff32;border-radius:5px;margin-bottom:29px;background:#ffffff08;font-size:11px;letter-spacing:.15px}
#cgc-home .cg4-approval>span:first-child{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#f4e8e7;color:#761f2c;font-weight:700;font-size:11px}
#cgc-home .cg4-approval-place{border-left:1px solid #ffffff38;padding-left:10px;color:#e2cfd5}
#cgc-home .cg4-hero h1{font-size:clamp(48px,5.15vw,76px);font-weight:700;letter-spacing:-3px;line-height:1.04;margin:0 0 23px}
#cgc-home .cg4-title-line{display:block;overflow:hidden;padding-bottom:5px}
#cgc-home .cg4-title-line>span{display:block;animation:cg4TitleIn .95s cubic-bezier(.16,.7,.2,1) both}
#cgc-home .cg4-title-line:nth-child(2)>span{animation-delay:.13s}
#cgc-home .cg4-stop{color:#e5a1aa}
#cgc-home .cg4-hero-statement{font-size:25px;color:#efc1c8;font-weight:700;letter-spacing:-.5px;margin:0 0 21px;animation:cg4Rise .8s .23s both}
#cgc-home .cg4-hero-intro{font-size:15px;line-height:1.9;color:#e1d6dc;max-width:480px;margin-bottom:28px;animation:cg4Rise .85s .32s both}
#cgc-home .cg4-hero-actions{display:flex;align-items:center;gap:28px;animation:cg4Rise .85s .42s both}
#cgc-home .cg4-hero .cgc-button{background:#f7f0e9;color:#671727;min-height:53px}
#cgc-home .cg4-hero .cgc-button:hover{background:#fff}
#cgc-home .cg4-text-link{display:inline-flex;align-items:center;gap:15px;font-size:12px;font-weight:700;border-bottom:1px solid #b17a87;padding:10px 0;color:#f7e6eb}
#cgc-home .cg4-text-link:hover{color:#fff;border-color:white}
#cgc-home .cg4-circle-stage{width:100%;position:relative;justify-self:center;max-width:535px;animation:cg4CircleIn 1.2s .16s both}
#cgc-home .cg4-circle-art{width:100%;aspect-ratio:1;position:relative;transform:translate3d(var(--cg4-x,0px),var(--cg4-y,0px),0);transition:transform 1s ease-out}
#cgc-home .cg4-photo-frame{position:absolute;inset:40px;border-radius:50%;overflow:hidden;border:7px solid #f6eee4;box-shadow:0 24px 55px #190f1938;z-index:1}
#cgc-home .cg4-photo-frame picture,#cgc-home .cg4-photo-frame img{display:block;width:100%;height:100%}
#cgc-home .cg4-photo-frame img{object-fit:cover;object-position:center;transform:none}
#cgc-home .cg4-orbit{position:absolute;border:1px solid #e5b6be6e;border-radius:50%;pointer-events:none;z-index:2;will-change:transform}
#cgc-home .cg4-orbit-one{inset:15px;animation:cg4Orbit 22s linear infinite}
#cgc-home .cg4-orbit-two{inset:0;border-style:dashed;border-color:#b2768470;animation:cg4Orbit 34s linear infinite reverse}
#cgc-home .cg4-node{position:absolute;left:50%;top:-5px;width:10px;height:10px;background:#faf3e9;border:2px solid #9c3a4d;border-radius:50%;box-shadow:0 0 0 4px #eee0d121}
#cgc-home .cg4-node-opposite{top:auto;bottom:-5px;width:8px;height:8px;background:#c87987;border-color:#fff2eb}
#cgc-home .cg4-orbit-two .cg4-node{width:8px;height:8px;left:50%;top:-4px;background:#782336;border:2px solid #f2e5df}
#cgc-home .cg4-connection-pulse{position:absolute;left:15%;top:16%;height:16px;width:16px;border:1px solid #e8b1bb;border-radius:50%;z-index:3;animation:cg4Pulse 5.5s ease-out infinite}
#cgc-home .cg4-fixed-node{position:absolute;left:15%;top:16%;width:8px;height:8px;margin:4px;border-radius:50%;background:#f8e6e8;border:2px solid #8b2d40;z-index:4}
#cgc-home .cg4-fixed-node-two{left:auto;top:auto;right:13%;bottom:17%;background:#8b2d40;border-color:#f4e4d9}
#cgc-home .cg4-image-note{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:15px;color:#795461;position:relative}
#cgc-home .cg4-image-note>span{height:1px;width:34px;background:#cb9ba7}
#cgc-home .cg4-image-note p{font-size:10px;letter-spacing:.3px;margin:0}
#cgc-home .cg4-hero-bottom{position:absolute;left:0;right:0;bottom:0;height:5px;display:flex}
#cgc-home .cg4-hero-bottom span:nth-child(1){width:45%;background:#9f3449}#cgc-home .cg4-hero-bottom span:nth-child(2){width:25%;background:#d2a3a7}#cgc-home .cg4-hero-bottom span:nth-child(3){flex:1;background:#eee0d3}
@keyframes cg4Orbit{to{transform:rotate(360deg)}}
@keyframes cg4Pulse{0%,12%{transform:translate(-1px,-1px) scale(.5);opacity:0}20%{opacity:.8}65%,100%{transform:translate(-1px,-1px) scale(3);opacity:0}}
@keyframes cg4TitleIn{from{opacity:0;transform:translateY(105%)}to{opacity:1;transform:translateY(0)}}
@keyframes cg4Rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes cg4CircleIn{from{opacity:0;transform:scale(.94) translateX(15px)}to{opacity:1;transform:scale(1) translateX(0)}}
#cgc-home.cg4-hero-paused .cg4-orbit,#cgc-home.cg4-hero-paused .cg4-connection-pulse{animation-play-state:paused}
/* An overlapping navigation rail introduces a quieter About section. */
#cgc-home .tx-action-rail{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;max-width:1100px;position:relative;margin-top:-29px;z-index:3;background:#fff;box-shadow:0 14px 35px #341d2612;border-radius:9px;overflow:hidden}
#cgc-home .tx-action{min-height:89px;padding:22px 27px;display:flex;align-items:center;justify-content:space-between;font-size:19px;font-weight:700;border-right:1px solid #eee4e6;line-height:1.3}
#cgc-home .tx-action:last-child{border:0}
#cgc-home .tx-action-primary{background:#751827;color:#fff}
#cgc-home .tx-action-primary:hover{background:#94283d}
#cgc-home .tx-action:not(.tx-action-primary):hover{background:#f8f2f0;color:#751827}
#cgc-home .tx-action-call{justify-content:center;gap:19px}
#cgc-home .tx-action-call>span:last-child{display:grid;gap:4px}
#cgc-home .tx-action-call small{font-size:11px;font-weight:400;color:#8a727a}
#cgc-home .tx-action-call strong{font-size:19px;color:#751827}
#cgc-home .tx-action-icon{font-size:29px;color:#751827}
#cgc-home .tx-about{background:#fff;padding-top:94px}
#cgc-home .tx-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
#cgc-home .tx-collage{position:relative;min-height:505px;padding-right:65px;padding-bottom:70px}
#cgc-home .tx-collage-main{height:365px;overflow:hidden;border-radius:8px;box-shadow:0 18px 35px #24171e15}
#cgc-home .tx-collage-main img,#cgc-home .tx-collage-small img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
#cgc-home .tx-collage-main:hover img,#cgc-home .tx-collage-small:hover img{transform:scale(1.045)}
#cgc-home .tx-collage-small{position:absolute;right:0;bottom:71px;width:57%;height:225px;border:7px solid white;border-radius:8px;overflow:hidden;box-shadow:0 18px 30px #24171e18}
#cgc-home .tx-since{position:absolute;top:55%;left:15%;background:#751827;color:#fff;padding:19px 25px;z-index:2;border-radius:5px;display:grid;gap:3px;text-align:center}
#cgc-home .tx-since strong{font-size:34px;line-height:1.15;letter-spacing:-1px}
#cgc-home .tx-since>span{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}
#cgc-home .tx-collage-caption{position:absolute;bottom:0;left:0;display:grid;gap:2px;border-left:3px solid #b75465;padding-left:14px}
#cgc-home .tx-collage-caption strong{font-size:15px;font-weight:700}
#cgc-home .tx-collage-caption>span{font-size:11px;color:var(--cg-muted)}
#cgc-home .tx-about-copy h2{margin-bottom:24px}
#cgc-home .tx-about-copy>p{color:var(--cg-muted);font-size:14px;line-height:1.9}
#cgc-home .tx-values{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin:25px 0 30px}
#cgc-home .tx-values>li{display:flex;align-items:flex-start;gap:11px}
#cgc-home .tx-round-icon{width:32px;height:32px;border-radius:50%;border:1px solid #d4a6af;display:inline-grid;place-items:center;color:#751827;font-size:14px;flex-shrink:0}
#cgc-home .tx-values strong{font-size:14px;display:block;line-height:1.5}
#cgc-home .tx-values p{font-size:11px;color:var(--cg-muted);line-height:1.7;margin-top:5px;margin-bottom:0}
/* Project cards: one consistent photo ratio and one consistent text grid. */
#cgc-home .tx-projects{background:var(--cg-paper);border-block:1px solid #ebe4dc;position:relative}
#cgc-home .cg4-section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:37px}
#cgc-home .cg4-section-head>p{max-width:330px;color:var(--cg-muted);font-size:14px;line-height:1.9;margin:0 0 4px}
#cgc-home .tx-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
#cgc-home .cgc-project-card{background:#fff;border:1px solid #e4dcd8;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s}
#cgc-home .cgc-project-card:hover{transform:translateY(-7px);box-shadow:0 22px 35px #3c202414}
#cgc-home .cgc-project-media{display:block;position:relative;overflow:hidden;aspect-ratio:1.43;background:#dbcfca}
#cgc-home .cgc-project-media>img{width:100%;height:100%;object-fit:cover;transition:transform .65s}
#cgc-home .cgc-project-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#27141ea8,transparent 65%);transition:background .3s}
#cgc-home .cgc-project-card:hover .cgc-project-media img{transform:scale(1.055)}
#cgc-home .cgc-project-action{position:absolute;z-index:1;bottom:17px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:11px}
#cgc-home .cgc-project-action .cgc-arrow{width:32px;height:32px;border-radius:50%;background:white;color:#751827;font-size:19px}
#cgc-home .cgc-project-copy{padding:25px;display:flex;flex-direction:column;flex:1}
#cgc-home .cgc-project-copy .cgc-overline{font-size:10px;letter-spacing:.5px;color:#8f6975;margin-bottom:10px;line-height:1.5;display:block}
#cgc-home .cgc-project-copy h3{font-size:24px;line-height:1.25;min-height:30px;margin-bottom:17px}
#cgc-home .cgc-project-copy h3 a:hover{color:#8e253b}
#cgc-home .cgc-project-copy p{font-size:13px;color:var(--cg-muted);line-height:1.85;margin:0}
#cgc-home .tx-centred-action{text-align:center;margin-top:32px}
/* Expertise: large photography occupies 43% of every panel. */
#cgc-home .tx-services{background:#751827;color:white;position:relative;padding-top:82px;padding-bottom:104px;isolation:isolate}
#cgc-home .tx-reference-pattern{display:none}
#cgc-home .tx-services::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 0% 0%,#a3465540,transparent 60%),linear-gradient(135deg,transparent 72%,#ffffff04 72%,#ffffff04 74%,transparent 74%);z-index:-1;pointer-events:none}
#cgc-home .tx-heading-row{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:36px}
#cgc-home .tx-heading-row .tx-heading-aside{max-width:330px;flex-basis:330px;font-size:14px;color:inherit;line-height:1.9}
#cgc-home .tx-heading-aside p{font-size:14px;color:#f1d8de;margin-bottom:19px}
#cgc-home .tx-service-cta{display:inline-flex;align-items:center;gap:24px;padding:11px 18px;background:#fff;color:#751827;border-radius:5px;font-size:12px;font-weight:700}
#cgc-home .tx-service-cta:hover{background:#fae9e6;transform:translateY(-2px)}
#cgc-home .tx-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;grid-auto-rows:1fr}
#cgc-home .cgc-expertise-card{display:grid;grid-template-columns:43% minmax(0,1fr);min-height:300px;background:#fff;color:var(--cg-ink);overflow:hidden;border:1px solid #ffffff3d;border-radius:9px;cursor:default;transition:transform .35s,box-shadow .35s}
#cgc-home .cgc-expertise-card:hover{transform:translateY(-5px);box-shadow:0 20px 30px #2d091b29}
#cgc-home .cgc-expertise-photo{height:100%;min-height:300px;overflow:hidden;background:#e6d9ce;position:relative}
#cgc-home .cgc-expertise-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .7s}
#cgc-home .cgc-expertise-card:hover img{transform:scale(1.045)}
#cgc-home .cgc-expertise-body{padding:26px 26px 28px;display:grid;grid-template-rows:minmax(30px,auto) minmax(54px,auto) 1fr;gap:12px;align-content:start}
#cgc-home .cgc-expertise-body h3{font-size:23px;color:#751827;line-height:1.16}
#cgc-home .cgc-service-tagline{font-size:13px;font-weight:700;line-height:1.55;border-bottom:1px solid #eadde1;padding-bottom:12px;margin:0}
#cgc-home .cgc-service-description{font-size:13px;line-height:1.85;color:var(--cg-muted);margin:0}
#cgc-home .tx-support{display:flex;align-items:center;gap:19px;margin-top:29px;padding:21px 25px;border:1px solid #ffffff35;background:#ffffff06;border-radius:7px}
#cgc-home .tx-support>span{font-size:28px;color:#edbac4;line-height:1}
#cgc-home .tx-support strong{font-size:13px;font-weight:400;line-height:1.85}
#cgc-home .tx-fact-panel{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.2fr 1.2fr;max-width:1100px;margin-top:-37px;background:white;border:1px solid #e9dee1;border-radius:9px;box-shadow:0 17px 35px #3d1f2610;padding:24px 16px}
#cgc-home .tx-fact-panel>div{display:grid;text-align:center;justify-items:center;align-content:center;gap:6px;padding:2px 22px}
#cgc-home .tx-fact-panel>div+div{border-left:1px solid #eee4e7}
#cgc-home .tx-fact-icon{display:none}
#cgc-home .tx-fact-panel strong{font-size:18px;color:#751827;line-height:1.4;letter-spacing:-.3px}
#cgc-home .tx-fact-panel>div>span:last-child{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#9b7f8b}
/* CEO: quiet editorial panel, no caption or standalone chips. */
#cgc-home .tx-ceo{background:#f2eceb;margin-top:-52px;padding-top:134px;padding-bottom:80px}
#cgc-home .tx-ceo-banner{background:none;padding:0 0 31px;text-align:left}
#cgc-home .tx-ceo-banner .tx-centred-heading{max-width:none;margin:0 auto}
#cgc-home .tx-ceo-banner h2 br{display:none}
#cgc-home .tx-ceo-panel{display:grid;grid-template-columns:.8fr 1.6fr;gap:52px;background:#fff;border:1px solid #e4d7dc;padding:33px;border-radius:10px;align-items:center;box-shadow:0 18px 35px #3c20240a}
#cgc-home .tx-ceo-photo{border-radius:6px;overflow:hidden;margin:0;height:395px}
#cgc-home .tx-ceo-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
#cgc-home .tx-quote{display:block;font-size:70px;line-height:.8;color:#b46374;margin:8px 0 18px;font-family:Georgia,serif}
#cgc-home .tx-ceo-copy>p{font-size:14px;line-height:1.95;color:#6c6268;margin:0 0 22px}
#cgc-home .tx-ceo-signature{display:grid;gap:4px;padding-top:18px;border-top:1px solid #ebdfe4}
#cgc-home .tx-ceo-signature strong{font-size:23px;color:#751827;line-height:1.35}
#cgc-home .tx-ceo-signature>span{font-size:10px;color:#93818b;line-height:1.6;letter-spacing:.2px}
/* Relationships are highlighted by a deliberate large heading and quiet logo grid. */
#cgc-home .tx-clients{background:white;padding:77px 0 81px}
#cgc-home .tx-centred-heading{max-width:800px;margin:0 auto 35px;text-align:center}
#cgc-home .cg-relationship-title{font-size:clamp(35px,4.2vw,59px);color:#751827;letter-spacing:-2px}
#cgc-home .cg-relationship-title>span{color:#c97c89}
#cgc-home .tx-client-panel{border-block:1px solid #e9dce1;padding:16px 0}
#cgc-home .tx-client-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0}
#cgc-home .cgc-client-logo{height:103px;display:flex;align-items:center;justify-content:center;padding:18px 21px;transition:background .3s}
#cgc-home .cgc-client-logo:hover{background:#faf5f5}
#cgc-home .cgc-client-logo img{max-width:100%;max-height:63px;width:auto;height:auto;object-fit:contain}
/* Group companies: actual structure, not anonymous feature tiles. */
#cgc-home .tx-group{background:#eadce0;border-block:1px solid #dfcbd2}
#cgc-home .tx-group .tx-heading-row{align-items:start}
#cgc-home .tx-group .tx-heading-aside{font-size:13px;color:#7a5869}
#cgc-home .tx-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
#cgc-home .tx-group-card{display:flex;flex-direction:column;align-items:start;border:1px solid #d9c2cc;border-top:4px solid #751827;padding:30px 28px;background:#fdfafb;border-radius:7px;min-height:235px;transition:transform .35s,background .35s}
#cgc-home .tx-group-card:hover{transform:translateY(-5px);background:#fff}
#cgc-home .tx-group-card .tx-label{font-size:9px;letter-spacing:1.6px;color:#9b6b7f;margin-bottom:24px}
#cgc-home .tx-group-card h3{font-size:26px;line-height:1.19;letter-spacing:-.8px;margin-bottom:25px;min-height:62px}
#cgc-home .tx-group-card a:hover{color:#751827}
#cgc-home .tx-group-card>p{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin:0;margin-top:auto;color:#916375;border-top:1px solid #e8d9df;padding-top:13px;width:100%}
/* FAQ and contact follow a lighter, accessible rhythm. */
#cgc-home .tx-faq{background:#fff}
#cgc-home .tx-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}
#cgc-home .tx-faq-grid>div>h2{margin-bottom:23px}
#cgc-home .tx-faq-grid>div>p{font-size:14px;color:var(--cg-muted);margin-bottom:25px}
#cgc-home .cgc-faq-item{border:1px solid #e6dbe1;border-radius:6px;overflow:hidden;margin-bottom:12px;background:white}
#cgc-home .cgc-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:17px;cursor:pointer;padding:20px;background:#f5eff1;color:#5b283c;font-size:14px;font-weight:700;list-style:none;line-height:1.5}
#cgc-home .cgc-faq-item summary::-webkit-details-marker{display:none}
#cgc-home .cgc-faq-item summary>span{font-size:21px;line-height:1;font-weight:400;transition:transform .2s}
#cgc-home .cgc-faq-item[open] summary{background:#751827;color:#fff}
#cgc-home .cgc-faq-item[open] summary>span{transform:rotate(45deg)}
#cgc-home .cgc-faq-answer{padding:21px}
#cgc-home .cgc-faq-answer p{font-size:13px;color:var(--cg-muted);line-height:1.85;margin:0}
#cgc-home .tx-contact{background:#f4f0e9;border-top:1px solid #e8e1d9}
#cgc-home .tx-contact .tx-centred-heading{margin-bottom:35px}
#cgc-home .tx-contact-panel{display:grid;grid-template-columns:1fr 1.12fr;gap:40px;background:#fff;border:1px solid #e4dad4;padding:34px;border-radius:9px;align-items:stretch}
#cgc-home .tx-contact-copy{padding:8px 6px}
#cgc-home .tx-office-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:27px}
#cgc-home .tx-office-grid h3{font-size:20px;line-height:1.2;margin-bottom:12px}
#cgc-home .tx-office-grid p{font-size:12px;color:var(--cg-muted);line-height:1.85;margin:0}
#cgc-home .tx-hours{border-top:1px solid #e8dde0;padding-top:20px;margin-bottom:20px}
#cgc-home .tx-hours .tx-label{font-size:9px;letter-spacing:1.5px;margin-bottom:7px}
#cgc-home .tx-hours p{font-size:11px;color:#93828b;margin:0}
#cgc-home .tx-contact-number{display:block;font-size:29px;line-height:1.3;letter-spacing:-1px;color:#751827;font-weight:700;margin-bottom:8px}
#cgc-home .tx-contact-email{font-size:14px;color:#846c78}
#cgc-home .tx-contact-email:hover{color:#751827}
#cgc-home .tx-map{min-height:320px;border-radius:5px;overflow:hidden;background:#eae6df}
#cgc-home .tx-map iframe{height:100%;min-height:320px;width:100%;border:0;display:block}
#cgc-home .tx-final-cta{padding:48px 0;background:#751827;color:#fff;position:relative;overflow:hidden}
#cgc-home .tx-final-cta::after{content:"";position:absolute;right:-100px;top:-190px;width:500px;height:500px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 35px #ffffff04,0 0 0 70px #ffffff03;pointer-events:none}
#cgc-home .tx-final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;z-index:1}
#cgc-home .tx-final-cta .tx-label{font-size:9px;margin-bottom:11px}
#cgc-home .tx-final-cta h2{font-size:35px;line-height:1.17;letter-spacing:-1px}
#cgc-home .tx-final-cta .cgc-button{background:#fff;color:#751827;flex-shrink:0}
#cgc-home .tx-footer{background:#fff}
#cgc-home .tx-footer-main{padding:43px 0 34px;text-align:center}
#cgc-home .tx-footer .tx-brand{justify-content:center;margin:0 auto 15px}
#cgc-home .tx-footer-main>p{font-size:12px;line-height:1.8;color:#8e7b85;margin-bottom:26px}
#cgc-home .tx-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 28px;margin-bottom:25px}
#cgc-home .tx-footer-links li{display:block}
#cgc-home .tx-footer-links a{font-size:12px;color:#6e5564}
#cgc-home .tx-footer-links a:hover{color:#751827}
#cgc-home .tx-social-links{display:flex;justify-content:center;gap:10px}
#cgc-home .tx-social-links a{width:32px;height:32px;display:grid;place-items:center;border:1px solid #e0cbd4;border-radius:50%;color:#751827;font-size:12px;font-weight:700}
#cgc-home .tx-social-links a:hover{background:#751827;color:white;border-color:#751827}
#cgc-home .tx-copyright{background:#281c24;color:#e1cdd7}
#cgc-home .tx-copyright>.tx-container{min-height:53px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px}
#cgc-home .tx-copyright a{color:#f0dce6}
/* Progressive enhancement: page content remains visible without JavaScript. */
#cgc-home .cg4-reveal{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
#cgc-home .cg4-reveal.cg4-pending{opacity:0;transform:translateY(24px)}
#cgc-home .cg4-ripple{position:absolute;border-radius:50%;background:#c5809644;pointer-events:none;transform:scale(0);animation:cg4Ripple .6s ease-out forwards}
@keyframes cg4Ripple{to{transform:scale(2.2);opacity:0}}
#cgc-home .cg4-progress{position:fixed;top:var(--cg-admin);left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:#b95d71;z-index:1200;pointer-events:none}
@media(min-width:1500px){#cgc-home .cg4-hero-grid{min-height:700px}#cgc-home .cg4-circle-stage{max-width:560px}}
@media(max-width:1200px){#cgc-home .tx-container,#cgc-home .cg4-container{width:calc(100% - 64px)}#cgc-home .tx-nav-inner{gap:20px}#cgc-home .tx-nav-list{gap:17px}#cgc-home .tx-nav-list a{font-size:12px}#cgc-home .tx-header-cta{padding:12px 16px;font-size:11px}#cgc-home .cg4-wordmark strong{font-size:22px}#cgc-home .cg4-wordmark>span{font-size:12px}#cgc-home .cg4-brand-symbol{width:42px;height:58px}#cgc-home .cg4-hero-grid{gap:35px;min-height:625px}#cgc-home .cg4-hero h1{font-size:58px}#cgc-home .cg4-hero-actions{gap:20px}#cgc-home .cg4-text-link{font-size:11px;gap:10px}#cgc-home .tx-about-grid{gap:50px}#cgc-home .tx-collage{padding-right:45px}#cgc-home .tx-collage-main{height:335px}#cgc-home .tx-collage-small{height:210px}#cgc-home .tx-collage{min-height:475px}#cgc-home .cgc-expertise-card{grid-template-columns:40% minmax(0,1fr);min-height:320px}#cgc-home .cgc-expertise-photo{min-height:320px}#cgc-home .cgc-expertise-body{padding:23px;grid-template-rows:minmax(54px,auto) minmax(54px,auto) 1fr}#cgc-home .cgc-expertise-body h3{font-size:21px}#cgc-home .tx-ceo-panel{gap:35px}#cgc-home .tx-group-card{padding:27px 23px}#cgc-home .tx-group-card h3{font-size:24px}#cgc-home .tx-faq-grid{gap:55px}}
@media(max-width:1080px){#cgc-home .tx-nav-inner{min-height:84px;flex-wrap:wrap;padding:10px 0;gap:18px}#cgc-home .cgc-navigation{width:100%;order:5;margin:0}#cgc-home .tx-nav-list{justify-content:center;flex-wrap:wrap}#cgc-home .tx-header-cta{margin-left:auto}#cgc-home.cg4-ready .cgc-menu-toggle{display:flex}#cgc-home.cg4-ready .cgc-navigation{display:none}#cgc-home.cg4-ready .cgc-navigation.cgc-nav-open{display:block;max-height:65vh;overflow:auto;padding-top:8px;border-top:1px solid #e8dde2}#cgc-home .cgc-nav-open .tx-nav-list{flex-direction:column;align-items:stretch;gap:0}#cgc-home .cgc-nav-open .tx-nav-list a{font-size:14px;padding:13px 4px;border-bottom:1px solid #f0e6eb}#cgc-home .cgc-nav-open .tx-nav-list a::after{display:none}#cgc-home .cg4-hero-grid{gap:27px;padding-top:48px;padding-bottom:76px;min-height:590px}#cgc-home .cg4-hero h1{font-size:53px;letter-spacing:-2px}#cgc-home .cg4-hero-statement{font-size:24px}#cgc-home .cg4-hero-intro{font-size:14px}#cgc-home .cg4-hero-actions{flex-wrap:wrap;gap:11px 22px}#cgc-home .cg4-photo-frame{inset:32px;border-width:6px}#cgc-home .cg4-orbit-one{inset:12px}#cgc-home .cg4-approval{gap:7px;padding:8px 10px;font-size:10px}#cgc-home .cg4-approval-place{padding-left:7px}#cgc-home .tx-action{font-size:17px;padding-inline:20px}#cgc-home .tx-action-call strong{font-size:17px}#cgc-home .cgc-project-copy{padding:22px}#cgc-home .cgc-project-copy h3{font-size:22px;min-height:55px}#cgc-home .tx-client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#cgc-home .tx-contact-panel{padding:27px;gap:27px}}
@media(max-width:850px){#cgc-home .tx-section{padding:69px 0}#cgc-home h2{font-size:38px;letter-spacing:-1.3px}#cgc-home .cg4-hero-grid{grid-template-columns:1.05fr 1fr;min-height:590px;gap:20px}#cgc-home .cg4-hero h1{font-size:46px;letter-spacing:-1.8px}#cgc-home .cg4-approval{flex-wrap:wrap;row-gap:2px;max-width:250px;margin-bottom:23px}#cgc-home .cg4-approval-place{border:0;padding:0}#cgc-home .cg4-hero-intro{font-size:13px;line-height:1.85}#cgc-home .cg4-hero .cgc-button{font-size:12px;padding:13px 18px;gap:20px}#cgc-home .cg4-hero-actions{gap:10px 20px}#cgc-home .cg4-image-note{gap:8px}#cgc-home .cg4-image-note p{font-size:8px}#cgc-home .cg4-image-note>span{width:17px}#cgc-home .tx-action-rail{margin-top:-25px}#cgc-home .tx-action{padding:20px 14px;min-height:82px;font-size:16px}#cgc-home .tx-action-call{gap:12px}#cgc-home .tx-action-call strong{font-size:14px}#cgc-home .tx-action-icon{font-size:25px}#cgc-home .tx-about-grid{grid-template-columns:1fr;gap:36px}#cgc-home .tx-collage{width:100%;max-width:540px;min-height:480px;margin:auto;padding-right:65px}#cgc-home .tx-collage-main{height:350px}#cgc-home .tx-collage-small{height:225px}#cgc-home .tx-since{left:20%;top:54%}#cgc-home .tx-about-copy{max-width:680px}#cgc-home .tx-project-grid{gap:16px}#cgc-home .cgc-project-copy{padding:20px 17px}#cgc-home .cgc-project-copy h3{font-size:21px;min-height:53px}#cgc-home .cgc-project-copy p{font-size:12px}#cgc-home .cg4-section-head{gap:30px}#cgc-home .cg4-section-head>p{max-width:270px;font-size:13px}#cgc-home .tx-heading-row{gap:30px}#cgc-home .tx-heading-row .tx-heading-aside{max-width:260px;flex-basis:260px}#cgc-home .tx-service-grid{grid-template-columns:1fr;gap:21px;grid-auto-rows:auto}#cgc-home .cgc-expertise-card{grid-template-columns:43% minmax(0,1fr);min-height:270px}#cgc-home .cgc-expertise-photo{min-height:270px}#cgc-home .cgc-expertise-body{padding:27px;grid-template-rows:minmax(48px,auto) minmax(45px,auto) 1fr;gap:10px}#cgc-home .cgc-expertise-body h3{font-size:25px}#cgc-home .cgc-service-description{font-size:13px}#cgc-home .tx-services{padding-bottom:88px}#cgc-home .tx-fact-panel{padding:19px 8px}#cgc-home .tx-fact-panel>div{padding-inline:10px}#cgc-home .tx-fact-panel strong{font-size:16px}#cgc-home .tx-fact-panel>div>span:last-child{font-size:8px;letter-spacing:1px}#cgc-home .tx-ceo{padding-top:120px;padding-bottom:65px}#cgc-home .tx-ceo-panel{grid-template-columns:1fr;gap:27px;padding:30px}#cgc-home .tx-ceo-photo{width:330px;max-width:100%;height:365px;margin:auto}#cgc-home .tx-ceo-copy>p{font-size:14px}#cgc-home .tx-group-grid{grid-template-columns:1fr;gap:20px}#cgc-home .tx-group-card{min-height:0;padding:27px}#cgc-home .tx-group-card h3{min-height:0;font-size:28px;margin-bottom:20px}#cgc-home .tx-group-card h3 br{display:none}#cgc-home .tx-group-card .tx-label{margin-bottom:14px}#cgc-home .tx-faq-grid{grid-template-columns:1fr;gap:35px}#cgc-home .tx-contact-panel{grid-template-columns:1fr}#cgc-home .tx-map,#cgc-home .tx-map iframe{min-height:310px}#cgc-home .tx-final-cta-inner{align-items:start;flex-direction:column;gap:25px}#cgc-home .tx-final-cta h2{font-size:33px}}
@media(max-width:600px){#cgc-home .tx-container,#cgc-home .cg4-container{width:calc(100% - 36px)}#cgc-home .tx-section{padding:55px 0}#cgc-home h2{font-size:33px;letter-spacing:-1.1px}#cgc-home .tx-label{font-size:9px;letter-spacing:1.9px;margin-bottom:13px}#cgc-home .tx-nav-inner{min-height:78px;padding:8px 0;gap:14px}#cgc-home .cg4-brand-symbol{width:39px;height:53px}#cgc-home .tx-brand{gap:9px}#cgc-home .cg4-wordmark strong{font-size:22px}#cgc-home .cg4-wordmark>span{font-size:11px;letter-spacing:4.6px}#cgc-home .tx-header-cta{display:none}#cgc-home .cgc-menu-toggle{margin-left:auto;width:39px;height:39px}#cgc-home .cg4-hero::after{top:62%;right:-45%;width:190%;height:70%;opacity:.09}#cgc-home .cg4-hero-grid{grid-template-columns:1fr;gap:28px;padding-top:35px;padding-bottom:61px;min-height:0}#cgc-home .cg4-hero h1{font-size:clamp(40px,11.6vw,62px);letter-spacing:-1.9px;line-height:1.05;margin-bottom:17px}#cgc-home .cg4-approval{font-size:10px;max-width:none;margin-bottom:23px;gap:8px;padding:8px 10px}#cgc-home .cg4-approval-place{padding-left:8px;border-left:1px solid #ffffff32;font-size:9px}#cgc-home .cg4-hero-statement{font-size:24px;margin-bottom:17px}#cgc-home .cg4-hero-intro{font-size:14px;max-width:390px;line-height:1.85;margin-bottom:23px}#cgc-home .cg4-hero-actions{gap:14px 21px;flex-wrap:wrap}#cgc-home .cg4-hero .cgc-button{font-size:12px;min-height:47px;padding:12px 18px;gap:22px}#cgc-home .cg4-text-link{font-size:11px}#cgc-home .cg4-circle-stage{max-width:330px;width:93%;margin-top:2px}#cgc-home .cg4-photo-frame{inset:28px;border-width:5px}#cgc-home .cg4-orbit-one{inset:10px}#cgc-home .cg4-image-note{margin-top:5px;color:#dfc9d1}#cgc-home .cg4-image-note p{font-size:8px;letter-spacing:0}#cgc-home .tx-action-rail{grid-template-columns:1fr;max-width:none;margin-top:-24px;border-radius:7px}#cgc-home .tx-action{font-size:18px;min-height:64px;padding:16px 22px;border-right:0;border-bottom:1px solid #eee4e8}#cgc-home .tx-action-call{justify-content:flex-start;gap:17px}#cgc-home .tx-action-call>span:last-child{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1}#cgc-home .tx-action-call strong{font-size:17px}#cgc-home .tx-action-call small{font-size:12px}#cgc-home .tx-collage{min-height:390px;padding-right:35px;padding-bottom:62px}#cgc-home .tx-collage-main{height:285px;border-radius:6px}#cgc-home .tx-collage-small{height:178px;bottom:57px;border-width:5px;border-radius:6px}#cgc-home .tx-since{left:14%;top:53%;padding:15px 20px}#cgc-home .tx-since strong{font-size:28px}#cgc-home .tx-since>span{font-size:8px}#cgc-home .tx-collage-caption strong{font-size:13px}#cgc-home .tx-collage-caption>span{font-size:10px}#cgc-home .tx-about-grid{gap:28px}#cgc-home .tx-about-copy>p{font-size:13px}#cgc-home .tx-values{grid-template-columns:1fr;gap:17px;margin:23px 0 27px}#cgc-home .tx-values p{font-size:11px}#cgc-home .cg4-section-head{display:block;margin-bottom:28px}#cgc-home .cg4-section-head>p{margin:19px 0 0;max-width:100%;font-size:13px}#cgc-home .tx-project-grid{grid-template-columns:1fr;gap:22px}#cgc-home .cgc-project-media{aspect-ratio:1.42}#cgc-home .cgc-project-copy{padding:24px}#cgc-home .cgc-project-copy h3{min-height:0;font-size:25px;margin-bottom:14px}#cgc-home .cgc-project-copy p{font-size:13px}#cgc-home .tx-centred-action{margin-top:27px}#cgc-home .tx-heading-row{display:block;margin-bottom:29px}#cgc-home .tx-heading-row .tx-heading-aside{max-width:100%;margin-top:20px}#cgc-home .tx-heading-aside p{font-size:13px}#cgc-home .cgc-expertise-card{display:flex;flex-direction:column;min-height:0;border-radius:8px}#cgc-home .cgc-expertise-photo{height:230px;min-height:0;flex-shrink:0}#cgc-home .cgc-expertise-body{padding:25px;display:block}#cgc-home .cgc-expertise-body h3{font-size:25px;line-height:1.16;margin-bottom:13px}#cgc-home .cgc-service-tagline{font-size:14px;padding-bottom:15px;margin-bottom:15px}#cgc-home .cgc-service-description{font-size:13px;line-height:1.9}#cgc-home .tx-support{padding:19px;gap:13px;margin-top:22px}#cgc-home .tx-support strong{font-size:12px;line-height:1.9}#cgc-home .tx-services{padding-bottom:78px}#cgc-home .tx-fact-panel{grid-template-columns:1fr;padding:5px 23px;margin-top:-27px;gap:0}#cgc-home .tx-fact-panel>div{padding:16px 0;gap:5px}#cgc-home .tx-fact-panel>div+div{border-left:0;border-top:1px solid #eadfe4}#cgc-home .tx-fact-panel strong{font-size:19px}#cgc-home .tx-fact-panel>div>span:last-child{font-size:8px;letter-spacing:1.4px}#cgc-home .tx-ceo{padding-top:101px;padding-bottom:55px}#cgc-home .tx-ceo-banner{padding-bottom:25px}#cgc-home .tx-ceo-banner h2{font-size:33px}#cgc-home .tx-ceo-panel{padding:21px;border-radius:8px;gap:25px}#cgc-home .tx-ceo-photo{height:340px;width:100%}#cgc-home .tx-ceo-copy>p{font-size:13px;line-height:1.95}#cgc-home .tx-quote{font-size:64px;margin-bottom:12px}#cgc-home .tx-ceo-signature strong{font-size:22px}#cgc-home .cg-relationship-title{font-size:34px;letter-spacing:-1.25px}#cgc-home .tx-client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#cgc-home .cgc-client-logo{height:80px;padding:13px}#cgc-home .tx-client-panel{padding:9px 0}#cgc-home .tx-group-card{padding:25px}#cgc-home .tx-group-card h3{font-size:26px}#cgc-home .tx-group-card h3 br{display:block}#cgc-home .tx-group .tx-heading-aside{font-size:12px}#cgc-home .cgc-faq-item summary{font-size:13px;padding:18px 17px}#cgc-home .cgc-faq-answer{padding:18px}#cgc-home .cgc-faq-answer p{font-size:12px}#cgc-home .tx-contact-panel{padding:21px;gap:25px}#cgc-home .tx-contact-copy{padding:0}#cgc-home .tx-office-grid{gap:17px;margin-bottom:22px}#cgc-home .tx-office-grid h3{font-size:18px}#cgc-home .tx-office-grid p{font-size:11px}#cgc-home .tx-contact-number{font-size:28px}#cgc-home .tx-hours p{font-size:10px}#cgc-home .tx-map,#cgc-home .tx-map iframe{min-height:265px}#cgc-home .tx-final-cta{padding:37px 0}#cgc-home .tx-final-cta h2{font-size:29px}#cgc-home .tx-footer-main{padding:34px 0 28px}#cgc-home .tx-footer-links{gap:13px 20px;margin-bottom:22px}#cgc-home .tx-footer-links a{font-size:11px}#cgc-home .tx-copyright>.tx-container{min-height:76px;flex-direction:column;justify-content:center;gap:7px;text-align:center;padding:13px 0;font-size:9px}}
@media(prefers-reduced-motion:reduce){#cgc-home *,#cgc-home *::before,#cgc-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}#cgc-home .cg4-title-line>span,#cgc-home .cg4-hero-statement,#cgc-home .cg4-hero-intro,#cgc-home .cg4-hero-actions,#cgc-home .cg4-circle-stage{opacity:1!important;transform:none!important}#cgc-home .cg4-circle-art{transform:none!important}#cgc-home .cg4-reveal.cg4-pending{opacity:1!important;transform:none!important}#cgc-home .cg4-orbit-one{transform:rotate(35deg)}#cgc-home .cg4-orbit-two{transform:rotate(-45deg)}#cgc-home .cg4-connection-pulse{display:none}}


/* Updated complete Cougar Group logo image. */
#cgc-home .cg4-brand-image{display:block;width:184px;height:76px;object-fit:contain;flex-shrink:0}
@media(max-width:1080px){#cgc-home .cg4-brand-image{width:174px;height:64px}}
@media(max-width:600px){#cgc-home .cg4-brand-image{width:158px;height:60px}}

/* Home v5: requested corrections, retaining the existing v4 layout. */
#cgc-home .cg4-header:focus-within{transform:translateY(0)}
#cgc-home:not(.cg5-keyboard) .cg4-header.cg4-header-hidden:focus-within{transform:translateY(calc(-100% - var(--cg-admin) - 2px))}
#cgc-home.cg5-keyboard .cg4-header:focus-within{transform:translateY(0)}
#cgc-home .cg4-brand-image{display:block;width:184px;height:76px;object-fit:contain;flex-shrink:0}
#cgc-home .tx-label.cg5-section-label{display:inline-flex;align-items:center;padding:9px 14px;border-left:4px solid #751827;background:#f2e4e9;color:#751827;border-radius:0 5px 5px 0;font-size:13px;font-weight:700;line-height:1.4;letter-spacing:1.5px;margin-bottom:20px}
#cgc-home .tx-services .tx-label.cg5-section-label{background:#fff4f3;color:#751827;border-left-color:#d895a4}
#cgc-home .cg-relationship-title.cg5-section-heading{display:inline-block;max-width:100%;padding:15px 23px;border-left:5px solid #751827;border-radius:0 7px 7px 0;background:#f3e7ec;color:#751827;font-size:clamp(30px,3.7vw,51px);line-height:1.18;letter-spacing:-1.4px}
#cgc-home .tx-ceo-panel{display:block;max-width:1100px;padding:44px 52px}
#cgc-home .tx-ceo-copy{max-width:960px;margin-inline:auto}
#cgc-home .tx-ceo-copy>p{font-size:16px;line-height:1.95;margin-bottom:27px}
#cgc-home .tx-ceo-signature{padding-top:23px}
#cgc-home .tx-quote{font-size:74px;margin:4px 0 19px}
#cgc-home .cg5-company-section h2{margin-bottom:31px;font-size:clamp(33px,3.6vw,48px);letter-spacing:-1.4px}
#cgc-home .cg5-company-list{max-width:1050px;border-top:1px solid #c9aab7}
#cgc-home .cg5-company-list li{display:flex;gap:17px;align-items:baseline;padding:22px 0;border-bottom:1px solid #cfb6c1;color:#452d39;font-size:clamp(15px,1.65vw,22px);font-weight:700;line-height:1.6;letter-spacing:.1px}
#cgc-home .cg5-company-bullet{color:#751827;font-size:24px;line-height:1;flex-shrink:0}
#cgc-home .cg5-company-list a:hover{color:#751827;text-decoration:underline;text-underline-offset:5px}
#cgc-home .cg5-company-location{color:#795465;font-weight:400}
/* Reuse the live call control when present; these rules also style the native fallback. */
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call{box-sizing:border-box!important;position:fixed!important;display:grid!important;place-items:center!important;inset:auto 22px max(22px,env(safe-area-inset-bottom,0px)) auto!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background-color:#00bb00!important;background-image:none!important;color:#fff!important;opacity:1!important;visibility:visible!important;text-decoration:none!important;box-shadow:0 5px 19px #16371928!important;z-index:2147483000!important;transform:none!important;animation:none!important;overflow:visible!important;transition:background-color .2s,box-shadow .2s!important}
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call> :not(.cg5-call-glyph){display:none!important}
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;border:1px solid #00bb0070!important;border-radius:50%!important;background:none!important;pointer-events:none!important;animation:cg5CallPulse 4.8s ease-out infinite!important;transform:none;box-shadow:none!important}
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call::after{display:none!important;content:none!important}
body.cg5-call-active .cg5-call-glyph{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;pointer-events:none;animation:cg5CallFloat 3.6s ease-in-out infinite}
body.cg5-call-active .cg5-call-glyph svg{display:block;width:25px;height:25px;fill:#fff;overflow:visible}
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call:hover{background-color:#009f00!important;box-shadow:0 7px 22px #16371938!important}
body.cg5-call-active .cg5-call:hover .cg5-call-glyph,body.cg5-call-active .cg5-call:focus-visible .cg5-call-glyph{animation-play-state:paused}
body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call:focus-visible{outline:3px solid #751827!important;outline-offset:5px!important}
@keyframes cg5CallFloat{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@keyframes cg5CallPulse{0%,12%{transform:scale(1);opacity:0}20%{opacity:.7}65%,100%{transform:scale(1.55);opacity:0}}
@media(max-width:1080px){#cgc-home .cg4-brand-image{width:174px;height:64px}}
@media(max-width:600px){#cgc-home .cg4-brand-image{width:158px;height:60px}#cgc-home .tx-label.cg5-section-label{font-size:12px;padding:8px 12px;letter-spacing:1.2px;margin-bottom:17px}#cgc-home .cg-relationship-title.cg5-section-heading{font-size:29px;padding:12px 15px;letter-spacing:-1px}#cgc-home .tx-ceo-panel{padding:25px 23px}#cgc-home .tx-ceo-copy>p{font-size:14px;line-height:1.95}#cgc-home .tx-quote{font-size:62px;margin-bottom:14px}#cgc-home .cg5-company-section h2{font-size:33px;margin-bottom:23px}#cgc-home .cg5-company-list li{font-size:15px;line-height:1.85;gap:12px;padding:19px 0}#cgc-home .cg5-company-location{white-space:nowrap}body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call{right:17px!important;bottom:max(17px,env(safe-area-inset-bottom,0px))!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}}
@media(prefers-reduced-motion:reduce){body.cg5-call-active .cg5-call-glyph{animation:none!important;transform:none!important}body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call::before{animation:none!important;display:none!important}body.cg5-call-active :is(#callnowbutton,#cg5-call-button).cg5-call{transition:none!important}}


/* About Us: shared Home header, logo, footer, motion and typography retained. */
#cgc-home .ca-section{padding:90px 0}
#cgc-home .ca-hero{padding:55px 0 64px;background:linear-gradient(115deg,#261d24,#661d30);color:#fff;position:relative;overflow:hidden}
#cgc-home .ca-hero::before{content:"";position:absolute;width:600px;height:600px;right:-180px;top:-260px;border:1px solid #ffffff18;border-radius:50%;box-shadow:0 0 0 65px #ffffff04,0 0 0 130px #ffffff03;pointer-events:none}
#cgc-home .ca-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
#cgc-home .ca-kicker{display:block;font-size:12px;letter-spacing:2px;font-weight:800;margin-bottom:22px}
#cgc-home .ca-hero h1{font-size:clamp(42px,4.7vw,66px);line-height:1.13;letter-spacing:-2px;color:white;margin:0 0 25px}
#cgc-home .ca-hero h1 span{color:#ddb6c0}
#cgc-home .ca-hero-copy>p{max-width:440px;color:#f2e6e9;font-size:17px;line-height:1.8;margin-bottom:28px}
#cgc-home .ca-approval{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-left:3px solid #d3a5b3;padding:10px 15px;background:#ffffff0c;width:fit-content;font-size:12px}
#cgc-home .ca-approval>span:first-child{background:#fff;color:#751827;border-radius:50%;padding:0 5px}
#cgc-home .ca-hero-image{position:relative;margin:0;border:7px solid #ffffff18;border-radius:105px 12px 12px 12px;overflow:hidden;aspect-ratio:1.22}
#cgc-home .ca-hero-image img{display:block;width:100%;height:100%;object-fit:cover}
#cgc-home .ca-hero-image::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#241820c9);pointer-events:none}
#cgc-home .ca-hero-image figcaption{position:absolute;bottom:24px;left:26px;font-size:16px;line-height:1.7;color:#fff;z-index:1}
#cgc-home .ca-overview{background:#fff}
#cgc-home .ca-overview-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:65px;align-items:stretch}
#cgc-home .ca-overview-image{margin:0;position:relative;min-height:600px;border-radius:12px;overflow:hidden}
#cgc-home .ca-overview-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:44% center}
#cgc-home .ca-overview-image figcaption{position:absolute;left:24px;right:24px;bottom:24px;background:#fff;padding:24px;border-left:4px solid #751827;color:#452d39;font-size:23px;line-height:1.45;box-shadow:0 12px 30px #21141b13}
#cgc-home .ca-overview-copy h2,#cgc-home .ca-heading h2,#cgc-home .ca-sector-heading h2{font-size:clamp(33px,3.3vw,46px);line-height:1.2;letter-spacing:-1.4px;margin:0 0 25px;color:#2b2228}
#cgc-home .ca-overview-copy p{font-size:15px;line-height:1.95;color:#625761;margin:0 0 19px}
#cgc-home .ca-overview-copy p:last-child{margin-bottom:0}
#cgc-home .ca-leadership{background:#f4eeeb;border-top:1px solid #ece0de;border-bottom:1px solid #ece0de}
#cgc-home .ca-heading{margin-bottom:32px}
#cgc-home .ca-ceo-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:22px;align-items:stretch}
#cgc-home .ca-ceo-message{background:#fff;border:1px solid #e6d9dc;border-radius:12px;padding:36px 40px;box-shadow:0 15px 40px #48213206}
#cgc-home .ca-quote{display:block;color:#a45870;font-size:74px;height:60px;line-height:1;font-family:Georgia,serif}
#cgc-home .ca-ceo-message>p{font-size:16px;line-height:1.95;color:#625761;margin:10px 0 27px}
#cgc-home .ca-signature{border-top:1px solid #eee4e6;padding-top:20px;display:grid;gap:6px}
#cgc-home .ca-signature strong{color:#751827;font-size:23px}
#cgc-home .ca-signature span{font-size:12px;color:#80717b}
#cgc-home .ca-ceo-priorities{display:grid;grid-template-rows:1fr 1fr;gap:22px}
#cgc-home .ca-priority{background:#5a1c2c;color:#fff;padding:28px 30px;border-radius:12px;position:relative;overflow:hidden;border:1px solid #5a1c2c}
#cgc-home .ca-priority h3{font-size:24px;line-height:1.3;margin:12px 0;color:inherit}
#cgc-home .ca-priority p{font-size:14px;line-height:1.8;color:inherit;opacity:.85;margin:0}
#cgc-home .ca-priority-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid #ffffff50;border-radius:50%;font-size:21px}
#cgc-home .ca-priority-light{background:#e7d8df;color:#492c3a;border-color:#d9c2ce}
#cgc-home .ca-priority-light .ca-priority-mark{border-color:#b991a3}
#cgc-home .ca-experience{background:#fbf9f7}
#cgc-home .ca-sector-heading{display:flex;gap:35px;justify-content:space-between;align-items:end;margin-bottom:32px}
#cgc-home .ca-sector-heading h2{margin-bottom:0}
#cgc-home .ca-sector-heading>p{max-width:300px;font-size:15px;line-height:1.9;color:#766570;margin:0}
#cgc-home .ca-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#cgc-home .ca-sector{border:1px solid #e7dce0;border-top:3px solid #a6677e;border-radius:10px;background:#fff;padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s}
#cgc-home .ca-sector:hover{transform:translateY(-5px);border-color:#b88e9f;box-shadow:0 15px 28px #4821320c}
#cgc-home .ca-icon{display:grid;place-items:center;width:52px;height:52px;background:#f4e9ed;color:#751827;border-radius:12px;margin-bottom:22px}
#cgc-home .ca-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
#cgc-home .ca-sector h3{font-size:24px;color:#35262f;margin:0 0 15px;line-height:1.3}
#cgc-home .ca-sector p{font-size:14px;line-height:1.9;color:#756771;margin:0}
#cgc-home .ca-services-link{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:35px;padding:25px 0 0;border-top:1px solid #e6dce0;color:#644956;font-size:15px}
#cgc-home .ca-cta{padding:65px 0;background:#2c2028;color:#fff}
#cgc-home .ca-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}
#cgc-home .ca-cta h2{font-size:clamp(33px,3.5vw,48px);color:#fff;line-height:1.2;margin:0 0 18px;letter-spacing:-1px}
#cgc-home .ca-cta p{color:#d5c5ce;font-size:15px;line-height:1.8;margin:0}
#cgc-home .ca-cta .cgc-button{background:#f7eee6;color:#681b2e;flex-shrink:0}
@media(max-width:1000px){#cgc-home .ca-overview-grid{gap:35px;grid-template-columns:.85fr 1.15fr}#cgc-home .ca-hero-grid{gap:30px}#cgc-home .ca-ceo-grid{grid-template-columns:1.5fr 1fr}#cgc-home .ca-ceo-message{padding:30px}#cgc-home .ca-sector{padding:25px}}
@media(max-width:760px){#cgc-home .ca-section{padding:60px 0}#cgc-home .ca-hero-grid,#cgc-home .ca-overview-grid,#cgc-home .ca-ceo-grid{grid-template-columns:1fr}#cgc-home .ca-hero{padding:40px 0}#cgc-home .ca-hero-image{aspect-ratio:1.45;border-radius:60px 10px 10px}#cgc-home .ca-overview-image{min-height:370px}#cgc-home .ca-ceo-priorities{grid-template-columns:1fr 1fr;grid-template-rows:auto}#cgc-home .ca-priority{padding:24px}#cgc-home .ca-priority h3{font-size:21px}#cgc-home .ca-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .ca-sector-heading{align-items:start;flex-direction:column;gap:15px}#cgc-home .ca-sector-heading>p{max-width:none}#cgc-home .ca-cta-inner{align-items:start;flex-direction:column}}
@media(max-width:480px){#cgc-home .ca-hero h1{font-size:43px;letter-spacing:-1.5px}#cgc-home .ca-hero-copy>p{font-size:15px}#cgc-home .ca-approval{font-size:11px;gap:8px}#cgc-home .ca-overview-image{min-height:350px}#cgc-home .ca-overview-copy p{font-size:14px}#cgc-home .ca-ceo-message{padding:27px 24px}#cgc-home .ca-ceo-message>p{font-size:14px}#cgc-home .ca-ceo-priorities,#cgc-home .ca-sector-grid{grid-template-columns:1fr}#cgc-home .ca-sector{padding:27px}#cgc-home .ca-services-link{align-items:start;flex-direction:column}#cgc-home .ca-signature span{line-height:1.6}}
@media(prefers-reduced-motion:reduce){#cgc-home .ca-sector{transition:none}#cgc-home .ca-sector:hover{transform:none}}

#cgc-home .cs-heading{display:flex;justify-content:space-between;gap:38px;align-items:end;margin-bottom:35px}
#cgc-home .cs-heading h2,#cgc-home .cs-delivery h2{font-size:clamp(32px,3.4vw,46px);line-height:1.2;letter-spacing:-1.3px;margin:0;color:#30232b;max-width:650px}
#cgc-home .cs-heading>p{max-width:320px;line-height:1.9;color:#776873;font-size:15px;margin:0}
#cgc-home .cs-core{background:#fff}
#cgc-home .cs-core-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
#cgc-home .cs-support{background:#f6f1ee;border-top:1px solid #eee2e1}
#cgc-home .cs-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#cgc-home .cs-card{min-width:0;background:#fff;border:1px solid #e5d9df;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .25s,border-color .25s}
#cgc-home .cs-card:hover{box-shadow:0 15px 35px #42212f13;border-color:#b1869a}
#cgc-home .cs-card-media{overflow:hidden;aspect-ratio:1.65;background:#e8dee2}
#cgc-home .cs-featured .cs-card-media{aspect-ratio:1.9}
#cgc-home .cs-card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
#cgc-home .cs-card:hover img{transform:scale(1.045)}
#cgc-home .cs-card-content{display:flex;flex-direction:column;flex:1;padding:26px}
#cgc-home .cs-card h3{font-size:23px;line-height:1.35;letter-spacing:-.4px;color:#392833;margin:0 0 13px}
#cgc-home .cs-featured h3{font-size:27px}
#cgc-home .cs-card-content>p{font-size:14px;line-height:1.8;color:#786672;margin:0 0 23px}
#cgc-home .cs-card-content>a{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:auto;padding-top:17px;border-top:1px solid #eee3e7;color:#751827;font-weight:700;font-size:13px}
#cgc-home .cs-card-content>a span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f6edf0;font-size:18px;transition:transform .25s}
#cgc-home .cs-card-content>a:hover span{transform:rotate(45deg)}
#cgc-home .cs-values{background:#351f2b;color:#fff}
#cgc-home .cs-values .cs-heading h2{color:#fff}
#cgc-home .cs-values .cs-heading>p{color:#d4bdca}
#cgc-home .cs-values .tx-label.cg5-section-label{color:#f5dce6;background:#ffffff0a;border-left-color:#c492aa}
#cgc-home .cs-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
#cgc-home .cs-value{padding:29px 25px;background:#ffffff06;border:1px solid #ffffff20;border-radius:10px}
#cgc-home .cs-value-mark{display:block;font-size:30px;color:#d7a9bd;margin-bottom:24px;line-height:1}
#cgc-home .cs-value h3{font-size:23px;margin:0 0 14px;color:#fff;line-height:1.3}
#cgc-home .cs-value p{font-size:14px;color:#cfbbc6;line-height:1.85;margin:0}
#cgc-home .cs-delivery{background:#fff}
#cgc-home .cs-delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:stretch}
#cgc-home .cs-delivery-photo{margin:0;min-height:650px;position:relative;overflow:hidden;border-radius:80px 12px 12px}
#cgc-home .cs-delivery-photo img{position:absolute;width:100%;height:100%;object-fit:cover}
#cgc-home .cs-delivery-photo figcaption{position:absolute;bottom:25px;left:25px;right:25px;padding:21px;background:#fff;color:#5f243b;font-size:19px;border-left:4px solid #751827}
#cgc-home .cs-proof{padding:24px 0;border-bottom:1px solid #e8dce1}
#cgc-home .cs-proof h3{font-size:22px;color:#502e40;margin:0 0 10px}
#cgc-home .cs-proof p{font-size:14px;line-height:1.9;color:#7c6a75;margin:0}
#cgc-home .cs-contact{background:#eee4e9;border-top:1px solid #e6d7df}
#cgc-home .cs-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}
#cgc-home .cs-contact-grid article{border-top:1px solid #baa0ad;padding-top:22px}
#cgc-home .cs-contact-grid h3{font-size:20px;color:#452736;margin:0 0 17px}
#cgc-home .cs-contact-grid p,#cgc-home .cs-contact-grid a{font-size:14px;line-height:1.95;color:#785c6c}
#cgc-home .cs-contact-grid p{margin:0}
#cgc-home .cs-contact-grid a{display:block;overflow-wrap:anywhere}
#cgc-home .cs-contact-grid a:hover{color:#751827;text-decoration:underline;text-underline-offset:4px}
#cgc-home .cs-cta-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:50px;align-items:center}
#cgc-home .cs-cta .cgc-button{margin-top:26px}
#cgc-home .cs-cta figure{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:1.6}
#cgc-home .cs-cta figure{background:#fff;padding:32px}
#cgc-home .cs-cta img{width:100%;height:100%;object-fit:contain;display:block}
@media(max-width:1000px){#cgc-home .cs-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .cs-value-grid,#cgc-home .cs-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .cs-delivery-grid{gap:35px}#cgc-home .cs-delivery-photo{min-height:750px}}
@media(max-width:760px){#cgc-home .cs-heading{flex-direction:column;align-items:start;gap:18px}#cgc-home .cs-heading>p{max-width:none}#cgc-home .cs-delivery-grid{grid-template-columns:1fr}#cgc-home .cs-delivery-photo{min-height:400px}#cgc-home .cs-core-grid{gap:18px}#cgc-home .cs-card-content{padding:22px}#cgc-home .cs-featured h3{font-size:24px}#cgc-home .cs-cta-grid{grid-template-columns:1fr;gap:35px}}
@media(max-width:540px){#cgc-home .cs-core-grid,#cgc-home .cs-service-grid,#cgc-home .cs-value-grid,#cgc-home .cs-contact-grid{grid-template-columns:1fr}#cgc-home .cs-card-media,#cgc-home .cs-featured .cs-card-media{aspect-ratio:1.6}#cgc-home .cs-delivery-photo{min-height:340px;border-top-left-radius:60px}#cgc-home .cs-delivery-photo figcaption{font-size:16px;left:18px;right:18px;bottom:18px}#cgc-home .cs-cta h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){#cgc-home .cs-card,#cgc-home .cs-card-media img,#cgc-home .cs-card-content>a span{transition:none}#cgc-home .cs-card:hover img,#cgc-home .cs-card-content>a:hover span{transform:none}}

/* Services v2: consistent alignment and restrained motion across every service. */
#cgc-home .cs-hero-label{display:inline-flex;align-items:center;gap:12px;background:#ffffff10;border:1px solid #ddb6c05c;border-left:4px solid #ddb6c0;padding:11px 17px;font-size:13px;letter-spacing:2px;font-weight:800;color:#fff;margin-bottom:28px}
#cgc-home .cs-hero-label::before{content:"";width:7px;height:7px;border-radius:50%;background:#e6c1cc;box-shadow:0 0 0 5px #e6c1cc12}
#cgc-home .ca-hero h1{font-size:clamp(40px,4.5vw,63px);line-height:1.14;letter-spacing:-1.8px;margin-bottom:26px}
#cgc-home .ca-hero-grid{gap:48px;grid-template-columns:1fr 1fr}
#cgc-home .ca-hero-image{box-shadow:0 20px 45px #180b1325;animation:csHeroFloat 9s ease-in-out infinite}
#cgc-home .cs-heading{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:end;gap:50px;border-bottom:1px solid #d9c7d0;padding-bottom:27px;margin-bottom:36px}
#cgc-home .cs-heading>p{max-width:none;padding-bottom:3px;line-height:1.85}
#cgc-home .cs-heading h2{max-width:720px;line-height:1.17}
#cgc-home .cs-values .cs-heading{border-bottom-color:#ffffff25}
#cgc-home .cs-core-grid,#cgc-home .cs-service-grid{gap:28px}
#cgc-home .cs-card{border:0;border-radius:0;background:none;box-shadow:none!important;overflow:visible;position:relative;display:flex;transition:none}
#cgc-home .cs-card-surface{position:relative;display:flex;flex:1;flex-direction:column;min-width:0;background:#fff;border:1px solid #e5d9df;border-radius:13px;overflow:hidden;box-shadow:0 7px 21px #4b24320a;translate:0 0;transition:translate .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s,border-color .35s;animation:csCardFloat 7.6s ease-in-out infinite;animation-play-state:paused;will-change:auto}
#cgc-home .cs-card.cs-motion-visible .cs-card-surface{animation-play-state:running}
#cgc-home.cs-motion-paused .ca-hero-image,#cgc-home.cs-motion-paused .cs-card-surface{animation-play-state:paused!important}
#cgc-home .cs-card:nth-child(3n+2) .cs-card-surface{animation-delay:-2.5s}
#cgc-home .cs-card:nth-child(3n) .cs-card-surface{animation-delay:-5s}
#cgc-home .cs-card-surface::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#751827,#bc8199);transform:scaleX(0);transform-origin:left;transition:transform .45s;pointer-events:none}
#cgc-home .cs-card:hover .cs-card-surface,#cgc-home .cs-card:focus-within .cs-card-surface{translate:0 -7px;border-color:#b27c92;box-shadow:0 21px 38px #48213220;animation-play-state:paused}
#cgc-home .cs-card:hover .cs-card-surface::after,#cgc-home .cs-card:focus-within .cs-card-surface::after{transform:scaleX(1)}
#cgc-home .cs-card-media{position:relative;isolation:isolate}
#cgc-home .cs-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,#ffffff35 48%,transparent 70%);translate:-130% 0;transition:translate .8s ease;pointer-events:none}
#cgc-home .cs-card:hover .cs-card-media::after{translate:130% 0}
#cgc-home .cs-card-media img{transition:transform .85s cubic-bezier(.2,.65,.3,1),filter .5s}
#cgc-home .cs-card:hover img,#cgc-home .cs-card:focus-within img{transform:scale(1.065);filter:saturate(1.06)}
#cgc-home .cs-card-content{padding:27px 28px}
#cgc-home .cs-card-content>a{padding-top:19px}
#cgc-home .cs-card-content>a span{width:35px;height:35px;transition:transform .35s,background-color .35s,color .35s}
#cgc-home .cs-card:hover .cs-card-content>a span,#cgc-home .cs-card:focus-within .cs-card-content>a span{transform:rotate(45deg);background:#751827;color:white}
#cgc-home .cs-card-content>a:focus-visible{outline:2px solid #751827;outline-offset:5px;border-radius:3px}
#cgc-home .cs-values .cs-value{transition:transform .35s,background .35s,border-color .35s}
#cgc-home .cs-values .cs-value:hover{transform:translateY(-5px);background:#ffffff0d;border-color:#c492aa}
@keyframes csCardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes csHeroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(max-width:1000px){#cgc-home .cs-heading{grid-template-columns:1.5fr 1fr;gap:30px}#cgc-home .ca-hero-grid{gap:30px}#cgc-home .cs-card-content{padding:24px}}
@media(max-width:760px){#cgc-home .ca-hero-grid{grid-template-columns:1fr}#cgc-home .cs-heading{grid-template-columns:1fr;gap:17px;padding-bottom:23px}#cgc-home .cs-heading>p{max-width:540px}#cgc-home .cs-core-grid,#cgc-home .cs-service-grid{gap:24px}#cgc-home .cs-hero-label{font-size:12px;padding:10px 14px;margin-bottom:23px}}
@media(hover:none){#cgc-home .cs-card:hover .cs-card-surface{translate:0 0}#cgc-home .cs-card:hover img{transform:none;filter:none}#cgc-home .cs-card-media::after{display:none}#cgc-home .cs-card:hover .cs-card-surface{animation-play-state:running}}
@media(prefers-reduced-motion:reduce){#cgc-home .ca-hero-image,#cgc-home .cs-card-surface{animation:none!important;transform:none!important;translate:0 0!important}#cgc-home .cs-card-surface,#cgc-home .cs-card-media img,#cgc-home .cs-card-content>a span,#cgc-home .cs-card-surface::after,#cgc-home .cs-values .cs-value{transition:none!important}#cgc-home .cs-card-media::after{display:none}#cgc-home .cs-card:hover img,#cgc-home .cs-card:focus-within img,#cgc-home .cs-values .cs-value:hover{transform:none;filter:none}}

/* Preserve the original Projects grid measurements, adding the shared brand treatment. */
#cgc-home .cp-container{width:100%;max-width:1200px;padding:0 24px;margin:0 auto}
#cgc-home .cp-portfolio{background:#fff}
#cgc-home .cp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#cgc-home .cp-card{min-width:0}
#cgc-home .cp-card .cs-card-surface{border-radius:15px}
#cgc-home .cp-card .cs-card-media{aspect-ratio:auto;height:215px;flex-shrink:0}
#cgc-home .cp-card .cs-card-media img{height:215px;object-fit:cover}
#cgc-home .cp-card .cs-card-content{padding:24px;min-height:156px}
#cgc-home .cp-card h3{font-size:18px;line-height:1.25;margin:0 0 18px;letter-spacing:0;font-weight:700;color:#35252f;overflow-wrap:anywhere}
#cgc-home .cp-card .cs-card-content>p{font-size:15px;line-height:1.65;margin:0;color:#7b6472}
#cgc-home .cp-card .cs-card-surface::after{height:3px}
#cgc-home .cp-card .cs-card-media::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#54223725,transparent 55%);opacity:0;transition:opacity .45s;pointer-events:none}
#cgc-home .cp-card:hover .cs-card-media::before{opacity:1}
#cgc-home .cp-card:hover h3{color:#751827}
#cgc-home .cp-start{padding:65px 0;background:#f5eeee;border-top:1px solid #eadde1}
#cgc-home .cp-start-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
#cgc-home .cp-start-inner>div{max-width:760px}
#cgc-home .cp-start h2{font-size:clamp(30px,3vw,43px);line-height:1.2;letter-spacing:-1px;margin:0 0 18px;color:#382530}
#cgc-home .cp-start p{font-size:15px;line-height:1.9;color:#79616f;margin:0}
#cgc-home .cp-start .cgc-button{flex-shrink:0}
#cgc-home .cp-cta-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:26px}
#cgc-home .cp-cta-actions .cgc-button{margin-top:0}
#cgc-home .cp-quote-link{color:#f2dce4;font-size:14px;border-bottom:1px solid #a67c91;padding:10px 0}
#cgc-home .cp-quote-link:hover{color:white}
@media(max-width:980px){#cgc-home .cp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){#cgc-home .cp-grid{grid-template-columns:1fr}#cgc-home .cp-container{padding:0 16px}#cgc-home .cp-start-inner{flex-direction:column;align-items:start;gap:25px}#cgc-home .cp-start{padding:50px 0}#cgc-home .cp-card .cs-card-content{padding:24px;min-height:156px}}
@media(prefers-reduced-motion:reduce){#cgc-home .cp-card .cs-card-media::before{transition:none}}

#cgc-home .cc-container{max-width:1200px;width:100%;padding:0 24px;margin:0 auto}
#cgc-home .cc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#cgc-home .cc-hero-note{display:flex;gap:12px;align-items:center;color:#ecd0dd;border-left:3px solid #d7a3b8;padding:10px 15px;font-size:13px;background:#ffffff08;width:fit-content}
#cgc-home .cc-hero-note span{display:grid;place-items:center;background:#f1dee6;color:#751827;width:22px;height:22px;border-radius:50%}
#cgc-home .ca-hero-image img{object-position:center}
#cgc-home .cc-welcome{background:#fff}
#cgc-home .cc-welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
#cgc-home .cc-welcome h2,#cgc-home .cc-cv h2{font-size:clamp(32px,3.4vw,46px);line-height:1.2;letter-spacing:-1.3px;color:#36232e;margin:0 0 22px}
#cgc-home .cc-welcome p{font-size:16px;color:#796371;line-height:1.9;margin:0 0 17px}
#cgc-home .cc-text-link{display:inline-flex;gap:20px;font-size:14px;font-weight:700;color:#751827;border-bottom:1px solid #c9acb9;padding:5px 0}
#cgc-home .cc-values{background:#f6f1ee;border-top:1px solid #eadce3}
#cgc-home .cc-roles{background:#fff;scroll-margin-top:100px}
#cgc-home .cc-tile-content{padding:26px;display:flex;flex-direction:column;flex:1;min-width:0}
#cgc-home .cc-value .cs-card-surface{min-height:190px}
#cgc-home .cc-value h3,#cgc-home .cc-job h3{font-size:20px;line-height:1.3;color:#432b38;margin:0 0 17px;letter-spacing:0}
#cgc-home .cc-value p,#cgc-home .cc-job-description{font-size:15.5px;line-height:1.75;color:#796371;margin:0}
#cgc-home .cc-job .cs-card-surface{min-height:450px}
#cgc-home .cc-job-location{font-size:12px!important;line-height:1.6!important;color:#751827!important;margin:0 0 8px!important;font-weight:700}
#cgc-home .cc-job-meta{font-size:12px!important;color:#8b7582!important;line-height:1.6!important;margin:0 0 15px!important}
#cgc-home .cc-job-description{margin-bottom:23px}
#cgc-home .cc-apply-area{margin-top:auto;padding-top:20px;border-top:1px solid #ecdee5}
#cgc-home .cc-apply{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:#751827;font-weight:800;line-height:1.65}
#cgc-home .cc-apply>span{font-size:21px;transition:transform .3s}
#cgc-home .cc-apply:hover>span{transform:translate(2px,-2px)}
#cgc-home .cc-apply:focus-visible,#cgc-home .cc-email-options a:focus-visible,#cgc-home .cc-webmail-links a:focus-visible,#cgc-home .cc-copy-email:focus-visible{outline:2px solid #751827;outline-offset:4px}
#cgc-home .cc-email-options{margin-top:14px;font-size:12px;color:#826b79}
#cgc-home .cc-email-options summary{cursor:pointer;padding:4px 0;width:fit-content;color:#785666}
#cgc-home .cc-email-options[open] summary{margin-bottom:10px}
#cgc-home .cc-email-options>div{display:grid;gap:9px;background:#f9f3f6;border:1px solid #e8d5df;padding:13px;border-radius:7px}
#cgc-home .cc-email-options a{color:#751827;font-weight:700}
#cgc-home .cc-email-options span{overflow-wrap:anywhere}
#cgc-home .cc-cv{background:#eee0e7;border-top:1px solid #dfc9d4;border-bottom:1px solid #dfc9d4}
#cgc-home .cc-cv-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;align-items:stretch;background:#fff;border:1px solid #caa6b8;border-radius:16px;overflow:hidden;box-shadow:0 18px 40px #5e2b4310}
#cgc-home .cc-cv figure{position:relative;margin:0;min-height:550px;background:#f2e8ed}
#cgc-home .cc-cv figure img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}
#cgc-home .cc-cv-box{padding:42px;border-left:5px solid #751827}
#cgc-home .cc-cv-box>p{font-size:15px;line-height:1.85;color:#826a77;margin:0 0 20px}
#cgc-home .cc-cv-box .cc-cv-lead{font-size:18px;font-weight:700;color:#5d2a40;line-height:1.6}
#cgc-home .cc-email-address{display:inline-block;font-size:clamp(19px,2.3vw,29px);font-weight:800;color:#751827;border-bottom:1px solid #c7a3b4;margin-bottom:23px;overflow-wrap:anywhere;line-height:1.5}
#cgc-home .cc-webmail-links{display:flex;gap:12px 20px;flex-wrap:wrap;margin:23px 0 16px;align-items:center}
#cgc-home .cc-webmail-links a,#cgc-home .cc-copy-email{font-size:13px;color:#751827;font-weight:700;line-height:1.8;text-decoration:underline;text-underline-offset:4px}
#cgc-home .cc-copy-email{background:none;border:none;padding:0;font-family:inherit;cursor:pointer}
#cgc-home .cc-cv-box .cc-email-help{font-size:12px;margin:0 0 10px}
#cgc-home .cc-cv-box .cc-copy-status{font-size:13px;color:#751827;margin:0;min-height:24px;overflow-wrap:anywhere}
#cgc-home .cc-career-contact{font-size:12px;color:#80616f;display:inline-block;margin-top:13px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:980px){#cgc-home .cc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .cc-welcome-grid{gap:35px}#cgc-home .cc-cv-box{padding:30px}}
@media(max-width:760px){#cgc-home .cc-welcome-grid,#cgc-home .cc-cv-grid{grid-template-columns:1fr}#cgc-home .cc-cv figure{min-height:360px}#cgc-home .cc-cv figure img{object-position:center 30%}#cgc-home .cc-cv-box{border-left:0;border-top:5px solid #751827;padding:30px}#cgc-home .cc-welcome p{font-size:15px}}
@media(max-width:640px){#cgc-home .cc-grid{grid-template-columns:1fr}#cgc-home .cc-container{padding:0 16px}#cgc-home .cc-job .cs-card-surface{min-height:0}#cgc-home .cc-cv-box{padding:28px 23px}#cgc-home .cc-cv figure{min-height:310px}#cgc-home .cc-value .cs-card-surface{min-height:190px}}
@media(prefers-reduced-motion:reduce){#cgc-home .cc-apply>span{transition:none}#cgc-home .cc-apply:hover>span{transform:none}}

#cgc-home .ct-hero .ca-hero-grid{grid-template-columns:1.15fr .85fr;gap:70px}
#cgc-home .ct-hero h1{font-size:clamp(40px,4.2vw,60px)}
#cgc-home .ct-hero-button{background:#f8eee7;color:#681b2e;margin-top:7px}
#cgc-home .ct-hero-panel{border:1px solid #be9caa;background:linear-gradient(145deg,#f9f4ef,#eadce1);color:#502837;padding:35px 40px;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 20px 45px #190a1430;animation:csHeroFloat 10s ease-in-out infinite}
#cgc-home .ct-hero-panel::after{content:"";width:280px;height:280px;border:1px solid #b98fa141;position:absolute;right:-125px;top:60px;border-radius:50%;box-shadow:0 0 0 45px #bd9bab09;pointer-events:none}
#cgc-home.cs-motion-paused .ct-hero-panel{animation-play-state:paused}
#cgc-home .ct-hero-panel-top{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #cdb2bf;padding-bottom:26px;margin-bottom:27px;position:relative;z-index:1}
#cgc-home .ct-hero-panel-top>span{font-size:12px;font-weight:800;letter-spacing:1.5px}
#cgc-home .ct-hero-panel svg{width:36px;height:43px;fill:none;stroke:#8a4b63;stroke-width:1.5}
#cgc-home .ct-panel-label{font-size:10px;font-weight:800;letter-spacing:2px;color:#916477;display:block;margin-bottom:14px}
#cgc-home .ct-hero-panel h2{font-size:clamp(28px,3vw,42px);line-height:1.25;letter-spacing:-1px;color:#552a3b;margin:0 0 30px;position:relative;z-index:1}
#cgc-home .ct-panel-footer{border-top:1px solid #cdb2bf;padding-top:21px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#875b70}
#cgc-home .ct-library{background:#fbf9f7;scroll-margin-top:100px}
#cgc-home .ct-archive-note{display:flex;gap:14px;align-items:start;border-left:3px solid #a57b8e;background:#f0e6eb;padding:17px 20px;margin-bottom:28px;color:#735764;border-radius:0 7px 7px 0}
#cgc-home .ct-archive-icon{display:grid;place-items:center;flex-shrink:0;width:21px;height:21px;border:1px solid #a48293;border-radius:50%;font:700 13px Georgia,serif;margin-top:3px}
#cgc-home .ct-archive-note p{font-size:13px;line-height:1.85;margin:0}
#cgc-home .ct-archive-note a{color:#751827;text-decoration:underline;text-underline-offset:3px;font-weight:700}
#cgc-home .ct-filter-bar{display:flex;gap:10px;flex-wrap:wrap}
#cgc-home .ct-filter-bar button{font:700 13px inherit;font-family:inherit;font-size:13px;font-weight:700;background:#fff;color:#755367;border:1px solid #d7c1cd;border-radius:7px;padding:12px 18px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
#cgc-home .ct-filter-bar button[aria-pressed="true"]{background:#751827;border-color:#751827;color:#fff}
#cgc-home .ct-filter-bar button:hover{border-color:#751827}
#cgc-home .ct-filter-bar button:focus-visible,#cgc-home .ct-document-open:focus-visible,#cgc-home .ct-dialog button:focus-visible,#cgc-home .ct-dialog a:focus-visible{outline:2px solid #751827;outline-offset:4px}
#cgc-home .ct-results{font-size:12px;color:#8d7381;margin:19px 0 26px;min-height:18px}
#cgc-home .ct-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
#cgc-home .ct-card[hidden]{display:none!important}
#cgc-home .ct-card .cs-card-surface{border-radius:11px;animation-duration:10s}
#cgc-home .ct-document-open{display:block;text-decoration:none}
#cgc-home .ct-document-preview{height:345px;padding:24px;background:linear-gradient(140deg,#eee8e4,#f7f4f1);position:relative;border-bottom:1px solid #e4d7de;overflow:hidden;display:grid;place-items:center}
#cgc-home .ct-document-preview img{width:100%;height:100%;object-fit:contain;display:block;filter:none;transition:transform .6s;max-height:297px}
#cgc-home .ct-card:hover img,#cgc-home .ct-card:focus-within img{transform:scale(1.025);filter:none}
#cgc-home .ct-expand{position:absolute;right:14px;bottom:14px;background:#fff;color:#751827;border:1px solid #ddc8d2;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:22px;box-shadow:0 3px 10px #5e294014}
#cgc-home .ct-document-text{padding:23px 24px;flex:1;display:flex;flex-direction:column}
#cgc-home .ct-document-category{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#a0768a;font-weight:800;min-height:28px;line-height:1.4}
#cgc-home .ct-document-text h3{font-size:22px;line-height:1.3;letter-spacing:-.4px;margin:0 0 10px;color:#4e2b3b;min-height:58px}
#cgc-home .ct-document-text>p{font-size:13px;color:#7f6875;line-height:1.7;margin:0 0 14px;min-height:44px}
#cgc-home .ct-document-text .ct-document-date{font-size:11px;color:#967c89;margin-top:auto;min-height:38px}
#cgc-home .ct-view-link{border-top:1px solid #e9dce3;padding-top:16px;display:flex;justify-content:space-between;gap:15px;font-size:13px;color:#751827;font-weight:800;line-height:1.5}
#cgc-home .ct-view-link span{transition:transform .3s}
#cgc-home .ct-view-link:hover span{transform:translate(2px,-2px)}
#cgc-home .ct-request{padding:65px 0;background:#eee2e8;border-top:1px solid #dfcbd5}
#cgc-home .ct-request-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}
#cgc-home .ct-request h2{font-size:clamp(30px,3.3vw,45px);line-height:1.2;letter-spacing:-1.1px;color:#432b38;margin:0 0 19px}
#cgc-home .ct-request p{font-size:15px;line-height:1.8;color:#7f6573;max-width:650px;margin:0}
#cgc-home .ct-request .cgc-button{flex-shrink:0}
#cgc-home .ct-dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(1060px,calc(100vw - 36px));max-width:none;height:min(920px,calc(100dvh - 36px));max-height:calc(100dvh - 36px);border:1px solid #c2a5b4;border-radius:11px;background:#f5f0ed;color:#4b2d3c;box-shadow:0 30px 100px #1d0e1955;overflow:hidden}
#cgc-home .ct-dialog::backdrop{background:#1d121de0;backdrop-filter:blur(3px)}
#cgc-home .ct-dialog-shell{display:flex;flex-direction:column;height:100%}
#cgc-home .ct-viewer-head{background:#fff;padding:19px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #e1d4da}
#cgc-home .ct-viewer-head span{font-size:10px;letter-spacing:1.4px;color:#987283}
#cgc-home .ct-viewer-head h2{font-size:20px;color:#4d2839;line-height:1.4;letter-spacing:0;margin:6px 0 0}
#cgc-home .ct-viewer-close{background:#f6edf1;color:#751827;border:1px solid #dfcbd5;border-radius:50%;height:36px;width:36px;font-size:26px;cursor:pointer;flex-shrink:0}
#cgc-home .ct-viewer-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 24px;background:#eee4e9}
#cgc-home .ct-viewer-toolbar button,#cgc-home .ct-viewer-toolbar a{font-family:inherit;font-size:12px;font-weight:700;color:#751827;background:#fff;border:1px solid #d4b9c7;border-radius:5px;padding:8px 13px;cursor:pointer;line-height:1.4}
#cgc-home .ct-viewer-toolbar button:disabled{opacity:.4;cursor:default}
#cgc-home .ct-viewer-original{margin-left:auto}
#cgc-home .ct-viewer-status{font-size:12px;margin:0;padding:6px 24px;color:#8b6a7b;min-height:27px;line-height:1.5}
#cgc-home .ct-viewer-image-wrap{flex:1;min-height:0;overflow:auto;padding:12px 20px 22px;text-align:center}
#cgc-home .ct-viewer-image{height:100%;width:100%;object-fit:contain;max-width:none;display:block}
#cgc-home .ct-viewer-image-wrap.ct-zoomed .ct-viewer-image{height:auto;width:max(100%,1000px);object-fit:initial}
#cgc-home .ct-viewer-open{scrollbar-gutter:stable}
@media(max-width:1000px){#cgc-home .ct-hero .ca-hero-grid{gap:35px}#cgc-home .ct-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .ct-hero-panel{padding:30px}}
@media(max-width:760px){#cgc-home .ct-hero .ca-hero-grid{grid-template-columns:1fr}#cgc-home .ct-hero-panel{max-width:520px;width:100%;padding:28px}#cgc-home .ct-hero-panel h2{font-size:35px}#cgc-home .ct-request-inner{align-items:start;flex-direction:column;gap:27px}}
@media(max-width:540px){#cgc-home .ct-document-grid{grid-template-columns:1fr}#cgc-home .ct-filter-bar{gap:8px}#cgc-home .ct-filter-bar button{padding:11px 13px;font-size:12px}#cgc-home .ct-document-preview{height:345px}#cgc-home .ct-archive-note{padding:16px;gap:10px}#cgc-home .ct-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}#cgc-home .ct-viewer-head{padding:15px}#cgc-home .ct-viewer-head h2{font-size:17px}#cgc-home .ct-viewer-toolbar{padding:10px 12px;gap:7px}#cgc-home .ct-viewer-toolbar button,#cgc-home .ct-viewer-toolbar a{font-size:11px;padding:8px 9px}#cgc-home .ct-viewer-image-wrap{padding:8px 10px 14px}#cgc-home .ct-viewer-status{padding:6px 12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){#cgc-home .ct-hero-panel{animation:none}#cgc-home .ct-document-preview img,#cgc-home .ct-filter-bar button,#cgc-home .ct-view-link span{transition:none}#cgc-home .ct-card:hover img,#cgc-home .ct-card:focus-within img,#cgc-home .ct-view-link:hover span{transform:none}}

#cgc-home .cn-hero .ca-hero-grid{grid-template-columns:1.15fr .85fr;gap:70px}
#cgc-home .cn-hero-button{background:#f7eee6;color:#681b2e;margin-top:9px}
#cgc-home .cn-hero-panel{background:linear-gradient(140deg,#f8f2ed,#e9d9e2);border:1px solid #be9bab;color:#552a3e;padding:35px;border-radius:12px;box-shadow:0 20px 45px #1c0a1420}
#cgc-home .cn-panel-brand{font-size:12px;letter-spacing:1.6px;font-weight:800;display:block;padding-bottom:25px;border-bottom:1px solid #c8aab9;margin-bottom:27px}
#cgc-home .cn-hero-panel h2{font-size:clamp(29px,3vw,41px);line-height:1.2;letter-spacing:-1px;color:#552a3e;margin:0 0 20px}
#cgc-home .cn-hero-panel>p{font-size:14px;line-height:1.85;color:#856174;margin:0 0 25px}
#cgc-home .cn-panel-links{display:grid;gap:16px}
#cgc-home .cn-panel-links a{display:grid;gap:7px;border-top:1px solid #cdb3c0;padding-top:15px}
#cgc-home .cn-panel-links span{font-size:9px;letter-spacing:1.6px;color:#96697e;font-weight:800}
#cgc-home .cn-panel-links strong{font-size:21px;line-height:1.5;overflow-wrap:anywhere}
#cgc-home .cn-panel-links a:hover strong{color:#751827}
#cgc-home .cn-main{background:#fff;scroll-margin-top:100px}
#cgc-home .cn-contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:36px;align-items:start}
#cgc-home .cn-details{min-width:0}
#cgc-home .cn-office{padding:31px;background:#f2e9ed;border:1px solid #dfcbd5;border-radius:11px;color:#6f4d5e}
#cgc-home .cn-section-kicker{font-size:10px;letter-spacing:1.8px;color:#9b6e83;font-weight:800;display:block;margin-bottom:17px}
#cgc-home .cn-office h3{font-size:26px;line-height:1.25;color:#4b2c3c;letter-spacing:-.5px;margin:0 0 19px}
#cgc-home .cn-office address{font-style:normal;font-size:15px;line-height:1.9;color:#80616f}
#cgc-home .cn-map-link{display:inline-flex;gap:20px;margin-top:20px;font-size:13px;line-height:1.8;font-weight:700;color:#751827;border-bottom:1px solid #c7a7b7;padding-bottom:4px}
#cgc-home .cn-office-hours{display:flex;justify-content:space-between;gap:20px;align-items:start;border-top:1px solid #d2b9c5;margin-top:27px;padding-top:22px;font-size:13px;line-height:1.9}
#cgc-home .cn-office-hours strong{font-weight:700;color:#5a3547;text-align:right}
#cgc-home .cn-small-details{display:grid;grid-template-columns:1fr;gap:14px;margin-top:17px}
#cgc-home .cn-small-details article{border:1px solid #e5d9df;border-radius:9px;padding:20px 25px;background:#fcf9fa}
#cgc-home .cn-small-details h3{font-size:11px;letter-spacing:1.3px;text-transform:uppercase;color:#a17a8e;margin:0 0 8px}
#cgc-home .cn-small-details a{font-size:20px;font-weight:700;color:#63394e;line-height:1.6;overflow-wrap:anywhere}
#cgc-home .cn-social{padding:26px 0 0}
#cgc-home .cn-social h3{font-size:16px;color:#664052;margin:0 0 17px}
#cgc-home .cn-social .cs-social{display:flex;flex-wrap:wrap;gap:10px 20px}
#cgc-home .cn-social a{font-size:12px;color:#8b6076;line-height:1.8}
#cgc-home .cn-social a:hover{text-decoration:underline;text-underline-offset:4px;color:#751827}
#cgc-home .cn-form-panel{background:#fff;border:1px solid #dfc9d4;border-top:4px solid #751827;border-radius:11px;padding:36px;box-shadow:0 12px 36px #50233a08;min-width:0}
#cgc-home .cn-form-panel>h3{font-size:33px;line-height:1.2;letter-spacing:-.9px;color:#4d2d3d;margin:0 0 16px}
#cgc-home .cn-form-intro{font-size:14px;line-height:1.8;color:#8a6c7b;margin:0 0 26px}
#cgc-home .cn-form-panel fieldset{border:0;padding:0;margin:0;min-width:0}
#cgc-home .cn-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px}
#cgc-home .cn-form-grid label{display:block;min-width:0;font-size:13px;font-weight:700;color:#775065;line-height:1.7}
#cgc-home .cn-form-grid label>span:not(.cn-optional){color:#9d526e}
#cgc-home .cn-optional{font-size:10px;color:#a08795;font-weight:400;margin-left:4px}
#cgc-home .cn-form-grid input,#cgc-home .cn-form-grid select,#cgc-home .cn-form-grid textarea{display:block;width:100%;min-width:0;border:1px solid #d9c5cf;border-radius:6px;background:#fcfafb;color:#49313e;font-family:inherit;font-size:14px;line-height:1.6;padding:12px 13px;margin:9px 0 0;transition:border-color .2s,box-shadow .2s}
#cgc-home .cn-form-grid input,#cgc-home .cn-form-grid select{height:48px}
#cgc-home .cn-form-grid textarea{resize:vertical;min-height:150px}
#cgc-home .cn-form-grid textarea::placeholder{font-size:13px;color:#a38b99}
#cgc-home .cn-form-grid input:focus,#cgc-home .cn-form-grid select:focus,#cgc-home .cn-form-grid textarea:focus{border-color:#98576f;box-shadow:0 0 0 3px #9b60791a;outline:none}
#cgc-home .cn-form-wide{grid-column:1/-1}
#cgc-home .cn-send-row{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:25px}
#cgc-home .cn-send-row>span{font-size:10px;color:#a18796}
#cgc-home .cn-email-note{font-size:12px;color:#977989;line-height:1.8;margin:18px 0 0}
#cgc-home .cn-email-options{display:flex;align-items:center;gap:9px 15px;flex-wrap:wrap;padding:17px 0 0;margin-top:17px;border-top:1px solid #eadde3}
#cgc-home .cn-email-options>span{font-size:11px;color:#947485}
#cgc-home .cn-email-options button{font-family:inherit;font-size:12px;font-weight:700;color:#751827;background:none;border:0;padding:4px 0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;line-height:1.8}
#cgc-home .cn-email-options button:focus-visible{outline:2px solid #751827;outline-offset:4px}
#cgc-home .cn-form-status{font-size:13px;color:#794357;line-height:1.8;margin:16px 0 0;overflow-wrap:anywhere}
#cgc-home .cn-form-status:empty{margin:0}
#cgc-home .cn-location{background:#f5efeb;border-top:1px solid #e9dce1}
#cgc-home .cn-map{overflow:hidden;border:1px solid #d7c0cd;border-radius:11px;background:#e9dfe4}
#cgc-home .cn-map iframe{display:block;border:0;width:100%;height:420px}
#cgc-home .cn-map-footer{display:flex;justify-content:space-between;gap:20px;margin-top:20px;align-items:start}
#cgc-home .cn-map-footer p{font-size:13px;line-height:1.8;color:#8b6c7b;margin:0}
#cgc-home .cn-map-footer a{font-size:13px;line-height:1.8;color:#751827;font-weight:700}
@media(max-width:1000px){#cgc-home .cn-hero .ca-hero-grid{gap:35px}#cgc-home .cn-contact-layout{grid-template-columns:.85fr 1.15fr;gap:25px}#cgc-home .cn-form-panel{padding:28px}#cgc-home .cn-office{padding:26px}#cgc-home .cn-form-grid{grid-template-columns:1fr}}
@media(max-width:760px){#cgc-home .cn-hero .ca-hero-grid,#cgc-home .cn-contact-layout{grid-template-columns:1fr}#cgc-home .cn-hero-panel{padding:28px}#cgc-home .cn-hero-panel h2{font-size:34px}#cgc-home .cn-small-details{grid-template-columns:1fr 1fr}#cgc-home .cn-small-details a{font-size:17px}#cgc-home .cn-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#cgc-home .cn-form-panel{margin-top:8px}#cgc-home .cn-map-footer{flex-direction:column;gap:12px}}
@media(max-width:480px){#cgc-home .cn-form-grid,#cgc-home .cn-small-details{grid-template-columns:1fr}#cgc-home .cn-form-panel{padding:28px 23px}#cgc-home .cn-office{padding:26px 23px}#cgc-home .cn-small-details a{font-size:20px}#cgc-home .cn-send-row{gap:12px}#cgc-home .cn-map iframe{height:350px}#cgc-home .cn-form-panel>h3{font-size:30px}#cgc-home .cn-panel-links strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){#cgc-home .cn-form-grid input,#cgc-home .cn-form-grid select,#cgc-home .cn-form-grid textarea{transition:none}}
@media(max-width:760px){#cgc-home .cn-form-grid input,#cgc-home .cn-form-grid select,#cgc-home .cn-form-grid textarea{font-size:16px}}

/* V6 shared components: one navigation, one logo, one phone control. */
html{scroll-padding-top:105px}body{margin:0}#cgc-home{min-width:0;overflow-wrap:break-word}
#cgc-home .tx-nav-list a{position:relative;display:inline-flex;align-items:center;padding-block:8px;text-decoration:none}
#cgc-home .tx-nav-list a::after{content:"";position:absolute;display:block;left:0;right:0;bottom:1px;height:2px;background:#751827;transform:scaleX(0);transform-origin:left;transition:transform .2s;opacity:1}
#cgc-home .tx-nav-list a[aria-current="page"]::after,#cgc-home .tx-nav-list a.is-active::after,#cgc-home .tx-nav-list a:hover::after{display:block!important;transform:scaleX(1)!important;opacity:1!important}
#cgc-home .tx-nav-list a[aria-current="page"],#cgc-home .tx-nav-list a.is-active{color:#751827}
#cgc-home .tx-footer-main{padding-top:35px;padding-bottom:30px}
#cgc-home .tx-footer .cg4-brand-image{width:184px;height:72px}
#cgc-home .tx-footer .tx-brand{margin-bottom:0}
#cgc-home .tx-footer .cgc-footer-position{font-size:14px;line-height:1.8;color:#876c7c;text-align:center;margin:8px 0 20px}
#cgc-home .cgc-footer-nav{display:flex;justify-content:center;gap:13px 24px;flex-wrap:wrap;list-style:none;padding:0;margin:0}
#cgc-home .cgc-footer-nav li{margin:0;padding:0}
#cgc-home .cgc-footer-nav a{font-size:14px;line-height:1.7;color:#785468;text-decoration:none}
#cgc-home .cgc-footer-nav a[aria-current="page"]{color:#751827;text-decoration:underline;text-underline-offset:5px}
#cgc-home .cgc-footer-contact{display:flex;justify-content:center;gap:10px 25px;flex-wrap:wrap;margin:22px auto 20px;font-size:12px;line-height:1.8;color:#886a7b;max-width:1000px}
#cgc-home .cgc-footer-contact a{color:#7a5268}
#cgc-home .cgc-footer-contact a:hover{text-decoration:underline;text-underline-offset:3px}
#cgc-home .tx-footer .tx-social-links{margin-top:0}
#cgc-home .tx-copyright .tx-container{padding-right:85px}
#callnowbutton,#cg5-call-button{display:none!important;visibility:hidden!important;pointer-events:none!important}
#cgc-home #cougar-call{box-sizing:border-box!important;position:fixed!important;display:grid!important;place-items:center!important;inset:auto 22px max(22px,env(safe-area-inset-bottom,0px)) auto!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;border:0!important;margin:0!important;padding:0!important;border-radius:50%!important;background:#00b815!important;background-image:none!important;color:white!important;text-decoration:none!important;z-index:99990!important;box-shadow:0 5px 20px #173d2028!important;opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;overflow:visible!important}
#cgc-home #cougar-call::before{content:"";position:absolute;inset:0;border:1px solid #00b81570;border-radius:50%;pointer-events:none;animation:cgcCallPulse 4.8s ease-out infinite}
#cgc-home #cougar-call::after{content:none!important;display:none!important}
#cgc-home #cougar-call .cgc-call-glyph{display:grid;place-items:center;width:28px;height:28px;animation:cgcCallFloat 3.6s ease-in-out infinite;pointer-events:none;background:none!important}
#cgc-home #cougar-call svg{display:block;width:25px;height:25px;fill:white;background:none!important}
#cgc-home #cougar-call:hover .cgc-call-glyph,#cgc-home #cougar-call:focus-visible .cgc-call-glyph{animation-play-state:paused}
#cgc-home #cougar-call:focus-visible{outline:3px solid #751827;outline-offset:5px}
@keyframes cgcCallFloat{0%,100%{transform:translateY(2px)}50%{transform:translateY(-3px)}}
@keyframes cgcCallPulse{0%,12%{transform:scale(1);opacity:0}20%{opacity:.7}65%,100%{transform:scale(1.5);opacity:0}}
#cgc-home .cgc-generic{padding:75px 0;min-height:45vh}
#cgc-home .cgc-generic h1{font-size:clamp(34px,4vw,55px);line-height:1.2;color:#4f2d3c;margin:0 0 25px}
#cgc-home .cgc-generic p{font-size:16px;line-height:1.9;color:#806575}
@media(max-width:1080px){#cgc-home .cgc-nav-open .tx-nav-list a[aria-current="page"]::after{left:4px;right:auto;width:32px;bottom:6px;display:block!important}#cgc-home .cgc-nav-open .tx-nav-list a:hover::after{display:none!important}#cgc-home .cgc-nav-open .tx-nav-list a[aria-current="page"]:hover::after{display:block!important}}
@media(max-width:600px){#cgc-home #cougar-call{right:17px!important;bottom:max(17px,env(safe-area-inset-bottom,0px))!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}#cgc-home .cgc-footer-contact{flex-direction:column;gap:8px;align-items:center}#cgc-home .cgc-footer-nav{gap:12px 20px}#cgc-home .tx-footer-main{padding-top:35px;padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#cgc-home #cougar-call::before{display:none;animation:none}#cgc-home #cougar-call .cgc-call-glyph{animation:none;transform:none}#cgc-home .tx-nav-list a::after{transition:none}}
