/* Graphique G · formal single-page preview */
body.gg-portfolio{background:#081713;color:#f2f4ed;--gg-lime:#c2e786;--gg-muted:#a3b7ac;--gg-line:rgba(199,222,204,.18)}
.gg-page{position:relative;z-index:1;background:transparent!important}
.gg-main,.gg-hero,.gg-work,.gg-services,.gg-about,.gg-contact{background:transparent!important}
body.gg-portfolio::before{opacity:.14!important}
.gg-wrap{max-width:1240px!important}
.gg-header{position:sticky!important;top:12px;z-index:30;margin:12px auto 0!important;padding:19px 28px!important;background:rgba(8,23,19,.94)!important;border:1px solid var(--gg-line);border-radius:14px;box-shadow:0 14px 44px #0002;backdrop-filter:blur(16px);width:calc(100% - 64px)!important}
body.admin-bar .gg-header{top:44px}
.gg-brand{max-width:172px!important}
.gg-navlink a,.gg-navcontact a{font-size:12px!important;letter-spacing:.025em!important}
.gg-navcontact a{border-radius:6px!important;padding:12px 18px!important}
.gg-hero{padding-top:66px!important;padding-bottom:34px!important}
.gg-herotop{padding-bottom:24px!important;border-bottom:1px solid var(--gg-line)}
.gg-eyebrow{font-size:10px!important;letter-spacing:.16em!important;color:var(--gg-lime)}
.gg-herobottom{grid-template-columns:1.35fr 1fr!important;gap:70px!important;margin-top:52px!important;align-items:center!important}
.gg-title .elementor-heading-title{font-family:Manrope,sans-serif!important;font-size:clamp(60px,6.6vw,90px)!important;font-weight:500!important;line-height:1.04!important;letter-spacing:-.06em!important}
.gg-name-accent{font-family:inherit!important;font-style:normal!important;font-weight:500!important;line-height:1.04!important;letter-spacing:inherit!important;color:var(--gg-lime)}
.gg-herosub .elementor-heading-title{font-size:24px!important;font-weight:400!important;line-height:1.4!important;letter-spacing:-.02em!important}
.gg-intro{font-size:16px!important;line-height:1.85!important;max-width:460px!important;color:#b9c8be}
.gg-herocopy{gap:24px!important}
.gg-heroactions{margin-top:7px!important;gap:26px!important}
.gg-primary a{border-radius:6px!important;padding:17px 24px!important;font-size:13px!important;box-shadow:none!important}
.gg-herospecialties span{border:0!important;border-radius:0!important;padding:0 16px 0 0!important;font-size:10px!important;color:#c3d0c6}
.gg-herospecialties span+span{border-left:1px solid var(--gg-line)!important;padding-left:16px!important}
.gg-personalvisual{min-height:470px!important;justify-content:flex-end!important;padding:0!important}
.gg-personalvisual::before,.gg-personalvisual::after{display:none!important}
.gg-personalphoto{width:340px!important;max-width:100%!important;border-radius:12px!important;border:1px solid rgba(206,230,211,.24)!important;box-shadow:0 28px 70px #0004!important;animation:none!important;transform:none!important}
.gg-personalphoto img{height:440px!important;object-position:50% 40%!important;filter:saturate(.72)}
.gg-personalcaption{left:auto!important;right:24px!important;bottom:0!important;background:#112b21!important;border:1px solid #45614a!important;color:#dce8d5!important;transform:none!important;padding:13px 20px!important;border-radius:6px!important;box-shadow:none!important;font-size:12px!important}
.gg-personalcaption strong{font-size:15px!important}
.gg-projectteaser{display:none!important}
.gg-herorule{margin-top:54px!important;padding-top:20px!important}
.gg-work{padding-top:82px!important}
.gg-sectionheading .elementor-heading-title{font-size:clamp(35px,4vw,52px)!important;font-weight:500!important;line-height:1.15!important;letter-spacing:-.04em!important}
.gg-work .gg-projectgrid,.gg-work .gg-projectgrid.gg-filtered{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:40px 30px!important;margin-top:32px!important}
.gg-work .gg-card,.gg-work .gg-card:nth-child(n),.gg-work .gg-projectgrid.gg-filtered .gg-card{grid-column:auto!important;margin:0!important;gap:0!important;background:#10241c!important;border:1px solid var(--gg-line)!important;border-radius:10px!important;overflow:hidden!important;padding:0!important;transform:none;box-shadow:0 8px 30px #0001}
.gg-work .gg-card[hidden]{display:none!important}
.gg-work .gg-cardimage{border:0!important;border-radius:0!important;background:#e6ebe3!important;aspect-ratio:4 / 3!important;overflow:hidden!important}
.gg-work .gg-cardimage img{width:100%!important;height:100%!important;aspect-ratio:4 / 3!important;object-fit:contain!important;padding:12px!important;background:#e6ebe3!important;transition:transform .5s ease}
.gg-cardimage .elementor-widget-container,.gg-cardimage a{height:100%!important}
.gg-work .gg-card:hover .gg-cardimage img{transform:scale(1.025)}
.gg-work .gg-cardcaption{padding:22px 24px!important;gap:16px!important;align-items:center!important}
.gg-work .gg-cardtitle .elementor-heading-title{font-family:Manrope,sans-serif!important;font-size:23px!important;line-height:1.25!important;font-weight:500!important;letter-spacing:-.03em!important}
.gg-cardcategory{font-size:11px!important;color:#acc0b0!important;letter-spacing:.025em}
.gg-work .gg-projectopen a{font-size:12px!important;white-space:nowrap;padding:8px 0!important}
.gg-work .gg-browsebar{gap:16px!important;margin-top:30px!important}
.gg-work .gg-filters{gap:24px!important}
.gg-work .gg-filter a{font-size:12px!important}
.gg-services{padding-top:100px!important}
.gg-service:not(.gg-step){background:#10241cd9!important;border:1px solid var(--gg-line)!important;border-radius:8px!important;box-shadow:none!important}
.gg-service h3{font-weight:500!important;font-size:24px!important}
.gg-process{background:#11271fd9!important;border:1px solid var(--gg-line)!important;border-radius:10px!important}
.gg-abouttitle .elementor-heading-title{font-size:62px!important;font-weight:500!important}
.gg-contacttitle .elementor-heading-title{font-size:clamp(44px,5.8vw,76px)!important;font-weight:500!important;line-height:1.1!important;letter-spacing:-.05em!important}
.gg-clientbrief,.gg-contactbottom{background:#10241ced!important;border-radius:10px!important}
.gg-dialog{border:1px solid var(--gg-line)!important;background:#0e2119!important;border-radius:10px!important}
.gg-dialog h2{font-family:Manrope,sans-serif!important;font-weight:500!important}
.gg-depth-scene{position:fixed;left:50%;right:auto;top:50%;width:min(48vw,660px);height:min(48vw,660px);transform:translate(-50%,-50%);perspective:1100px;pointer-events:none;z-index:0;opacity:.52;contain:layout}
.gg-depth-solid{position:absolute;inset:12%;transform-style:preserve-3d;transform:rotateX(-12deg) rotateY(-24deg) rotateZ(-8deg);will-change:transform}
.gg-depth-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:translateZ(var(--depth));fill:#034033;backface-visibility:visible}
.gg-depth-face{fill:url(#gg-metal);filter:drop-shadow(0 10px 12px #0006)}
.gg-depth-back{fill:url(#gg-metal)}
.gg-depth-definition{position:absolute;width:0;height:0;overflow:hidden}
.gg-depth-progress{position:fixed;left:0;top:0;height:2px;width:100%;background:var(--gg-lime);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}
@media(max-width:1100px){.gg-header{width:calc(100% - 40px)!important}.gg-herobottom{gap:35px!important}.gg-personalphoto{width:300px!important}.gg-personalphoto img{height:410px!important}.gg-personalvisual{min-height:450px!important}.gg-depth-scene{left:50%;right:auto;opacity:.46}}
@media(max-width:700px){
 .gg-header{width:calc(100% - 28px)!important;top:8px;padding:15px 17px!important;border-radius:10px;margin-top:8px!important}body.admin-bar .gg-header{top:54px}
 .gg-brand{max-width:145px!important}.gg-navlinks.gg-open{background:#0d211a!important;border:1px solid var(--gg-line);border-radius:9px!important}
 .gg-hero{padding-top:40px!important}.gg-herobottom{grid-template-columns:1fr 1fr!important;grid-template-areas:'title title' 'role portrait' 'intro intro' 'actions actions' 'chips chips'!important;gap:24px 20px!important;margin-top:33px!important}
 .gg-title .elementor-heading-title{font-size:clamp(49px,13.4vw,76px)!important;line-height:1.02!important}.gg-herosub .elementor-heading-title{font-size:20px!important;line-height:1.35!important}
 .gg-personalvisual{min-height:0!important}.gg-personalphoto{width:100%!important;border-radius:9px!important}.gg-personalphoto img{height:232px!important;filter:saturate(.72)}
 .gg-personalcaption{bottom:-9px!important;right:8px!important;padding:8px 10px!important;font-size:9px!important}.gg-personalcaption strong{font-size:11px!important}
 .gg-intro{font-size:15px!important}.gg-primary a{padding:15px 19px!important;font-size:12px!important}.gg-herorule{margin-top:30px!important}.gg-herospecialties span{font-size:9px!important;padding-right:10px!important}.gg-herospecialties span+span{padding-left:10px!important}
 .gg-work{padding-top:48px!important}.gg-sectionheading .elementor-heading-title{font-size:35px!important}.gg-work .gg-projectgrid,.gg-work .gg-projectgrid.gg-filtered{grid-template-columns:1fr!important;gap:26px!important}.gg-work .gg-cardcaption{padding:18px!important}.gg-work .gg-cardtitle .elementor-heading-title{font-size:23px!important}
 .gg-work .gg-filters{gap:18px!important;flex-wrap:wrap!important}.gg-work .gg-browsebar{align-items:flex-end!important}.gg-work .gg-filter a{font-size:11px!important;padding:10px 0!important}.gg-work .gg-resultcount{font-size:10px!important}
 .gg-depth-scene{width:min(88vw,320px);height:min(88vw,320px);left:50%;right:auto;top:50%;opacity:.38;perspective:800px}.gg-depth-solid{inset:8%}
 .gg-depth-layer:nth-child(even){display:none}
 .gg-navlink a,.gg-navcontact a,.gg-menutoggle a{min-height:44px!important;display:inline-flex!important;align-items:center;justify-content:center}
 .gg-work .gg-filter a{min-height:44px!important;display:inline-flex!important;align-items:center;font-size:12px!important}
 .gg-work .gg-projectopen a{min-height:44px!important;display:inline-flex!important;align-items:center}
 .gg-heroactions{flex-wrap:wrap!important}
 .gg-depth-progress{height:2px}
 .gg-services{padding-top:65px!important}.gg-servicegrid{grid-template-columns:1fr!important;gap:14px!important}.gg-service:not(.gg-step){padding:24px!important}.gg-service h3{font-size:22px!important}.gg-abouttitle .elementor-heading-title{font-size:46px!important}.gg-contacttitle .elementor-heading-title{font-size:43px!important}
}
@media(prefers-reduced-motion:reduce){.gg-depth-solid{will-change:auto}.gg-work .gg-cardimage img{transition:none}.gg-work .gg-card:hover .gg-cardimage img{transform:none}}
