/*
Theme Name: nimblegpu
Version: 1.3.0
Description: Editorial green compute theme, with nimblegpu company branding.
Requires PHP: 8.3
Text Domain: anloog
*/
@font-face{font-family:Manrope;src:url(assets/manrope-400.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-500.ttf) format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-600.ttf) format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-700.ttf) format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-800.ttf) format('truetype');font-weight:800;font-display:swap}
:root{--paper:#f7f6f1;--ink:#092e22;--green:#47750a;--line:#d5d9ce;--muted:#49534d;--lime:#b7e653}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8cb92e;outline-offset:4px}button,input,textarea,select{font:inherit}button,a,input,select{touch-action:manipulation}img{display:block;width:100%;height:auto;object-fit:cover}h1,h2,h3,p{margin:0}h1{font-size:clamp(40px,5.6vw,80px);line-height:1.04;letter-spacing:-.055em;font-weight:800}h2{font-size:clamp(30px,4.1vw,59px);line-height:1.1;letter-spacing:-.045em;font-weight:800}h3{font-size:22px;line-height:1.3;letter-spacing:-.025em;font-weight:800}p{color:var(--muted);margin-top:18px;line-height:1.65}ul{padding-left:20px}.wrap{max-width:1440px;width:100%;padding:0 64px;margin:auto}.site-header{max-width:1312px;margin:auto;min-height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:32px}.wordmark{font-size:40px;letter-spacing:-2.4px;font-weight:800;line-height:1}.site-nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}.site-nav a{padding:24px 0}.site-nav details{position:relative}.site-nav summary{cursor:pointer;list-style:none;padding:24px 0}.site-nav summary::-webkit-details-marker{display:none}.site-nav details[open] .submenu{position:absolute;z-index:20;top:64px;left:-24px;width:250px;padding:12px 24px;background:var(--paper);border:1px solid var(--line)}.submenu a{display:block;padding:10px 0}.console-link{padding-left:28px!important;border-left:1px solid var(--line);font-size:13px}.menu-toggle{display:none}.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:10px}.hero{padding-top:64px;overflow:hidden}.hero-copy{position:relative;z-index:2}.hero-copy>div{max-width:1000px}.hero .eyebrow{font-size:12px;letter-spacing:.18em;display:block;margin-bottom:28px}.hero h1{max-width:1080px}.hero h1 span{color:var(--green)}.hero h1 span:first-child{color:var(--ink)}.hero h1 p{margin:0}.hero p{max-width:920px;font-size:20px;line-height:1.6;margin-top:28px}.hero .space-top:has(>a){display:flex;gap:28px;align-items:center;margin-top:32px}.button,.button-outline,button[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:14px 32px;border-radius:5px;font-size:15px;font-weight:800;cursor:pointer}.button,button[type=submit]{background:#89be14;color:var(--ink);border:1px solid #89be14}.button:hover,button[type=submit]:hover{background:#a7d94a;color:var(--ink)}.button-outline{border:1px solid var(--ink);background:transparent}.hero-landscape{height:500px;object-position:center;margin-top:24px}.certification-band{border-bottom:1px solid var(--line);padding-top:28px;padding-bottom:28px;font-size:12px}.certification-band>a{display:flex;justify-content:space-between;gap:50px;align-items:center}.certification-band p{margin:0;max-width:1040px;color:var(--muted)}.certification-band span{white-space:nowrap;text-decoration:underline}.section{padding:78px 0;border-bottom:1px solid var(--line)}.section>.wrap>div>div:has(>h2){max-width:950px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;display:inline-block;margin-bottom:24px;color:var(--muted)}.eyebrow>span:empty{display:none}.space-top{margin-top:24px}.grid{display:grid;gap:38px;margin-top:40px}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid p{font-size:15px}.grid .grid{margin-top:20px}.feature{padding:20px 0;border-top:1px solid var(--line)}.source-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0}.source-hidden{display:none}.services{padding-top:72px;padding-bottom:70px}.services h2{max-width:880px}.services .grid{gap:0;margin-top:50px}.service-column{padding:0 36px;border-left:1px solid var(--line)}.service-column:first-child{padding-left:0;border:0}.service-column:last-child{padding-right:0}.service-column:before{content:attr(data-index);display:block;color:#adb3a5;font-size:68px;line-height:1;margin-bottom:20px;letter-spacing:-.04em}.service-column h3{font-size:23px}.service-column ul{font-size:13px;line-height:1.8;margin:22px 0}.service-column>a,.service-column div>a{display:block}.service-column a span:last-child{display:inline-block;margin-top:22px;text-decoration:underline}.green-section{background:var(--ink);color:var(--paper)}.green-section .grid{margin:0;align-items:start;gap:68px}.green-section p,.green-section .eyebrow{color:#ced8ca}.green-section img{height:480px;object-fit:cover}.green-section ul{font-size:14px;line-height:1.65;margin-top:28px;list-style:none;padding:0}.green-section li{margin-bottom:14px}.green-section a{color:var(--lime);display:inline-block;text-decoration:underline}.green-section .cols-2 .cols-2{grid-template-columns:1fr 1fr}.green-section .source-icon{color:var(--lime)}.why-section{background:#eeefe6}.console-section{background:#e6eadf}.section-image{display:none}.page-hero{padding-top:70px;padding-bottom:70px;background:#eeefe6}.page-hero h1{font-size:clamp(38px,4.6vw,66px);max-width:1050px;margin-top:30px}.page-hero p{font-size:19px;max-width:850px}.page-hero nav{font-size:13px}.page-hero a.button{margin-top:32px}.section img{max-height:540px}.section article{max-width:850px;margin:auto}.section article h2{font-size:34px;margin-top:44px}.section article p{font-size:18px}.faq-toggle{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;padding:22px 0;background:none;border:0;border-top:1px solid var(--line);color:var(--ink);font-weight:700;cursor:pointer}.faq-toggle[aria-expanded=false]+div{display:none}.faq-toggle+div{padding-bottom:24px}form{max-width:920px}form .grid{margin-top:18px;gap:18px}input,select,textarea{width:100%;min-height:52px;border:1px solid #bdc7b7;border-radius:3px;background:#fff;color:var(--ink);padding:13px 16px;margin-top:18px}form .grid input{margin:0}textarea{min-height:150px}label{display:block;font-size:13px;margin-top:20px}form button{margin-top:24px}form p{font-size:12px}table{border-collapse:collapse;width:100%;margin-top:30px}th,td{padding:18px;text-align:left;border-bottom:1px solid var(--line)}.site-footer{padding:60px 64px 28px;background:var(--ink);color:var(--paper)}.site-footer>div{max-width:1312px;margin:auto}.site-footer>div>div:first-child{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:38px}.site-footer p{color:#ced8ca;font-size:13px}.site-footer h3{font-size:16px;margin-bottom:20px}.site-footer ul{list-style:none;padding:0;font-size:13px}.site-footer li{margin-bottom:12px}.site-footer .wordmark{display:block;margin-bottom:22px}.site-footer>div>div:last-child{margin-top:40px;padding-top:24px;border-top:1px solid #49604f;font-size:12px;color:#ced8ca}.site-footer a:hover{color:var(--lime)}.not-found{padding:100px 64px}.pagination{display:flex;gap:20px}.empty-image{display:none}@media(min-width:1441px){.hero-landscape{height:520px}}@media(max-width:1100px){.wrap{padding:0 36px}.site-header{margin:0 36px}.site-nav{gap:22px}.hero h1{font-size:68px}.hero p{font-size:18px}.hero-landscape{height:380px}.cols-4,.cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}.green-section .grid{gap:32px}.site-footer{padding:50px 36px}.site-footer>div>div:first-child{grid-template-columns:1fr 1fr}}@media(max-width:760px){.wrap{padding:0 24px}.site-header{margin:0 24px;min-height:74px}.wordmark{font-size:34px}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:10px 16px;border-radius:3px;color:var(--ink)}.site-nav{display:none}.site-nav.open{position:absolute;top:74px;left:0;right:0;z-index:30;display:flex;flex-direction:column;align-items:stretch;background:var(--paper);padding:20px 24px;gap:0;border-bottom:1px solid var(--line)}.site-nav a,.site-nav summary{display:block;padding:12px 0}.site-nav details[open] .submenu{position:static;width:auto;border:0;padding:0 20px}.console-link{border:0;padding-left:0!important}.hero{padding-top:38px}.hero .eyebrow{font-size:10px;line-height:1.8;margin-bottom:20px}.hero h1{font-size:44px;line-height:1.09;letter-spacing:-.05em}.hero p{font-size:16px;margin-top:20px}.hero .space-top:has(>a){flex-wrap:wrap;gap:12px;margin-top:24px}.button,.button-outline,button[type=submit]{font-size:13px;min-height:50px;padding:12px 20px}.hero-landscape{height:240px;margin-top:30px;object-position:center}.certification-band{font-size:11px;padding-top:20px;padding-bottom:20px}.certification-band>a{display:block}.certification-band span{display:block;margin-top:12px}.section{padding:50px 0}.section h2{font-size:34px}.grid,.cols-2,.cols-3,.cols-4,.cols-5{grid-template-columns:1fr;gap:28px}.services .grid{margin-top:34px;gap:30px}.service-column{padding:24px 0 0!important;border:0;border-top:1px solid var(--line)!important}.service-column:before{font-size:48px;margin-bottom:16px}.green-section img{height:300px}.green-section .cols-2 .cols-2{grid-template-columns:1fr}.page-hero{padding-top:42px}.page-hero h1{font-size:40px}.page-hero p{font-size:16px}.section article p{font-size:16px}.section article h2{font-size:28px}.site-footer{padding:45px 24px 24px}.site-footer>div>div:first-child{grid-template-columns:1fr;gap:24px}table{font-size:12px}th,td{padding:10px;overflow-wrap:anywhere}.not-found{padding:70px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:1101px){.site-header{width:calc(100% - 128px)}.hero h1{font-size:100px}.hero p{max-width:940px}.hero-landscape{height:500px}.hero-copy>div{max-width:1160px}}
.accent{color:var(--green)}.green-section h2 span{color:var(--lime)}.tertiary-link{font-size:13px}.hero-copy .source-icon{margin-left:12px}

.site-footer>div:first-child{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:38px}.site-footer>div>div:first-child{display:block}.site-footer>div:last-child>div{margin-top:40px;padding-top:24px;border-top:1px solid #49604f;font-size:12px;color:#ced8ca}@media(max-width:1100px){.site-footer>div:first-child{grid-template-columns:1fr 1fr}}@media(max-width:760px){.site-footer>div:first-child{grid-template-columns:1fr}}

@media(min-width:1101px){.hero p{font-size:24px;line-height:1.5;max-width:950px}.hero .button,.hero .button-outline{min-height:66px;padding:16px 32px}.hero-landscape{margin-top:30px}}

.services h2 .accent{display:block}.service-column .source-icon{display:none}.filter-button,.interest-button,.enquiry-link,.newsletter-button,.document-toggle{min-height:44px;padding:10px 20px;margin:8px 8px 8px 0;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:3px;cursor:pointer}.filter-button[aria-pressed=true],.interest-button[aria-pressed=true]{background:var(--ink);color:var(--paper)}[hidden]{display:none!important}.certification-band>a{width:100%}.certification-band .grid{display:flex;margin:0}.green-section .button{background:none;border:0;padding:0;justify-content:start;gap:12px}.source-icon{margin-top:0}

.editorial-article .wrap{max-width:980px}.editorial-article h2{font-size:32px;margin-top:44px}.editorial-article p{font-size:18px;line-height:1.8}.green-section .grid .grid p{margin-top:12px}.green-section .grid .grid{gap:24px}@media(max-width:760px){.editorial-article p{font-size:16px}}

.certification-band .wrap{padding:0;display:flex;align-items:center;justify-content:space-between;gap:28px}.certification-band{font-size:13px}.service-column p{line-height:1.5}@media(min-width:1101px){.site-header>.wordmark{font-size:56px}.site-nav{font-size:16px;gap:32px}.hero .button,.hero .button-outline{font-size:20px}.services h2{font-size:80px;max-width:1160px}.service-column h3{font-size:30px}.service-column p{font-size:20px}.service-column:before{font-size:96px}}@media(max-width:760px){.certification-band .wrap{display:block}}

.wordmark { display: inline-flex; align-items: center; gap: 10px; white-space: nowrap; }
.wordmark img { width: 40px; height: 40px; flex: 0 0 40px; object-fit: contain; }
.site-footer .wordmark { display: inline-flex; }
.site-footer .wordmark img { background: var(--paper); border-radius: 8px; }
@media(max-width:760px){.wordmark img{width:32px;height:32px;flex-basis:32px}.wordmark{gap:8px}}

.email-draft { overflow-wrap: anywhere; }
.email-draft a { text-decoration: underline; font-weight: 700; }
/* Visible keyboard focus on both light and forest surfaces. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline-color: var(--ink); }
.site-footer :focus-visible,.green-section :focus-visible,.forest-story :focus-visible,.newsletter-layout :focus-visible { outline-color: var(--lime); }

/* Shared frame and navigation for Home and every interior route. */
:root { --frame-width: none; --content-width: none; --page-gutter: clamp(24px, 5vw, 120px); }
.wrap { max-width: var(--frame-width); padding-inline: var(--page-gutter); }
.site-footer { padding-inline: var(--page-gutter); }
.site-header { width: calc(100% - 2 * var(--page-gutter)); max-width: var(--content-width); margin-inline: auto; min-height: 80px; gap: 32px; }
.site-header > .wordmark { font-size: 36px; flex-shrink: 0; }
.site-header .wordmark img { width: 32px; height: 32px; flex-basis: 32px; }
.site-nav { gap: 28px; font-size: 14px; flex-shrink: 0; }
.site-nav > a, .site-nav > details > summary { white-space: nowrap; padding-block: 28px; }
.site-nav > .console-link { font-size: 13px; margin-left: 0; padding-left: 24px !important; }
.site-nav a[aria-current=page], .site-nav .current-section > summary { text-decoration: underline; text-underline-offset: 8px; }
.site-nav details[open] .submenu { top: 100%; }
@media (max-width: 1100px) {
    .site-header { min-height: 74px; }
    .site-header > .wordmark { font-size: 32px; }
    .menu-toggle { display: block; background: none; border: 1px solid var(--line); padding: 10px 16px; border-radius: 3px; color: var(--ink); }
    .site-nav { display: none; }
    .site-nav.open { position: absolute; top: 74px; left: 0; right: 0; z-index: 30; display: flex; flex-direction: column; align-items: stretch; background: var(--paper); padding: 20px var(--page-gutter); gap: 0; border-bottom: 1px solid var(--line); }
    .site-nav a, .site-nav summary { display: block; padding: 12px 0; }
    .site-nav > a, .site-nav > details > summary { padding-block: 12px; }
    .site-nav > .console-link { border: 0; padding-left: 0 !important; }
    .site-nav details[open] .submenu { position: static; width: auto; border: 0; padding: 0 20px; }
}
@media (max-width: 760px) {
    :root { --page-gutter: 24px; }
}

/* Full-width sections share a single fluid gutter, including the footer. */
.site-footer > div { max-width: none; }
.button, .button-outline, button[type=submit] { transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease; }
.button .source-icon, .button-outline .source-icon { transition: transform 180ms ease; }
.article-media { overflow: hidden; }
.article-media img { transition: transform 500ms cubic-bezier(.2,.7,.2,1); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .button:hover, .button-outline:hover, button[type=submit]:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgb(9 46 34 / 12%); }
    .button:hover .source-icon, .button-outline:hover .source-icon { transform: translateX(3px); }
    a:hover > .article-media img, a:hover > div > .article-media img { transform: scale(1.035); }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Footer columns share the same top edge; legal divider belongs below them. */
.site-footer > div:first-child > div { margin-top: 0; padding-top: 0; border-top: 0; }
.site-footer > div:first-child > div:last-child li { display: grid; grid-template-columns: 18px minmax(0,1fr); align-items: start; gap: 8px; line-height: 1.6; }
.site-footer > div:first-child > div:last-child li > .source-icon { width: 18px; height: 18px; margin-top: calc(.8em - 9px); }
