:root{
	--grloc-green:#2c897e;
	--grloc-deep:#31616c;
	--grloc-ink:#29474a;
	--grloc-copy:#415b5e;
	--grloc-muted:#718184;
	--grloc-soft:#f3f8f7;
	--grloc-soft-2:#f7faf9;
	--grloc-line:#dce8e6;
	--grloc-white:#fff;
}
.grloc-main{
	--grt-main:#2c897e;--grt-accent:#31616c;--grt-ink:#29474a;--grt-copy:#415b5e;--grt-muted:#718184;--grt-line:#dce8e6;--grt-soft:#f3f8f7;
	--grcs-main:#2c897e;--grcs-accent:#31616c;--grcs-ink:#29474a;--grcs-copy:#415b5e;--grcs-muted:#718184;--grcs-line:#dce8e6;--grcs-soft:#f3f8f7;--grcs-soft-2:#f7faf9;
	--grr-teal:#2c897e;--grr-accent:#31616c;--grr-ink:#29474a;--grr-copy:#415b5e;--grr-muted:#718184;--grr-deep:#29474a;--grr-dark:#415b5e;--grr-line:#dce8e6;--grr-pale:#eff8f6;--grr-pale-2:#f7fbfa;
	background:#fff;
	color:var(--grloc-ink);
	font-family:inherit;
	font-size:16px;
}
.grloc-main *{box-sizing:border-box}
.grloc-shell{width:min(1280px,calc(100% - 56px));margin:0 auto}

/* Breadcrumbs */
.grloc-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:22px;padding-bottom:17px;font-size:13px;line-height:1.45;color:#788789}
.grloc-breadcrumbs a{color:var(--grloc-deep);text-decoration:none}
.grloc-breadcrumbs a:hover{text-decoration:underline}

