/* =========================================================
   GLG GROUP — design tokens
   Palette: ink navy / brass gold / warm ivory — ledger-style
   numbered index as the recurring signature motif.
========================================================= */
:root{
	--glg-navy-900:#0a1522;
	--glg-navy-800:#0d1b2e;
	--glg-navy-700:#16283f;
	--glg-navy-600:#213a58;
	--glg-ivory:#f6f3ec;
	--glg-ivory-dim:#ece7da;
	--glg-brass:#b8934f;
	--glg-brass-light:#d4b273;
	--glg-cyan:#5ec8e8;
	--glg-cyan-glow:rgba(94,200,232,0.35);
	--glg-ink:#1c2430;
	--glg-muted-on-light:#5b6472;
	--glg-muted-on-dark:#aab4c4;
	--glg-line-on-dark:rgba(255,255,255,0.12);
	--glg-line-on-light:rgba(13,27,46,0.12);

	--glg-serif: 'Fraunces', Georgia, serif;
	--glg-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
	--glg-mono: 'JetBrains Mono', 'SFMono-Regular', Menlo, monospace;

	--glg-radius: 2px;
	--glg-container: 1180px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
	margin:0;
	font-family:var(--glg-sans);
	color:var(--glg-ink);
	background:var(--glg-ivory);
	font-size:17px;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3{ font-family:var(--glg-serif); font-weight:600; margin:0 0 .5em; line-height:1.15; }
p{ margin:0 0 1em; }
ul{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; }

.glg-container{ max-width:var(--glg-container); margin:0 auto; padding:0 32px; }

@media (max-width:420px){
	.glg-container{ padding:0 20px; }
	body{ font-size:16px; }
}

@media (prefers-reduced-motion: reduce){
	html{ scroll-behavior:auto; }
	*{ animation-duration:0.001ms !important; transition-duration:0.001ms !important; }
}

/* focus visibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
	outline:2px solid var(--glg-brass);
	outline-offset:3px;
}

/* =========================================================
   HEADER
========================================================= */
.glg-header{
	position:sticky; top:0; z-index:100;
	background:rgba(10,21,34,0.92);
	backdrop-filter:blur(8px);
	border-bottom:1px solid var(--glg-line-on-dark);
}

/* ---- Sfondo del menu: video o immagine (indipendente dall'Hero) ---- */
.glg-header-media-wrap{ position:absolute; inset:0; z-index:0; overflow:hidden; }
.glg-header-media{
	position:absolute; top:50%; left:50%; min-width:100%; min-height:100%;
	width:auto; height:auto; transform:translate(-50%,-50%); object-fit:cover;
}
.glg-header-media-wrap-embed{ pointer-events:none; }
.glg-header-media-iframe{
	position:absolute; top:50%; left:50%;
	width:300%; height:100%;
	transform:translate(-50%,-50%);
}
.glg-header-media-overlay{
	position:absolute; inset:0;
	background:linear-gradient(90deg, rgba(10,21,34,0.75) 0%, rgba(10,21,34,0.55) 100%);
}
.glg-header-has-media{ background:transparent; }
.glg-header-has-media .glg-header-inner{ position:relative; z-index:1; }

/* ---- Barra social verticale fissa (stile "Follow Us") ---- */
.glg-social-sidebar{
	position:fixed; left:0; top:50%; transform:translateY(-50%);
	z-index:90;
	background:rgba(10,21,34,0.55);
	backdrop-filter:blur(6px);
	border:1px solid var(--glg-line-on-dark); border-left:none;
	border-radius:0 6px 6px 0;
	display:flex; flex-direction:column; align-items:center;
	overflow:hidden;
}
.glg-social-sidebar-label{
	writing-mode:vertical-rl; transform:rotate(180deg);
	font-family:var(--glg-mono); font-size:.68rem; letter-spacing:.2em; text-transform:uppercase;
	color:var(--glg-muted-on-dark);
	padding:14px 0; border-bottom:1px solid var(--glg-line-on-dark);
}
.glg-social-sidebar-icons{ display:flex; flex-direction:column; }
.glg-social-sidebar-icons a{
	display:flex; align-items:center; justify-content:center;
	width:44px; height:44px;
	color:var(--glg-ivory);
	border-bottom:1px solid var(--glg-line-on-dark);
	transition:color .18s ease, background .18s ease;
}
.glg-social-sidebar-icons a:last-child{ border-bottom:none; }
.glg-social-sidebar-icons a:hover{ color:var(--glg-cyan); background:rgba(94,200,232,0.08); }
.glg-social-icon{ display:block; }

@media (max-width:880px){
	.glg-social-sidebar{ display:none; }
}
@media (min-width:1100px){
	body.glg-has-social-sidebar .glg-container{ padding-left:56px; }
}

/* Icone social duplicate dentro al menu mobile: nascoste su desktop, dove
   è già visibile la barra verticale laterale. */
.glg-nav-social{ display:none; }
@media (max-width:880px){
	.glg-nav-social{
		display:flex; gap:18px; margin-top:18px; padding-top:18px;
		border-top:1px solid var(--glg-line-on-dark);
	}
	.glg-nav-social a{ color:var(--glg-ivory); opacity:.85; transition:color .18s ease, opacity .18s ease; }
	.glg-nav-social a:hover{ color:var(--glg-cyan); opacity:1; }
}

/* ---- Interruttore lingua IT / EN ---- */
.glg-lang-switch{
	display:inline-flex; align-items:center; gap:6px;
	font-family:var(--glg-mono); font-size:.78rem; letter-spacing:.05em;
	margin-left:8px;
}
.glg-lang-switch a{ color:var(--glg-muted-on-dark); opacity:1; padding:0; }
.glg-lang-switch a::after{ display:none; }
.glg-lang-switch a.is-active{ color:var(--glg-brass-light); font-weight:600; }
.glg-lang-switch a:hover{ color:var(--glg-cyan); text-shadow:none; }
.glg-lang-sep{ color:var(--glg-muted-on-dark); }

.glg-header-inner{
	display:flex; align-items:center; justify-content:space-between;
	height:74px;
}
.glg-brand{ display:flex; align-items:center; gap:6px; color:var(--glg-ivory); }
.glg-header-logo img, .glg-header-logo .custom-logo{ max-height:var(--glg-header-logo-size, 44px); width:auto; }
.glg-brand-mark{ font-family:var(--glg-serif); font-weight:700; font-size:1.5rem; letter-spacing:.02em; color:var(--glg-brass-light); }
.glg-brand-full{ font-family:var(--glg-mono); font-size:.72rem; letter-spacing:.28em; color:var(--glg-muted-on-dark); }

.glg-nav{ display:flex; align-items:center; gap:32px; }
.glg-nav a{
	position:relative;
	color:var(--glg-ivory); font-size:.92rem; letter-spacing:.01em; opacity:.85;
	padding-bottom:6px;
	transition:opacity .18s ease, color .18s ease, text-shadow .18s ease;
}
.glg-nav a::after{
	content:"";
	position:absolute; left:0; right:100%; bottom:0;
	height:2px; background:var(--glg-cyan);
	transition:right .25s ease;
}
.glg-nav a:hover, .glg-nav a:focus-visible{
	opacity:1; color:var(--glg-cyan);
	text-shadow:0 0 12px var(--glg-cyan-glow);
}
.glg-nav a:hover::after, .glg-nav a:focus-visible::after{ right:0; }
.glg-nav-cta{
	border:1px solid var(--glg-brass); padding:8px 18px; border-radius:var(--glg-radius);
	opacity:1 !important;
}
.glg-nav-cta::after{ display:none; }
.glg-nav-cta:hover{ background:var(--glg-brass); color:var(--glg-navy-900) !important; text-shadow:none; border-color:var(--glg-brass); }

.glg-burger{ display:none; background:none; border:0; cursor:pointer; padding:8px; }
.glg-burger span{ display:block; width:24px; height:2px; background:var(--glg-ivory); margin:5px 0; }

@media (max-width: 880px){
	.glg-nav{
		position:absolute; top:74px; left:0; right:0;
		background:var(--glg-navy-800); flex-direction:column; align-items:flex-start;
		padding:20px 32px 28px; gap:16px; border-bottom:1px solid var(--glg-line-on-dark);
		display:none;
	}
	.glg-nav.is-open{ display:flex; }
	.glg-burger{ display:block; }
}

/* =========================================================
   EYEBROW / SECTION TITLES
========================================================= */
.glg-kicker, .glg-eyebrow{
	font-family:var(--glg-mono); font-size:.78rem; letter-spacing:.24em; text-transform:uppercase;
	color:var(--glg-brass); margin:0 0 18px;
}
.glg-eyebrow-light{ color:var(--glg-brass-light); }
.glg-section-title{ font-size:clamp(1.8rem,3vw,2.6rem); color:var(--glg-navy-800); }
.glg-section-title-light{ color:var(--glg-ivory); }

.glg-section{ padding:100px 0; }

/* Spaziatura regolabile dal pannello "Sezioni & Aspetto" */
.glg-space-compact{ padding-top:56px; padding-bottom:56px; }
.glg-space-normal{ padding-top:100px; padding-bottom:100px; }
.glg-space-spacious{ padding-top:150px; padding-bottom:150px; }
.glg-hero.glg-space-compact{ padding-top:72px; padding-bottom:48px; }
.glg-hero.glg-space-normal{ padding-top:120px; padding-bottom:90px; }
.glg-hero.glg-space-spacious{ padding-top:160px; padding-bottom:120px; }

/* =========================================================
   HERO
========================================================= */
.glg-hero{
	background:linear-gradient(180deg, var(--glg-navy-900) 0%, var(--glg-navy-800) 100%);
	padding:120px 0 90px;
	position:relative;
	overflow:hidden;
}
.glg-hero::before{
	content:"";
	position:absolute;
	top:-20%; right:-10%;
	width:60%; height:70%;
	background:radial-gradient(circle, var(--glg-cyan-glow) 0%, transparent 70%);
	opacity:.35;
	pointer-events:none;
	filter:blur(10px);
}
.glg-hero::after{
	content:"";
	position:absolute;
	bottom:-30%; left:-10%;
	width:50%; height:60%;
	background:radial-gradient(circle, rgba(184,147,79,0.18) 0%, transparent 70%);
	pointer-events:none;
	filter:blur(10px);
}
.glg-hero-grid{
	position:relative; z-index:1;
	max-width:760px;
}
.glg-hero-title{
	font-size:clamp(2.9rem, 6.5vw, 5.1rem);
	color:var(--glg-ivory);
	letter-spacing:-0.01em;
}
.glg-hero-subtitle{
	color:var(--glg-muted-on-dark);
	font-size:1.15rem; max-width:46ch; margin-bottom:36px;
}
.glg-hero-rotating{
	font-family:var(--glg-serif); font-style:italic; font-weight:600;
	font-size:clamp(1.3rem, 2.4vw, 1.9rem);
	color:var(--glg-brass-light);
	margin:10px 0 18px;
	min-height:1.4em;
}
.glg-hero-rotating-cursor{
	display:inline-block; margin-left:2px;
	animation:glg-cursor-blink 1s step-end infinite;
}
@keyframes glg-cursor-blink{
	0%, 100%{ opacity:1; }
	50%{ opacity:0; }
}
@media (prefers-reduced-motion: reduce){
	.glg-hero-rotating-cursor{ animation:none; }
}
.glg-hero-ctas{ display:flex; gap:16px; flex-wrap:wrap; }

@media (max-width:880px){
	.glg-hero{ padding:90px 0 60px; }
}

/* ---- Video di sfondo Hero ---- */
.glg-hero-video-wrap{
	position:absolute; inset:0; z-index:0; overflow:hidden;
}
.glg-hero-video{
	position:absolute; top:50%; left:50%; min-width:100%; min-height:100%;
	width:auto; height:auto; transform:translate(-50%,-50%);
	object-fit:cover;
}
.glg-hero-image{
	position:absolute; top:50%; left:50%; min-width:100%; min-height:100%;
	width:auto; height:auto; transform:translate(-50%,-50%);
	object-fit:cover;
}
.glg-hero-video-wrap-embed{ pointer-events:none; }
.glg-hero-video-iframe{
	position:absolute; top:50%; left:50%;
	width:100vw; height:56.25vw; /* 16:9 basato sulla larghezza */
	min-height:100%; min-width:177.78vh; /* 16:9 basato sull'altezza, per coprire sempre tutta l'area */
	transform:translate(-50%,-50%);
}

.glg-sound-toggle{
	position:absolute; bottom:24px; right:24px; z-index:3;
	width:44px; height:44px; border-radius:50%;
	background:rgba(10,21,34,0.6); backdrop-filter:blur(6px);
	border:1px solid var(--glg-line-on-dark);
	display:flex; align-items:center; justify-content:center;
	cursor:pointer; font-size:1.1rem;
	transition:border-color .2s ease, transform .2s ease;
	pointer-events:auto;
}
.glg-sound-toggle:hover{ border-color:var(--glg-cyan); transform:scale(1.06); }
.glg-sound-icon-on{ display:none; }
.glg-sound-toggle.is-on .glg-sound-icon-off{ display:none; }
.glg-sound-toggle.is-on .glg-sound-icon-on{ display:inline; }
.glg-sound-toggle.is-on{ border-color:var(--glg-cyan); }

@media (max-width:700px){
	.glg-sound-toggle{ top:20px; bottom:auto; right:16px; z-index:5; }
}
.glg-hero-video-overlay{
	position:absolute; inset:0;
	background:linear-gradient(180deg, rgba(10,21,34,0.55) 0%, rgba(10,21,34,0.75) 60%, var(--glg-navy-800) 100%);
}
.glg-hero-has-video .glg-hero-grid, .glg-hero-has-image .glg-hero-grid{ position:relative; z-index:2; }
.glg-hero-has-video::before, .glg-hero-has-video::after,
.glg-hero-has-image::before, .glg-hero-has-image::after{ display:none; }

/* ---- Pannello "Borse del Mondo in tempo reale" (dati live via Twelve Data) ---- */
.glg-markets-section{
	background:var(--glg-navy-800);
	padding:64px 0;
}
.glg-markets{
	position:relative; z-index:2;
}
.glg-markets-header{
	display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between;
	gap:16px; margin-bottom:28px;
}
.glg-markets-title{
	font-size:clamp(1.5rem,2.6vw,2.1rem); color:var(--glg-ivory); margin:6px 0 0;
}
.glg-markets-title em{ color:var(--glg-brass-light); font-style:italic; }
.glg-markets-status{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.glg-markets-count{ font-family:var(--glg-mono); font-size:.85rem; font-weight:600; }
.glg-markets-live{
	display:inline-flex; align-items:center; gap:6px;
	font-family:var(--glg-mono); font-size:.72rem; letter-spacing:.1em;
	color:#6fcf97; border:1px solid rgba(111,207,151,0.4); border-radius:20px;
	padding:4px 10px;
}
.glg-live-dot{
	width:6px; height:6px; border-radius:50%; background:#6fcf97;
	animation:glg-live-pulse 1.6s ease-in-out infinite;
}
@keyframes glg-live-pulse{
	0%, 100%{ opacity:1; box-shadow:0 0 0 0 rgba(111,207,151,0.5); }
	50%{ opacity:.6; box-shadow:0 0 0 4px rgba(111,207,151,0); }
}
.glg-markets-updated{ font-family:var(--glg-mono); font-size:.75rem; color:var(--glg-muted-on-dark); }

.glg-markets-group-label{
	font-family:var(--glg-mono); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;
	color:var(--glg-muted-on-dark); margin:22px 0 12px; display:flex; align-items:center; gap:8px;
}
.glg-markets-bar{ width:3px; height:14px; border-radius:2px; display:inline-block; }
.glg-markets-bar-cyan{ background:var(--glg-cyan); }
.glg-markets-bar-brass{ background:var(--glg-brass); }

.glg-markets-carousel{
	overflow:hidden; padding:2px 0 10px;
}
.glg-markets-track{
	display:flex; gap:14px; width:max-content;
	animation:glg-ticker-scroll 50s linear infinite;
}
.glg-markets-track-reverse{ animation-name:glg-ticker-scroll-reverse; animation-duration:56s; }
.glg-markets-carousel:hover .glg-markets-track{ animation-play-state:paused; }

@keyframes glg-ticker-scroll{
	from{ transform:translateX(0); }
	to{ transform:translateX(-50%); }
}
@keyframes glg-ticker-scroll-reverse{
	from{ transform:translateX(-50%); }
	to{ transform:translateX(0); }
}

.glg-markets-card{
	flex-shrink:0; min-width:150px;
	background:rgba(255,255,255,0.03);
	border:1px solid var(--glg-line-on-dark); border-radius:8px;
	padding:14px 16px;
	display:flex; flex-direction:column; gap:6px;
	transition:border-color .2s ease, transform .2s ease;
}
.glg-markets-card:hover{ border-color:var(--glg-cyan); transform:translateY(-3px); }
.glg-markets-card-label{
	font-family:var(--glg-mono); font-size:.7rem; letter-spacing:.05em; text-transform:uppercase;
	color:var(--glg-muted-on-dark);
}
.glg-markets-card-price{ font-size:1.15rem; font-weight:600; color:var(--glg-ivory); }
.glg-markets-card-change{ font-family:var(--glg-mono); font-size:.78rem; font-weight:600; }
.glg-ticker-up{ color:#6fcf97; }
.glg-ticker-down{ color:#eb8686; }

.glg-markets-disclaimer{
	font-size:.75rem; color:var(--glg-muted-on-dark); text-align:center; margin:24px 0 0;
}

@media (prefers-reduced-motion: reduce){
	.glg-markets-track{ animation:none; }
}
@media (max-width:600px){
	.glg-markets-header{ flex-direction:column; align-items:flex-start; }
}

/* =========================================================
   BUTTONS
========================================================= */
.glg-btn{
	display:inline-block;
	padding:14px 30px;
	font-size:.95rem; font-weight:600; letter-spacing:.02em;
	border-radius:var(--glg-radius);
	border:1px solid transparent;
	transition:transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
.glg-btn:hover{ transform:translateY(-1px); }
.glg-btn-gold{ background:var(--glg-brass); color:var(--glg-navy-900); }
.glg-btn-gold:hover{ background:var(--glg-brass-light); }
.glg-btn-outline{ border-color:rgba(255,255,255,0.35); color:var(--glg-ivory); }
.glg-btn-outline:hover{ border-color:var(--glg-brass-light); color:var(--glg-brass-light); }
.glg-btn-navy{ background:var(--glg-navy-800); color:var(--glg-ivory); }
.glg-btn-navy:hover{ background:var(--glg-navy-900); }

/* =========================================================
   CHI SIAMO
========================================================= */
.glg-about{ background:var(--glg-ivory); }
.glg-about-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; align-items:center; margin-bottom:80px; }
.glg-about-media img, .glg-about-placeholder{ border-radius:var(--glg-radius); }
.glg-about-placeholder{
	aspect-ratio:4/5; background:var(--glg-navy-800);
	display:flex; align-items:center; justify-content:center;
}
.glg-about-placeholder span{ font-family:var(--glg-serif); font-size:2.5rem; color:var(--glg-brass-light); letter-spacing:.05em; }
.glg-about-copy h2{ color:var(--glg-navy-800); font-size:clamp(1.8rem,3vw,2.4rem); }
.glg-prose{ color:var(--glg-muted-on-light); font-size:1.05rem; }
.glg-prose p:first-child{ font-family:var(--glg-serif); font-size:1.3rem; color:var(--glg-ink); font-style:italic; line-height:1.5; }

@media (max-width:880px){ .glg-about-grid{ grid-template-columns:1fr; } }

.glg-pillars-grid{
	display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
}
.glg-pillar-card{
	background:var(--glg-ivory); padding:36px 30px;
	border:1px solid var(--glg-line-on-light);
	border-radius:4px;
	transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.glg-pillar-card:hover{
	transform:translateY(-6px) scale(1.03);
	border-color:var(--glg-cyan);
	box-shadow:0 20px 36px -16px rgba(94,200,232,0.3), 0 0 0 1px rgba(94,200,232,0.15);
	position:relative; z-index:1;
}
.glg-pillar-num{ font-family:var(--glg-mono); color:var(--glg-brass); font-size:.85rem; }
.glg-pillar-card h3{ font-size:1.15rem; color:var(--glg-navy-800); margin:14px 0 10px; }
.glg-pillar-card p{ font-size:.92rem; color:var(--glg-muted-on-light); margin:0; }

@media (max-width:880px){ .glg-pillars-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .glg-pillars-grid{ grid-template-columns:1fr; } }

/* =========================================================
   DIVISIONI
========================================================= */
.glg-divisions{ background:var(--glg-navy-800); }
.glg-divisions-list{ border-top:1px solid var(--glg-line-on-dark); margin-top:20px; }
.glg-division-row{
	display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px;
	padding:34px 0; border-bottom:1px solid var(--glg-line-on-dark);
}
.glg-division-header{
	display:flex; align-items:center; gap:18px;
	margin-bottom:8px;
}
.glg-division-icon{
	color:var(--glg-brass-light) !important;
	width:var(--glg-division-icon-size, 52px) !important;
	height:var(--glg-division-icon-size, 52px) !important;
	font-size:var(--glg-division-icon-size, 52px) !important;
	flex-shrink:0;
	display:flex; align-items:center; justify-content:center;
}

/* ---- Animazione "luci": le icone si accendono e si affievoliscono in loop, sfasate ---- */
.glg-icon-lit{
	animation:glg-icon-glow 2.6s ease-in-out infinite;
	transform-origin:center;
}
@keyframes glg-icon-glow{
	0%, 100%{
		opacity:.55;
		filter:drop-shadow(0 0 0 transparent) brightness(0.9);
	}
	50%{
		opacity:1;
		filter:drop-shadow(0 0 10px var(--glg-brass-light)) brightness(1.25);
	}
}
@media (prefers-reduced-motion: reduce){
	.glg-icon-lit{ animation:none; opacity:1; }
}
.glg-division-icon-image{ object-fit:contain; }
.glg-division-body h3{ color:var(--glg-ivory); font-size:1.4rem; margin:0; line-height:1.2; }
.glg-division-body p{ color:var(--glg-muted-on-dark); margin:0; max-width:60ch; }
.glg-division-link{ color:var(--glg-brass-light); font-size:.9rem; white-space:nowrap; align-self:center; }
.glg-division-link:hover{ text-decoration:underline; }

@media (max-width:700px){
	.glg-division-row{ grid-template-columns:1fr; }
	.glg-division-link{ margin-top:8px; }
}

/* =========================================================
   CAMBIALABOLLETTA (digital band)
========================================================= */
.glg-digital{
	background:linear-gradient(120deg, var(--glg-brass) 0%, var(--glg-brass-light) 100%);
	color:var(--glg-navy-900);
}
.glg-digital .glg-eyebrow{ color:var(--glg-navy-900); opacity:.7; }
.glg-digital h2{ color:var(--glg-navy-900); font-size:clamp(1.9rem,3vw,2.6rem); }
.glg-digital-text{ max-width:60ch; font-size:1.05rem; color:rgba(13,27,46,0.82); }
.glg-digital-inner{ max-width:760px; }
.glg-digital-has-banner .glg-digital-inner{
	max-width:var(--glg-container);
	display:grid; grid-template-columns:0.85fr 1.15fr; gap:48px; align-items:center;
}
.glg-digital-banner img{ width:100%; border-radius:10px; box-shadow:0 20px 44px -18px rgba(0,0,0,0.35); }
.glg-digital-banner-video{
	position:relative; width:100%; border-radius:10px; overflow:hidden;
	box-shadow:0 20px 44px -18px rgba(0,0,0,0.35);
	aspect-ratio:16/10;
}
.glg-digital-banner-video video{ width:100%; height:100%; object-fit:cover; display:block; }
.glg-digital-banner-embed iframe{ width:100%; height:100%; border:0; display:block; }
@media (max-width:880px){
	.glg-digital-has-banner .glg-digital-inner{ grid-template-columns:1fr; }
	.glg-digital-banner{ order:-1; }
}

/* =========================================================
   RETE
========================================================= */
.glg-network{ background:var(--glg-ivory-dim); }
.glg-network-text{ max-width:70ch; color:var(--glg-muted-on-light); font-size:1.05rem; }
.glg-partners-carousel{
	margin-top:36px; overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg, #000 0, #000 94%, transparent 100%);
	mask-image:linear-gradient(90deg, #000 0, #000 94%, transparent 100%);
}
.glg-partners-track{
	display:flex; gap:14px; width:max-content;
	animation:glg-ticker-scroll 32s linear infinite;
}
.glg-partners-track:hover{ animation-play-state:paused; }
.glg-partner-badge{
	border:1px solid var(--glg-line-on-light); border-radius:var(--glg-radius);
	padding:20px 30px; background:var(--glg-ivory);
	font-family:var(--glg-mono); font-size:.85rem; color:var(--glg-navy-700);
	white-space:nowrap;
	transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.glg-partner-badge:hover{
	transform:translateY(-3px);
	border-color:var(--glg-cyan);
	box-shadow:0 8px 20px -8px var(--glg-cyan-glow);
}
.glg-partner-badge img{ max-height:46px; }

@media (prefers-reduced-motion: reduce){
	.glg-partners-track{ animation:none; }
}

/* =========================================================
   NEWS
========================================================= */
.glg-news{ background:var(--glg-ivory); }
.glg-news-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:36px; }
.glg-news-card{
	border-top:2px solid var(--glg-brass); padding-top:20px;
	transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.glg-news-card:hover{
	transform:translateY(-6px);
	border-top-color:var(--glg-cyan);
	box-shadow:0 16px 30px -14px rgba(94,200,232,0.22);
}
.glg-news-date{ font-family:var(--glg-mono); font-size:.78rem; color:var(--glg-muted-on-light); letter-spacing:.05em; }
.glg-news-card h3{ font-size:1.2rem; color:var(--glg-navy-800); margin:10px 0; }
.glg-news-card p{ font-size:.95rem; color:var(--glg-muted-on-light); }
.glg-news-link{ color:var(--glg-brass); font-weight:600; font-size:.9rem; }
.glg-news-link:hover{ text-decoration:underline; }
.glg-news-thumb{ width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:var(--glg-radius); margin-bottom:16px; }
.glg-news-all{ margin-top:40px; text-align:center; }
.glg-news-all a{ color:var(--glg-navy-700); font-weight:600; font-size:.95rem; }
.glg-news-all a:hover{ color:var(--glg-brass); }

@media (max-width:880px){ .glg-news-grid{ grid-template-columns:1fr; } }

/* =========================================================
   CONTATTI
========================================================= */
/* =========================================================
   DOVE SIAMO
========================================================= */
.glg-locations{ background:var(--glg-ivory); }
.glg-locations-grid{
	display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
	gap:32px; margin-top:36px;
}
.glg-location-card h3{ font-size:1.25rem; color:var(--glg-navy-800); margin-bottom:8px; }
.glg-location-address{ color:var(--glg-muted-on-light); font-size:.95rem; margin-bottom:4px; }
.glg-location-phone a{ color:var(--glg-navy-700); font-weight:600; }
.glg-location-phone a:hover{ color:var(--glg-brass); }
.glg-location-map{
	position:relative; margin-top:16px;
	border-radius:6px; overflow:hidden;
	border:1px solid var(--glg-line-on-light);
}
.glg-location-map iframe{
	width:100%; height:220px; border:0; display:block; filter:grayscale(15%);
}
.glg-location-map-link{
	position:absolute; top:10px; left:10px; z-index:1;
	background:var(--glg-ivory); color:var(--glg-navy-800);
	font-size:.78rem; font-weight:600;
	padding:6px 12px; border-radius:4px;
	box-shadow:0 2px 8px rgba(0,0,0,0.15);
}
.glg-location-map-link:hover{ color:var(--glg-brass); }

/* =========================================================
   PROGETTI (portfolio per divisione)
========================================================= */
.glg-projects{ background:var(--glg-ivory-dim); }
.glg-projects-intro{ color:var(--glg-muted-on-light); max-width:65ch; margin-top:8px; }

.glg-projects-filters{ display:flex; flex-wrap:wrap; gap:10px; margin:28px 0 8px; }
.glg-projects-filter{
	background:transparent; border:1px solid var(--glg-line-on-light);
	color:var(--glg-navy-700); border-radius:20px; padding:8px 18px;
	font-size:.85rem; cursor:pointer; transition:all .18s ease;
}
.glg-projects-filter:hover{ border-color:var(--glg-cyan); color:var(--glg-navy-800); }
.glg-projects-filter.is-active{ background:var(--glg-navy-800); border-color:var(--glg-navy-800); color:var(--glg-ivory); }

.glg-projects-grid{
	display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
	gap:24px; margin-top:28px;
}
.glg-project-card{
	cursor:pointer; border-radius:8px; overflow:hidden;
	background:var(--glg-ivory); border:1px solid var(--glg-line-on-light);
	transition:transform .2s ease, box-shadow .2s ease;
}
.glg-project-card:hover{ transform:translateY(-5px); box-shadow:0 16px 32px -16px rgba(0,0,0,0.25); }
.glg-project-thumb{
	height:190px; background-size:cover; background-position:center;
	position:relative;
}
.glg-project-count{
	position:absolute; bottom:10px; right:10px;
	background:rgba(10,21,34,0.75); color:var(--glg-ivory);
	font-family:var(--glg-mono); font-size:.72rem;
	padding:4px 10px; border-radius:12px;
}
.glg-project-info{ padding:16px 18px; }
.glg-project-division{
	font-family:var(--glg-mono); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase;
	color:var(--glg-brass);
}
.glg-project-info h3{ font-size:1.05rem; color:var(--glg-navy-800); margin:6px 0 0; }

.glg-division-link-projects{ cursor:pointer; }

/* ---- Lightbox galleria a schermo intero ---- */
.glg-lightbox{
	position:fixed; inset:0; z-index:500;
	background:rgba(5,10,18,0.94);
	display:flex; align-items:center; justify-content:center;
	padding:40px;
}
.glg-lightbox-stage{ max-width:900px; width:100%; text-align:center; }
.glg-lightbox-stage img{
	max-width:100%; max-height:65vh; border-radius:6px;
	box-shadow:0 20px 60px rgba(0,0,0,0.5);
}
.glg-lightbox-caption{ margin-top:18px; color:var(--glg-ivory); }
.glg-lightbox-caption h3{ font-size:1.2rem; margin:0 0 6px; }
.glg-lightbox-caption p{ color:var(--glg-muted-on-dark); font-size:.92rem; max-width:60ch; margin:0 auto 10px; }
.glg-lightbox-caption a{ color:var(--glg-brass-light); font-weight:600; font-size:.9rem; }
.glg-lightbox-count{ display:block; margin-top:8px; font-family:var(--glg-mono); font-size:.78rem; color:var(--glg-muted-on-dark); }

.glg-lightbox-close, .glg-lightbox-prev, .glg-lightbox-next{
	position:absolute; background:none; border:1px solid rgba(255,255,255,0.25);
	color:var(--glg-ivory); border-radius:50%; cursor:pointer;
	display:flex; align-items:center; justify-content:center;
	transition:border-color .18s ease, color .18s ease;
}
.glg-lightbox-close:hover, .glg-lightbox-prev:hover, .glg-lightbox-next:hover{ border-color:var(--glg-cyan); color:var(--glg-cyan); }
.glg-lightbox-close{ top:24px; right:24px; width:42px; height:42px; font-size:1.5rem; }
.glg-lightbox-prev, .glg-lightbox-next{ top:50%; transform:translateY(-50%); width:50px; height:50px; font-size:1.8rem; }
.glg-lightbox-prev{ left:20px; }
.glg-lightbox-next{ right:20px; }

@media (max-width:700px){
	.glg-lightbox{ padding:16px; }
	.glg-lightbox-prev, .glg-lightbox-next{ width:40px; height:40px; font-size:1.4rem; }
	.glg-lightbox-prev{ left:6px; }
	.glg-lightbox-next{ right:6px; }
	.glg-lightbox-close{ top:12px; right:12px; }
}

/* =========================================================
   ARCHIVIO CATEGORIA (elenco articoli per divisione/blog)
========================================================= */
.glg-archive-hero{
	background:var(--glg-navy-800);
	padding:100px 0 60px;
}
.glg-archive-title{ font-size:clamp(2rem,4vw,3rem); color:var(--glg-ivory); margin-top:8px; }
.glg-archive-desc{ color:var(--glg-muted-on-dark); max-width:65ch; margin-top:14px; }

.glg-archive-list{ background:var(--glg-ivory); }
.glg-archive-grid{
	display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
	gap:28px;
}
.glg-archive-card{
	border:1px solid var(--glg-line-on-light); border-radius:8px; overflow:hidden;
	background:var(--glg-ivory); transition:transform .2s ease, box-shadow .2s ease;
}
.glg-archive-card:hover{ transform:translateY(-5px); box-shadow:0 16px 32px -16px rgba(0,0,0,0.22); }
.glg-archive-card-link{ display:block; color:inherit; }
.glg-archive-thumb{ height:180px; background-size:cover; background-position:center; }
.glg-archive-thumb-placeholder{ background:var(--glg-navy-800); display:flex; align-items:center; justify-content:center; }
.glg-archive-thumb-placeholder span{ font-family:var(--glg-serif); color:var(--glg-brass-light); font-size:1.6rem; }
.glg-archive-card-body{ padding:18px 20px; }
.glg-archive-date{ font-family:var(--glg-mono); font-size:.72rem; color:var(--glg-muted-on-light); text-transform:uppercase; letter-spacing:.05em; }
.glg-archive-card-body h2{ font-size:1.1rem; color:var(--glg-navy-800); margin:8px 0; }
.glg-archive-card-body p{ font-size:.9rem; color:var(--glg-muted-on-light); margin-bottom:10px; }
.glg-archive-readmore{ color:var(--glg-brass); font-weight:600; font-size:.85rem; }
.glg-archive-card:hover .glg-archive-readmore{ color:var(--glg-cyan); }

.glg-archive-pagination{ margin-top:44px; display:flex; justify-content:center; gap:8px; }
.glg-archive-pagination .page-numbers{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:38px; height:38px; padding:0 10px;
	border:1px solid var(--glg-line-on-light); border-radius:6px;
	color:var(--glg-navy-700); font-size:.88rem;
}
.glg-archive-pagination .page-numbers.current{ background:var(--glg-navy-800); border-color:var(--glg-navy-800); color:var(--glg-ivory); }
.glg-archive-pagination .page-numbers:hover{ border-color:var(--glg-cyan); }

.glg-archive-back{ margin-top:40px; }
.glg-archive-back a{ color:var(--glg-navy-700); font-weight:600; font-size:.92rem; }
.glg-archive-back a:hover{ color:var(--glg-brass); }

/* =========================================================
   SINGOLO ARTICOLO
========================================================= */
.glg-single-hero{ background:var(--glg-navy-800); padding:110px 0 50px; position:relative; overflow:hidden; }
.glg-single-hero-media{ position:absolute; inset:0; z-index:0; }
.glg-single-hero-media img{ width:100%; height:100%; object-fit:cover; }
.glg-single-hero-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,21,34,0.55) 0%, rgba(10,21,34,0.9) 100%); }
.glg-single-hero-inner{ position:relative; z-index:1; }
.glg-single-title{ font-size:clamp(1.9rem,3.6vw,2.8rem); color:var(--glg-ivory); margin:8px 0; }
.glg-single-date{ font-family:var(--glg-mono); font-size:.78rem; color:var(--glg-muted-on-dark); }

.glg-single-content{ background:var(--glg-ivory); }
.glg-single-container{ max-width:760px; }
.glg-single-content .glg-prose{ font-size:1.08rem; color:var(--glg-ink); }
.glg-single-content .glg-prose img{ border-radius:8px; margin:20px 0; }
.glg-single-content .glg-prose p{ margin-bottom:1.3em; }

.glg-contact{ background:var(--glg-navy-900); }
.glg-contact-grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:64px; }
.glg-contact-intro{ color:var(--glg-muted-on-dark); max-width:44ch; }
.glg-contact-list{ margin-top:28px; }
.glg-contact-list li{
	padding:16px 0; border-bottom:1px solid var(--glg-line-on-dark);
	color:var(--glg-muted-on-dark); display:flex; flex-direction:column; gap:4px;
}
.glg-contact-list li strong{ font-family:var(--glg-mono); font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; color:var(--glg-brass); }
.glg-contact-list li a{ color:var(--glg-ivory); font-size:1.05rem; }
.glg-contact-list li a:hover{ color:var(--glg-brass-light); }

.glg-contact-form{ display:flex; flex-direction:column; gap:6px; }
.glg-contact-form label{ font-family:var(--glg-mono); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--glg-muted-on-dark); margin-top:14px; }
.glg-contact-form input, .glg-contact-form textarea{
	background:var(--glg-navy-700); border:1px solid var(--glg-line-on-dark);
	color:var(--glg-ivory); padding:12px 14px; border-radius:var(--glg-radius); font-family:var(--glg-sans); font-size:.98rem;
}
.glg-contact-form input:focus, .glg-contact-form textarea:focus{ outline:2px solid var(--glg-brass); border-color:var(--glg-brass); }
.glg-contact-form button{ margin-top:22px; align-self:flex-start; border:none; cursor:pointer; }
.glg-honeypot{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; }

.glg-form-notice{ padding:14px 18px; border-radius:var(--glg-radius); margin-bottom:20px; font-size:.92rem; }
.glg-form-notice-ok{ background:rgba(184,147,79,0.15); color:var(--glg-brass-light); border:1px solid var(--glg-brass); }
.glg-form-notice-error{ background:rgba(200,60,60,0.12); color:#e28a8a; border:1px solid #a44; }

@media (max-width:880px){ .glg-contact-grid{ grid-template-columns:1fr; } }

/* =========================================================
   FOOTER
========================================================= */
.glg-footer{ background:var(--glg-navy-900); border-top:1px solid var(--glg-line-on-dark); padding:56px 0 0; }
.glg-footer-inner{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:32px; padding-bottom:36px; }
.glg-footer-brand p{ color:var(--glg-muted-on-dark); font-size:.88rem; margin:6px 0 0; }
.glg-footer-logo{ margin-bottom:4px; }
.glg-footer-logo img{ max-height:var(--glg-footer-logo-size, 54px); width:auto; }
.glg-footer-links{ display:flex; flex-direction:column; gap:10px; }
.glg-footer-links a{ color:var(--glg-muted-on-dark); font-size:.9rem; }
.glg-footer-links a:hover{ color:var(--glg-cyan); }
.glg-footer-social{ display:flex; flex-direction:column; gap:10px; text-align:right; }
.glg-footer-social a{ color:var(--glg-muted-on-dark); font-size:.9rem; }
.glg-footer-social a:hover{ color:var(--glg-brass-light); }
.glg-footer-bottom{
	border-top:1px solid var(--glg-line-on-dark); padding:22px 0 30px;
	display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:space-between;
	font-size:.8rem; color:var(--glg-muted-on-dark);
}
.glg-advisor-note{ font-style:italic; opacity:.8; }
.glg-footer-bottom a{ color:var(--glg-muted-on-dark); }
.glg-footer-bottom a:hover{ color:var(--glg-cyan); }

@media (max-width:600px){
	.glg-footer-inner{ flex-direction:column; }
	.glg-footer-social{ text-align:left; }
}

/* =========================================================
   ASSISTENTE AI — widget di chat fluttuante
========================================================= */
.glg-ai-widget{
	position:fixed; right:24px; bottom:24px; z-index:200;
	font-family:var(--glg-sans);
}
.glg-ai-toggle{
	position:relative;
	display:flex; align-items:center; gap:9px;
	background:rgba(13,27,46,0.88); color:var(--glg-ivory);
	border:1px solid var(--glg-line-on-dark); border-radius:30px;
	padding:11px 18px; cursor:pointer;
	font-size:.85rem; font-weight:600;
	box-shadow:0 6px 18px -8px rgba(0,0,0,0.45);
	transition:box-shadow .25s ease, transform .2s ease, border-color .25s ease, background .25s ease;
}
.glg-ai-toggle::before{
	content:"";
	position:absolute; inset:-4px;
	border-radius:inherit;
	border:1.5px solid var(--glg-cyan);
	opacity:0;
	animation:glg-ai-breathe 3.2s ease-in-out infinite;
	pointer-events:none;
}
@keyframes glg-ai-breathe{
	0%{ opacity:.55; transform:scale(0.97); }
	70%{ opacity:0; transform:scale(1.12); }
	100%{ opacity:0; transform:scale(1.12); }
}
@media (prefers-reduced-motion: reduce){
	.glg-ai-toggle::before{ animation:none; display:none; }
}
.glg-ai-toggle:hover{
	transform:translateY(-2px);
	border-color:var(--glg-cyan);
	background:var(--glg-navy-800);
	box-shadow:0 12px 28px -10px rgba(0,0,0,0.5), 0 0 18px -2px var(--glg-cyan-glow);
}
.glg-ai-toggle-icon{ display:flex; color:var(--glg-muted-on-dark); transition:color .25s ease; }
.glg-ai-toggle-icon svg{ width:24px; height:24px; }
.glg-ai-toggle:hover .glg-ai-toggle-icon{ color:var(--glg-cyan); }

.glg-ai-antenna{
	animation:glg-ai-antenna-pulse 2.4s ease-in-out infinite;
	transform-origin:center;
	transform-box:fill-box;
}
.glg-ai-antenna-delay{ animation-delay:.3s; }
@keyframes glg-ai-antenna-pulse{
	0%, 100%{ opacity:.5; transform:scale(1); }
	50%{ opacity:1; transform:scale(1.3); }
}
.glg-ai-eye{
	animation:glg-ai-blink 4s ease-in-out infinite;
	transform-origin:center;
	transform-box:fill-box;
}
@keyframes glg-ai-blink{
	0%, 90%, 100%{ transform:scaleY(1); }
	95%{ transform:scaleY(.15); }
}
@media (prefers-reduced-motion: reduce){
	.glg-ai-antenna, .glg-ai-eye{ animation:none; }
}

.glg-ai-panel{
	display:none;
	position:absolute; right:0; bottom:70px;
	width:400px; max-width:calc(100vw - 32px);
	height:540px; max-height:75vh;
	background:var(--glg-navy-900);
	border:1px solid var(--glg-line-on-dark);
	border-radius:12px;
	box-shadow:0 20px 50px -16px rgba(0,0,0,0.6);
	flex-direction:column;
	overflow:hidden;
}
.glg-ai-panel.is-open{ display:flex; }
.glg-ai-panel-header{
	display:flex; align-items:center; justify-content:space-between;
	padding:14px 18px;
	background:var(--glg-navy-800);
	border-bottom:1px solid var(--glg-line-on-dark);
	color:var(--glg-ivory); font-weight:600; font-size:.95rem;
}
.glg-ai-panel-header button{
	background:none; border:none; color:var(--glg-muted-on-dark);
	font-size:1.4rem; line-height:1; cursor:pointer; padding:0 4px;
}
.glg-ai-panel-header button:hover{ color:var(--glg-cyan); }

.glg-ai-messages{
	flex:1; overflow-y:auto; padding:18px 14px 18px 18px;
	display:flex; flex-direction:column; gap:14px;
}
.glg-ai-msg{ display:flex; }
.glg-ai-msg-user{ justify-content:flex-end; }
.glg-ai-msg-assistant{ justify-content:flex-start; }
.glg-ai-bubble{
	max-width:88%; padding:12px 16px; border-radius:12px;
	font-size:.95rem; line-height:1.6; white-space:pre-wrap;
}
.glg-ai-msg-assistant .glg-ai-bubble{
	background:var(--glg-navy-700); color:var(--glg-ivory);
	border:1px solid var(--glg-line-on-dark);
	border-bottom-left-radius:2px;
}
.glg-ai-msg-user .glg-ai-bubble{
	background:var(--glg-brass); color:var(--glg-navy-900);
	border-bottom-right-radius:2px;
}
.glg-ai-typing .glg-ai-bubble{ opacity:.6; }

.glg-ai-faq{
	display:flex; flex-wrap:wrap; gap:8px;
	padding:0 16px 14px;
}
.glg-ai-faq-btn{
	background:transparent; color:var(--glg-cyan);
	border:1px solid var(--glg-cyan); border-radius:16px;
	padding:8px 15px; font-size:.85rem; cursor:pointer;
	transition:background .18s ease, color .18s ease;
}
.glg-ai-faq-btn:hover{ background:var(--glg-cyan); color:var(--glg-navy-900); }

.glg-ai-form{
	display:flex; gap:8px; padding:12px;
	border-top:1px solid var(--glg-line-on-dark);
	background:var(--glg-navy-800);
}
.glg-ai-form input{
	flex:1; background:var(--glg-navy-700); border:1px solid var(--glg-line-on-dark);
	border-radius:20px; padding:10px 16px; color:var(--glg-ivory); font-size:.92rem;
}
.glg-ai-form input:focus{ outline:none; border-color:var(--glg-cyan); }
.glg-ai-form button{
	width:38px; height:38px; border-radius:50%; border:none;
	background:var(--glg-cyan); color:var(--glg-navy-900);
	font-size:1rem; cursor:pointer; flex-shrink:0;
	transition:background .18s ease;
}
.glg-ai-form button:hover{ background:var(--glg-brass-light); }

@media (max-width:500px){
	.glg-ai-widget{ right:16px; bottom:16px; }
	.glg-ai-toggle-label{ display:none; }
	.glg-ai-toggle{ padding:17px; border-radius:50%; }
	.glg-ai-toggle-icon svg{ width:30px; height:30px; }
	.glg-ai-panel{ width:calc(100vw - 24px); height:70vh; max-height:640px; right:-8px; }
	.glg-ai-bubble{ font-size:1rem; }
}

/* =========================================================
   CURSORE MAGNETICO
========================================================= */
body.glg-custom-cursor, body.glg-custom-cursor *{ cursor:none !important; }

.glg-cursor-ring{
	position:fixed; top:0; left:0; z-index:9999;
	width:32px; height:32px; margin:-16px 0 0 -16px;
	border:1px solid var(--glg-cyan);
	border-radius:50%;
	pointer-events:none;
	transition:width .2s ease, height .2s ease, margin .2s ease, background .2s ease, border-color .2s ease;
}
.glg-cursor-ring.is-active{
	width:52px; height:52px; margin:-26px 0 0 -26px;
	background:rgba(94,200,232,0.12);
	border-color:var(--glg-brass-light);
}
.glg-cursor-dot{
	position:fixed; top:0; left:0; z-index:9999;
	width:5px; height:5px; margin:-2.5px 0 0 -2.5px;
	border-radius:50%; background:var(--glg-cyan);
	pointer-events:none;
}

@media (max-width:880px){
	.glg-cursor-ring, .glg-cursor-dot{ display:none; }
}

/* =========================================================
   BANNER COOKIE
========================================================= */
.glg-cookie-banner{
	position:fixed; left:0; right:0; bottom:0; z-index:400;
	background:var(--glg-navy-900);
	border-top:1px solid var(--glg-brass);
	padding:18px 24px;
	display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px;
	transform:translateY(110%);
	transition:transform .4s ease;
}
.glg-cookie-banner.is-visible{ transform:translateY(0); }
.glg-cookie-text{ color:var(--glg-muted-on-dark); font-size:.88rem; max-width:70ch; margin:0; }
.glg-cookie-actions{ display:flex; align-items:center; gap:18px; flex-shrink:0; }
.glg-cookie-settings{ color:var(--glg-brass-light); font-size:.85rem; font-weight:600; }
.glg-cookie-settings:hover{ color:var(--glg-cyan); }
.glg-cookie-accept{
	background:var(--glg-brass); color:var(--glg-navy-900); border:none;
	padding:10px 22px; border-radius:4px; font-weight:600; font-size:.88rem;
	cursor:pointer; transition:background .18s ease;
}
.glg-cookie-accept:hover{ background:var(--glg-brass-light); }

@media (max-width:600px){
	.glg-cookie-banner{ flex-direction:column; align-items:flex-start; padding:16px 18px; }
	.glg-cookie-actions{ width:100%; justify-content:space-between; }
}
