/* Shared Giltecnology interface. Photography and image assets are untouched. */
:root { --brand-green:#218b40; --brand-lime:#5bbd4c; --brand-ink:#293a2e; --brand-copy:#5e6c62; --brand-line:#dfe6df; --brand-soft:#f5f7f3; --brand-night:#0d1510; --accent-color:#218b40; }
body.site-unified { color:var(--brand-ink); -webkit-font-smoothing:antialiased; }
html.header-ui-ready { scroll-padding-top:0; scroll-behavior:auto; }
.site-unified main :is(section,article,figure)[id] { scroll-margin-top:105px; }
body.site-unified main h2,body.site-unified main h3 { font-weight:500; letter-spacing:-.02em; }
body.site-unified .header-refined { --header-accent:var(--brand-green); box-shadow:0 2px 15px rgb(20 35 24 / 3%); }
body.site-unified .header-refined .navmenu > ul > li > a:not(.contact-link) { color:#39463c; }
body.site-unified .header-refined .navmenu > ul > li > a::after { background:var(--brand-green); }
body.site-unified .header-refined .navmenu a.active,body.site-unified .header-refined .navmenu a:hover,body.site-unified .header-refined .dropdown.is-open > .nav-dropdown-trigger > a,body.site-unified .header-refined .current-section > .nav-dropdown-trigger > a { color:var(--brand-green); }
body.site-unified .header-refined .navmenu > ul,body.site-unified .header-refined .navmenu .dropdown > ul { border-top-color:var(--brand-green); }
body.site-unified .header-refined .navmenu .dropdown ul a:hover,body.site-unified .header-refined .navmenu .dropdown ul a.active,body.site-unified .header-refined .submenu-toggle:hover,body.site-unified .header-refined .submenu-toggle[aria-expanded=true],body.site-unified .header-refined .header-social-links a:hover { color:var(--brand-green); background:#eff7ed; border-color:#c7dfc8; }
body.site-unified .header-refined .navmenu > ul > li > .contact-link { border-color:var(--brand-green); color:var(--brand-green); background:transparent; }
body.site-unified .header-refined .navmenu > ul > li > .contact-link:hover,body.site-unified .header-refined .navmenu > ul > li > .contact-link.active { color:#fff; background:var(--brand-green); }
body.site-unified .header-refined a:focus-visible,body.site-unified .header-refined button:focus-visible { outline-color:var(--brand-green); }
body.site-unified .footer-refined { background:#0c120e; border-top-color:var(--brand-green); }
body.site-unified .footer-refined a:hover { color:#8bd17c; }
body.site-unified .footer-refined a:focus-visible { outline-color:#8bd17c; }
/* Page titles become open editorial headers, rather than solid colored bars. */
.site-unified .page-title.accent-background { --background-color:#f8faf7; --default-color:var(--brand-ink); --heading-color:var(--brand-ink); background:#f8faf7; color:var(--brand-ink); border-bottom:1px solid var(--brand-line); padding:36px 0 34px; }
.site-unified .page-title .page-heading { padding:0; background:none; border:0; box-shadow:none; }
.site-unified .page-kicker { color:var(--brand-green); font-size:10px; font-weight:500; letter-spacing:.1em; line-height:1.8; margin:0 0 12px; text-transform:uppercase; }
.site-unified .page-title h1 { font-size:clamp(29px,3vw,41px); color:var(--brand-ink); font-weight:500; letter-spacing:-.03em; line-height:1.25; margin:0!important; }
.site-unified .page-title .breadcrumbs { margin-left:28px; }
.site-unified .page-title .breadcrumbs ol { font-size:11px; color:#718075; gap:0; }
.site-unified .page-title .breadcrumbs a { color:var(--brand-green); }
/* One heading rhythm across the homepage, careers and service sections. */
.site-unified main .container.section-title { text-align:left; padding-bottom:36px; }
.site-unified main .container.section-title h2 { font-size:clamp(28px,3vw,38px); font-weight:500; line-height:1.3; letter-spacing:-.025em; text-transform:none; padding-bottom:18px; margin-bottom:15px; }
.site-unified main .container.section-title h2::after { left:0; right:auto; width:36px; height:2px; margin:0; background:var(--brand-green); }
.site-unified main .container.section-title p { max-width:730px; margin:0; font-size:15px; line-height:1.9; color:var(--brand-copy); }
.site-unified .case-section-heading,.site-unified .gil-section-heading { background:none; border:0; border-radius:0; box-shadow:none; }
.site-unified .case-section-heading h2,.site-unified .gil-section-heading h2 { font-size:clamp(29px,3vw,40px); line-height:1.25; font-weight:500; letter-spacing:-.025em; }
.site-unified .services-refined .service-tile,.site-unified .career-card { border-color:#e0e7df; border-radius:4px; box-shadow:none; }
.site-unified .services-refined .service-tile:hover { border-color:#b8d0b8; box-shadow:0 5px 17px rgb(24 50 27 / 4%); }
.site-unified .services-refined .post-title,.site-unified .career-card h3 { font-size:23px; font-weight:500; letter-spacing:-.02em; line-height:1.35; }
.site-unified .service-copy-refined .services-list { padding:0; border:0; box-shadow:none; background:none; }
.site-unified .service-copy-refined .services-list a { background:transparent; border:0; border-bottom:1px solid #e3e9e0; border-radius:0; color:#617064; padding:13px 13px 13px 0; font-size:13px; line-height:1.5; }
.site-unified .service-copy-refined .services-list a.active { color:var(--brand-green); background:#f3f8f0; border-left:2px solid var(--brand-green); padding-left:15px; font-weight:500; }
.site-unified .service-copy-refined .services-list a:hover { color:var(--brand-green); }
.site-unified .service-copy-refined .col-lg-8 > h3 { font-size:clamp(26px,2.5vw,33px); font-weight:500; line-height:1.3; letter-spacing:-.025em; }
.site-unified .service-copy-refined .col-lg-8 > p { color:var(--brand-copy); font-size:15px; line-height:1.95; }
.site-unified .blog-details .article { box-shadow:none; border:0; }
.site-unified .career-summary { border:0; border-left:2px solid var(--brand-green); border-radius:0; background:#f5f8f2; padding:20px 22px; }
.site-unified .career-facts span { border:0; border-radius:0; padding:3px 12px 3px 0; background:none; color:#5f7463; }
.site-unified .career-form-panel { border-radius:3px; box-shadow:none; }
.site-unified .career-button,.site-unified .career-application button[type=submit],.site-unified .contact .php-email-form button[type=submit] { background:var(--brand-green); border-color:var(--brand-green); color:#fff; border-radius:3px; min-height:47px; padding:12px 20px; font-size:13px; font-weight:500; box-shadow:none; }
.site-unified .career-button:hover,.site-unified .career-application button[type=submit]:hover,.site-unified .contact .php-email-form button[type=submit]:hover { background:#166d30; border-color:#166d30; color:#fff; }
.site-unified .contact .info-wrap,.site-unified .contact .php-email-form { box-shadow:none; border:1px solid var(--brand-line); border-radius:3px; }
.site-unified .contact .info-item h3 { font-size:22px; font-weight:500; }
.site-unified .contact .php-email-form input,.site-unified .contact .php-email-form textarea { border-radius:3px; min-height:46px; font-size:14px; border-color:#d8e1d7; }
.site-unified .contact .php-email-form input:focus,.site-unified .contact .php-email-form textarea:focus { border-color:var(--brand-green); box-shadow:0 0 0 2px rgb(33 139 64 / 10%); }
/* Existing careers image stays in place; only its text panel is refined. */
.page-job #hero .carousel-item>.container { width:calc(100% - 80px); max-width:1160px; margin:0 auto 36px; padding:28px 32px; text-align:left; border:0; border-left:2px solid #5bbd4c; border-radius:3px; background:linear-gradient(90deg,rgb(9 19 12 / 90%),rgb(9 19 12 / 55%)); }
.page-job .job-hero-eyebrow { color:#b2d6b5; font-size:10px; letter-spacing:.1em; line-height:1.8; margin-bottom:14px; }
.page-job #hero h1 { color:#fff; font-size:clamp(32px,3.5vw,48px); font-weight:500; line-height:1.2; letter-spacing:-.025em; margin:0 0 18px; }
.page-job .job-hero-lead { color:#d4e3d5; font-size:15px; line-height:1.8; margin:0; }
/* GIL360 alone retains its blue/cyan product palette. Reduce framing, not identity. */
.gil360-page:not(.case-study-page) .gil-flow { background:transparent; border:0; border-left:1px solid #345982; border-radius:0; padding:20px 0 20px 32px; }
.gil-home-section .gil-home-brand { border:0; border-radius:0; }
.gil360-page:not(.case-study-page) .gil-indicator-grid article { border-top-width:1px; }
/* Corporate case pages and all their controls follow Giltecnology green. */
body.site-unified.case-study-page { --accent-color:var(--brand-green); --gil-ink:var(--case-ink); --gil-copy:var(--case-copy); --gil-blue:var(--case-accent); --gil-cyan:var(--case-bar); --gil-line:var(--case-line); }
body.site-unified.case-study-page .scroll-top { background:var(--brand-green); }
body.site-unified.case-study-page a:focus-visible,body.site-unified.case-study-page button:focus-visible,body.site-unified.case-study-page summary:focus-visible,.site-unified .case-home-section a:focus-visible { outline-color:var(--brand-green); }
.site-unified .case-chart-drawing { min-height:0; }
.site-unified .case-chart figcaption h3 { font-size:18px; line-height:1.4; }
@media(max-width:1199px) {
  body.site-unified .header-refined .navmenu a.active,body.site-unified .header-refined .navmenu a:hover { background:#eff7ed; }
}
@media(max-width:991px) {
  .site-unified .page-title .breadcrumbs { margin:20px 0 0; }
  .site-unified .page-title.accent-background { padding:29px 0; }
}
@media(max-width:767px) {
  .site-unified main :is(section,article,figure)[id] { scroll-margin-top:90px; }
  .site-unified .page-title h1 { font-size:29px; }
  .site-unified main .container.section-title { padding-bottom:29px; }
  .site-unified main .container.section-title h2 { font-size:29px; }
  .site-unified main .container.section-title p { font-size:14px; }
  .page-job #hero .carousel-item>.container { width:calc(100% - 32px); padding:23px; margin-bottom:20px; }
  .page-job .job-hero-lead { font-size:14px; }
  .gil360-page:not(.case-study-page) .gil-flow { padding-left:22px; }
}
@media(prefers-reduced-motion:reduce) { .site-unified .service-tile,.site-unified .career-card { transition:none; } }
/* Consistent vertical rhythm and aligned actions across the corporate pages. */
.site-unified main>section:not(.hero) { padding-top:72px; padding-bottom:72px; }
.site-unified .gil-button { min-height:47px; border-radius:3px; padding:12px 19px; font-size:13px; }
.site-unified.case-study-page .gil-button:not(.gil-button-secondary),.site-unified .case-home-section .gil-button:not(.gil-button-secondary) { background:var(--brand-green); border-color:var(--brand-green); color:#fff; }
.site-unified.case-study-page .gil-button:not(.gil-button-secondary):hover,.site-unified .case-home-section .gil-button:not(.gil-button-secondary):hover { background:#166d30; border-color:#166d30; color:#fff; }
.site-unified.case-study-page .gil-button-secondary,.site-unified .case-home-section .gil-button-secondary { color:var(--brand-green); border-color:#b7ceb9; background:transparent; }
.site-unified.case-study-page .gil-button-secondary:hover,.site-unified .case-home-section .gil-button-secondary:hover { color:#166d30; border-color:#6da77b; background:#eff7ed; }
.site-unified.case-study-page .gil-text-link,.site-unified .case-home-section .gil-text-link { color:var(--brand-green); }
.site-unified.case-study-page .gil-eyebrow,.site-unified .case-home-section .gil-eyebrow { color:var(--brand-green); }
.site-unified.case-study-page .case-detail-hero .gil-eyebrow,.site-unified.case-study-page .case-hub-hero .gil-eyebrow,.site-unified.case-study-page .case-rental-section .gil-eyebrow { color:var(--case-glow); }
.site-unified .case-chart-actions { gap:4px; }
.site-unified .case-chart-dialog { width:min(900px,calc(100% - 40px)); }
.site-unified .case-expanded-chart canvas { height:min(43svh,370px); }
.site-unified .case-hero-stats .case-metric strong,.site-unified .case-preview-metrics .case-metric strong { font-variant-numeric:tabular-nums; }
@media(max-width:767px) {
  .site-unified main>section:not(.hero) { padding-top:48px; padding-bottom:48px; }
  .site-unified .page-title .page-heading { max-width:100%; }
  .site-unified .case-preview-actions { gap:12px; }
  .site-unified .case-expanded-chart canvas { height:42svh; min-height:270px; }
}
/* Minimal interface: open compositions, flat surfaces and precise rules. */
.site-unified { --heading-color:#26372c; }
.site-unified main { background:#fff; }
.site-unified [data-aos] { opacity:1!important; transform:none!important; transition:none!important; }
.site-unified .header-refined { box-shadow:none; border-bottom:1px solid #edf0ed; }
.site-unified .page-title.accent-background { background:#fff; padding-block:44px; }
.site-unified .page-title .breadcrumbs .current { text-transform:none; }
.site-unified main .container.section-title h2 { padding-bottom:0; margin-bottom:18px; }
.site-unified main .container.section-title h2::after { display:none; }
.site-unified .services-refined,.site-unified .careers-list-refined { background:#fff; }
.site-unified .services-refined .row { --bs-gutter-x:32px; --bs-gutter-y:44px; }
.site-unified .services-refined .service-tile,.site-unified .services-refined .service-tile:hover,.site-unified .career-card { background:transparent; border:0; border-radius:0; box-shadow:none; transition:none; }
.site-unified .services-refined .post-img { border:0; border-radius:2px; }
.site-unified .services-refined .post-content { padding:24px 0 0; }
.site-unified .services-refined .post-title { min-height:2.7em; margin:0 0 9px; }
.site-unified .services-refined .meta { margin-bottom:17px; font-size:11px; }
.site-unified .services-refined .meta i { display:none; }
.site-unified .services-refined .service-links { border-color:var(--brand-line); padding-top:10px; }
.site-unified .career-grid { gap:44px 36px; }
.site-unified .career-card-copy { padding:25px 0 0; }
.site-unified .career-card-focus { border:0; background:#f2f6f0; }
.site-unified .career-summary { background:transparent; border-left:1px solid var(--brand-line); padding:8px 0 8px 24px; }
.site-unified .career-form-panel { background:transparent; border:0; padding:0; }
.site-unified .career-application-section { background:#f7f9f5; }
.site-unified .career-application .career-field input,.site-unified .career-application .career-field textarea { background:#fff; }
.site-unified .career-toc a { min-height:40px; }
.site-unified .hero-video .hero-panel { background:transparent; }
.site-unified .hero-video .hero-panel::before { opacity:.65; }
.site-unified .hero-video .hero-action { font-weight:500; border-radius:2px; }
.site-unified .hero-video .hero-action-primary { background:#218b40; border-color:#218b40; color:#fff; }
.site-unified .hero-video .hero-action-primary:hover { background:#2c9d4b; border-color:#2c9d4b; }
.site-unified .service-copy-refined .services-list a.active { background:transparent; border-left:0; padding-left:0; }
.site-unified .service-copy-refined .col-lg-8>hr { display:none; }
.site-unified .service-copy-refined .col-lg-8>h3 { margin-top:32px; }
.site-unified .service-copy-refined .col-lg-8>ul { border-block:1px solid var(--brand-line); padding-block:16px; }
.site-unified .service-copy-refined .col-lg-8>a,.site-unified .service-copy-refined .col-lg-4>a:not(:has(img)) { display:inline-flex; gap:16px; align-items:center; min-height:44px; font-size:13px; }
.site-unified .blog-details .article { padding:0; margin:0; background:transparent; }
.site-unified .blog-details .article>.post-img { margin:0 0 30px; }
.site-unified .blog-details .article>.title { font-size:clamp(27px,2.5vw,35px); line-height:1.3; font-weight:500; letter-spacing:-.025em; }
.site-unified .blog-details .content { color:var(--brand-copy); font-size:15px; line-height:1.95; }
.site-unified .blog-details .content h3 { font-size:24px; font-weight:500; margin-block:33px 18px; }
.site-unified .blog-details .content li { margin-bottom:9px; }
.site-unified .sidebar .widgets-container { border:0; border-left:1px solid var(--brand-line); border-radius:0; box-shadow:none; padding:8px 0 8px 25px; background:transparent; }
.site-unified .contact .info { box-shadow:none; padding:0; background:transparent; }
.site-unified .contact .info h3 { font-size:29px; font-weight:500; letter-spacing:-.025em; }
.site-unified .contact .info h4 { font-size:16px; font-weight:500; }
.site-unified .contact .info p { font-size:14px; line-height:1.9; overflow-wrap:anywhere; }
.site-unified .contact .info-item i { background:none; border:0; border-radius:0; width:27px; height:auto; align-items:flex-start; justify-content:flex-start; color:var(--brand-green); font-size:21px; }
.site-unified .contact .php-email-form { border:0; padding:0; background:transparent; }
.site-unified .contact .php-email-form input[type=checkbox] { min-height:0; width:17px; height:17px; accent-color:var(--brand-green); vertical-align:middle; margin-right:7px; }
.site-unified .contact .php-email-form textarea { min-height:160px; }
.site-unified .contact .php-email-form .text-center { text-align:left!important; }
.site-unified .contact .php-email-form hr { border-color:var(--brand-line); opacity:1; }
.site-unified .case-detail-hero,.site-unified .case-rental-section { background:var(--case-night); }
.site-unified .case-hub-hero .gil-text-link { color:var(--case-glow); }
.site-unified .case-home-section { --gil-cyan:var(--case-bar); }
.site-unified .case-chart,.site-unified .case-consumption-bars,.site-unified .case-donut-figure { background:transparent; border:0; border-top:1px solid var(--case-line); border-radius:0; padding:23px 0 0; }
.site-unified .case-charts-grid { gap:36px; align-items:start; }
.site-unified .case-chart figcaption { min-height:96px; }
.site-unified .case-chart-drawing>.energy-chart-controls,.site-unified .case-chart-drawing::after { display:none; }
.site-unified .case-chart-actions { flex-direction:row; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; padding-top:5px; }
.site-unified .case-chart-actions>details[open] { flex-basis:100%; order:2; min-width:0; }
.site-unified .case-chart-actions>button { font-weight:500; }
.site-unified .case-summary-charts .case-chart { padding:23px 0 0; }
.site-unified .energy-chart-controls button { background:transparent; border-color:var(--case-line); border-radius:2px; }
.site-unified .case-table-wrap { border:0; border-block:1px solid var(--case-line); border-radius:0; }
.site-unified .case-rental-highlight { background:transparent; border:0; border-top:1px solid var(--case-night-line); border-radius:0; padding:26px 0 0; }
.site-unified .case-assumption { background:transparent; border-left:0; border-top:1px solid var(--case-night-line); padding:22px 0 0; }
.site-unified .case-chart-dialog { border-radius:3px; }
.site-unified.gil360-page:not(.case-study-page) .gil-hero { background:#071426; }
.site-unified.gil360-page:not(.case-study-page) .gil-button:not(.gil-button-secondary) { background:#0b58d8; }
.site-unified .gil-home-section { background:#f1f6fd; }
.site-unified .gil-home-brand { background:#081a32; }
.site-unified .footer-refined { border-top-width:1px; }
.site-unified .footer-refined .footer-partner-banner { background:transparent; border:0; padding:8px 0; }
.site-unified.page-404 #hero .container { padding:35px; border:0; border-radius:0; background:rgb(8 18 11 / 90%); text-align:left; }
.site-unified.page-404 #hero h1 { font-size:90px; font-weight:400; line-height:1.1; color:#fff; }
.site-unified.page-404 #hero h2 { font-size:32px; font-weight:500; }
.site-unified.page-404 #hero p:not(.page-kicker) { color:#c0cbc2; font-size:15px; }
.site-unified.page-404 .error-home-link { display:inline-flex; gap:20px; align-items:center; min-height:44px; color:#a8dcad; margin-top:10px; }
.site-unified.page-404 #hero .container>a:has(img) { display:none; }
@media(max-width:991px) {
  .site-unified .sidebar .widgets-container { margin-bottom:30px; }
  .site-unified .case-chart figcaption { min-height:115px; }
}
@media(max-width:767px) {
  .site-unified .page-title.accent-background { padding-block:30px; }
  .site-unified .services-refined .row { --bs-gutter-y:36px; }
  .site-unified .services-refined .post-title { min-height:0; }
  .site-unified .services-refined .post-content { padding-top:21px; }
  .site-unified .career-card-copy { padding-top:22px; }
  .site-unified .career-summary { padding-left:20px; }
  .site-unified .case-charts-grid { gap:28px; }
  .site-unified .case-detail-hero h1 { font-size:34px; line-height:1.22; text-wrap:balance; }
  .site-unified .case-chart figcaption { min-height:0; margin-bottom:18px; }
  .site-unified .case-chart,.site-unified .case-consumption-bars,.site-unified .case-donut-figure { padding-top:22px; }
  .site-unified .footer-refined .footer-partner-banner { padding-inline:0; }
  .site-unified.page-404 #hero .container { width:calc(100% - 32px); padding:26px; }
}