/* Hero: intentionally follows the restrained Training/Core page scale. */
.grloc-hero{background:#fff;border-top:1px solid #f0f3f3}
.grloc-hero__inner{display:grid;grid-template-columns:minmax(0,840px) minmax(230px,1fr);gap:72px;align-items:center;padding:40px 0 52px}
.grloc-hero__inner--text{grid-template-columns:minmax(0,840px)}
.grloc-kicker,.grloc-label{display:block;color:var(--grloc-green);font-weight:700;font-size:12px;line-height:1.35;text-transform:uppercase;letter-spacing:.095em}
.grloc-hero h1,.grloc-archive-hero h1{font-family:inherit!important;font-size:clamp(41px,4.2vw,58px)!important;line-height:1.06!important;letter-spacing:-.026em!important;color:var(--grloc-ink)!important;margin:0!important;max-width:850px;font-weight:700!important}
.grloc-kicker+.grloc-hero h1{margin-top:0!important}
.grloc-hero .grloc-kicker{margin-bottom:11px}
.grloc-lead,.grloc-archive-hero p{font-size:clamp(18px,1.55vw,21px);line-height:1.58;color:#486669;max-width:800px;margin:19px 0 0}
.grloc-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.grloc-button{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:0!important;font-size:14px;line-height:1.35;font-weight:700;text-decoration:none!important;transition:background .15s ease,color .15s ease}
.grloc-button--primary{background:var(--grloc-green);color:#fff!important;border:1px solid var(--grloc-green)}
.grloc-button--primary:hover{background:var(--grloc-deep);border-color:var(--grloc-deep);color:#fff!important}
.grloc-button--secondary{border:1px solid var(--grloc-green);color:var(--grloc-deep)!important;background:#fff}
.grloc-button--secondary:hover{background:var(--grloc-soft);color:var(--grloc-deep)!important}
.grloc-hero__image{aspect-ratio:4/3;border-radius:0;background-size:cover;background-position:center}

/* Upper decision-making region + sidebar */
.grloc-upper-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:46px;align-items:start;padding:52px 0 18px}
.grloc-upper-main{min-width:0}
.grloc-upper-main .grloc-section{padding:0 0 42px;border-top:1px solid var(--grloc-line);background:#fff}
.grloc-upper-main .grloc-section:first-child{border-top:0;padding-top:0}
.grloc-upper-main .grloc-shell{width:100%;margin:0}
.grloc-upper-main .grloc-section-heading{margin-bottom:22px}
.grloc-upper-main .grloc-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

.grloc-sidebar{position:sticky;top:40px;display:grid;gap:16px}
.admin-bar .grloc-sidebar{top:72px}
.grloc-sidebar-card{border:1px solid var(--grloc-line);background:#fff;padding:23px}
.grloc-sidebar-card--cta{background:var(--grloc-soft);border-top:3px solid var(--grloc-green)}
.grloc-sidebar-card--quiet{background:var(--grloc-soft-2)}
.grloc-sidebar-eyebrow{display:block;color:var(--grloc-green);font-size:11px;line-height:1.35;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:7px}
.grloc-sidebar h2{font-family:inherit!important;font-size:19px!important;line-height:1.35!important;letter-spacing:-.01em!important;color:var(--grloc-ink)!important;font-weight:700!important;margin:0 0 11px!important}
.grloc-sidebar-card p{font-size:15px;line-height:1.62;color:var(--grloc-copy);margin:0 0 17px}
.grloc-sidebar-button{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--grloc-green);color:#fff!important;text-decoration:none!important;padding:13px 15px;border-radius:0!important;font-weight:700;font-size:13px;line-height:1.4;transition:background .15s ease}
.grloc-sidebar-button:hover{background:var(--grloc-deep);color:#fff!important}
.grloc-sidebar-button span{font-size:18px;line-height:1}
.grloc-sidebar-facts{margin:0}
.grloc-sidebar-facts>div{padding:12px 0;border-bottom:1px solid var(--grloc-line)}
.grloc-sidebar-facts>div:first-child{padding-top:0}
.grloc-sidebar-facts>div:last-child{padding-bottom:0;border-bottom:0}
.grloc-sidebar-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.075em;color:var(--grloc-muted);font-weight:700;margin-bottom:4px}
.grloc-sidebar-facts dd{font-size:15px;line-height:1.5;color:var(--grloc-ink);margin:0;font-weight:600}
.grloc-sidebar-nav{display:grid}
.grloc-sidebar-nav a{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid var(--grloc-line);color:var(--grloc-deep)!important;text-decoration:none!important;font-size:13px;line-height:1.4;font-weight:650}
.grloc-sidebar-nav a:first-child{border-top:0;padding-top:0}
.grloc-sidebar-nav a:last-child{padding-bottom:0}
.grloc-sidebar-nav a:hover{color:var(--grloc-green)!important}

/* Main sections */
.grloc-section{padding:48px 0}
.grloc-section--tinted{background:var(--grloc-soft)}
.grloc-section-heading{max-width:800px;margin-bottom:22px}
.grloc-section-heading h2{font-family:inherit!important;font-size:28px!important;line-height:1.22!important;letter-spacing:-.018em!important;color:var(--grloc-ink)!important;margin:0 0 10px!important;font-weight:700!important}
.grloc-section-heading p{font-size:16px;line-height:1.68;color:var(--grloc-copy);margin:0;max-width:760px}
.grloc-prose{max-width:820px;font-size:16px;line-height:1.72;color:var(--grloc-copy)}
.grloc-prose p{margin:0 0 17px!important;padding:0!important}
.grloc-prose p:last-child{margin-bottom:0!important}

/* Connected cards */
.grloc-course-grid,.grloc-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grloc-course-grid .grt-training-card,.grloc-case-grid .grcs-case-card{height:100%}
.grloc-sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.grloc-sector-card{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:22px 23px;background:#fff;border:1px solid var(--grloc-line);border-radius:0}
.grloc-number{font-size:12px;line-height:1.45;font-weight:700;color:var(--grloc-green);padding-top:2px}
.grloc-sector-card h3,.grloc-proof-grid h3,.grloc-card h3{font-family:inherit!important;font-size:17px!important;line-height:1.4!important;color:var(--grloc-ink)!important;margin:0 0 7px!important;font-weight:700!important}
.grloc-sector-card h3 a,.grloc-card h3 a{color:inherit!important;text-decoration:none!important}
.grloc-sector-card p,.grloc-proof-grid p,.grloc-card p{font-size:16px;line-height:1.6;color:var(--grloc-copy);margin:0}

.grloc-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--grloc-line);border-bottom:1px solid var(--grloc-line)}
.grloc-proof-grid article{padding:25px 27px 27px;border-left:1px solid var(--grloc-line);background:#fff}
.grloc-proof-grid article:first-child{border-left:0;padding-left:0}
.grloc-proof-grid article:last-child{padding-right:0}
.grloc-proof-mark{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--grloc-soft);color:var(--grloc-green);font-size:11px;font-weight:800;margin-bottom:13px}

.grloc-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grloc-quote{position:relative;padding:28px 30px;background:#fff;border:1px solid var(--grloc-line);border-radius:0}
.grloc-quote__mark{font-size:44px;line-height:1;color:var(--grloc-green);opacity:.55}
.grloc-quote blockquote{margin:5px 0 16px!important;padding:0!important;border:0!important;font-size:16px;line-height:1.68;color:var(--grloc-ink)}
.grloc-quote footer{font-size:13px;font-weight:600;color:var(--grloc-muted)}

.grloc-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grloc-resource-grid .grr-curated-card{height:100%}
.grloc-knowledge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.grloc-knowledge-card{display:flex;flex-direction:column;border:1px solid var(--grloc-line);background:#fff;color:inherit!important;text-decoration:none!important;border-radius:0;overflow:hidden}
.grloc-knowledge-card__image{display:block;aspect-ratio:16/9;background-size:cover;background-position:center}
.grloc-knowledge-card__copy{display:flex;flex-direction:column;gap:8px;padding:19px}
.grloc-knowledge-card__copy strong{font-size:17px;line-height:1.4;color:var(--grloc-ink)}
.grloc-knowledge-card__copy>span:last-child{font-size:14px;line-height:1.55;color:var(--grloc-muted)}
.grloc-section-link{margin:24px 0 0}
.grloc-text-link{font-size:14px;font-weight:700;color:var(--grloc-green)!important;text-decoration:none!important}
.grloc-text-link:hover{text-decoration:underline!important}

.grloc-place-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}
.grloc-place-list span{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid var(--grloc-line);font-size:13px;color:var(--grloc-deep)}

/* FAQ */
.grloc-faq-list{max-width:900px;border-top:1px solid var(--grloc-line)}
.grloc-faq-list details{border-bottom:1px solid var(--grloc-line)}
.grloc-faq-list summary{cursor:pointer;list-style:none;font-size:16px;line-height:1.5;font-weight:700;color:var(--grloc-ink);padding:18px 38px 18px 0;position:relative}
.grloc-faq-list summary::-webkit-details-marker{display:none}
.grloc-faq-list summary:after{content:'+';position:absolute;right:4px;top:14px;font-size:23px;color:var(--grloc-green);font-weight:500}
.grloc-faq-list details[open] summary:after{content:'–'}
.grloc-faq-list details div{padding:0 40px 18px 0;color:var(--grloc-copy);font-size:16px;line-height:1.7}

/* Closing enquiry: same visual language as Training rather than a separate dark panel. */
.grloc-enquiry{padding-top:36px;padding-bottom:72px}
.grloc-enquiry__panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:42px;padding:36px 40px;background:var(--grloc-soft);border:1px solid var(--grloc-line);border-top:3px solid var(--grloc-green);border-radius:0;color:var(--grloc-ink)}
.grloc-enquiry__panel h2{font-family:inherit!important;font-size:28px!important;line-height:1.2!important;letter-spacing:-.018em!important;color:var(--grloc-ink)!important;margin:0 0 10px!important;font-weight:700!important}
.grloc-enquiry__panel .grloc-prose{color:var(--grloc-copy);max-width:720px}
.grloc-enquiry__panel .grloc-button--primary{background:var(--grloc-green);color:#fff!important;white-space:nowrap}

.grloc-card{padding:23px;background:#fff;border:1px solid var(--grloc-line);border-radius:0}

/* Archive */
.grloc-archive-hero{padding:40px 0 52px;border-top:1px solid #f0f3f3}
.grloc-archive-hero .grloc-kicker{margin-bottom:11px}
.grloc-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grloc-location-card{padding:27px 28px;border:1px solid var(--grloc-line);border-radius:0}
.grloc-location-card h2{font-family:inherit!important;font-size:22px!important;line-height:1.3!important;margin:10px 0 11px!important;color:var(--grloc-ink)!important;font-weight:700!important}
.grloc-location-card h2 a{color:inherit!important;text-decoration:none!important}
.grloc-location-card p{font-size:16px;line-height:1.64;color:var(--grloc-copy);margin:0 0 18px}

@media(max-width:1100px){
	.grloc-upper-layout{grid-template-columns:minmax(0,1fr) 300px;gap:34px}
	.grloc-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.grloc-proof-grid article:nth-child(3){border-left:0}
	.grloc-proof-grid article:nth-child(n+3){border-top:1px solid var(--grloc-line)}
	.grloc-course-grid,.grloc-case-grid,.grloc-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.grloc-knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
	.grloc-hero__inner{grid-template-columns:1fr;gap:32px}
	.grloc-hero__image{max-width:720px}
	.grloc-upper-layout{grid-template-columns:1fr;gap:26px;padding-top:42px}
	.grloc-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr));order:-1}
	.grloc-sidebar-card--cta{grid-column:1/-1}
	.grloc-upper-main .grloc-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.grloc-quote-grid,.grloc-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
	.grloc-shell{width:min(100% - 32px,1280px)}
	.grloc-breadcrumbs{padding-top:18px}
	.grloc-hero__inner{padding:30px 0 40px}
	.grloc-hero h1,.grloc-archive-hero h1{font-size:36px!important}
	.grloc-lead{font-size:17px;line-height:1.55}
	.grloc-actions{flex-direction:column;align-items:stretch}
	.grloc-button{width:100%}
	.grloc-upper-layout{padding-top:34px;padding-bottom:8px}
	.grloc-sidebar{grid-template-columns:1fr}
	.grloc-sidebar-card--cta{grid-column:auto}
	.grloc-section{padding:40px 0}
	.grloc-upper-main .grloc-section{padding-bottom:36px}
	.grloc-section-heading h2,.grloc-enquiry__panel h2{font-size:25px!important}
	.grloc-course-grid,.grloc-case-grid,.grloc-resource-grid,.grloc-sector-grid,.grloc-proof-grid,.grloc-quote-grid,.grloc-knowledge-grid,.grloc-location-grid,.grloc-upper-main .grloc-course-grid{grid-template-columns:1fr}
	.grloc-proof-grid{border-top:0;border-bottom:0}
	.grloc-proof-grid article,.grloc-proof-grid article:first-child,.grloc-proof-grid article:last-child,.grloc-proof-grid article:nth-child(3){border-left:0;border-top:1px solid var(--grloc-line);padding:22px 0}
	.grloc-sector-card{grid-template-columns:38px 1fr;padding:20px}
	.grloc-enquiry__panel{grid-template-columns:1fr;padding:28px 24px;gap:22px}
	.grloc-enquiry__panel .grloc-button{width:100%}
}
