/*
Theme Name: Gökmila Metal — Kurumsal
Description: A custom block theme scaffolded by Studio Code.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 0.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gokmila-metal-v2
Tags: full-site-editing, block-patterns, block-styles, wide-blocks, accessibility-ready, style-variations
*/

/* WordPress inserts a margin-block-start equal to the block gap (24px unless
   theme.json sets styles.spacing.blockGap) between the template's top-level
   sections (header part, main, footer part) — a gap that exists even when no
   markup asks for it. Zero it so sections butt edge-to-edge and own their
   vertical rhythm via padding; this does not affect block gaps inside nested
   layouts. */
.wp-site-blocks > * + * {
	margin-block-start: 0;
}

/* With that gap gone, main carries its own vertical padding so templates this
   theme does not author (WooCommerce shop, product, cart…) still clear the
   header and footer. A descendant selector, not a child one: WooCommerce wraps
   the single-product main in an extra group. Templates built from full-bleed
   sections opt out with is-flush and let the sections own the rhythm. */
.wp-site-blocks main {
	padding-block: var(--wp--preset--spacing--60) var(--wp--preset--spacing--70);
}
.wp-site-blocks main.is-flush {
	padding-block: 0;
}
:root {
 --gm-ink: var(--wp--preset--color--ink);
 --gm-white: var(--wp--preset--color--background);
 --gm-copper: var(--wp--preset--color--primary);
 --gm-rule: var(--wp--preset--color--rule);
 --gm-panel: var(--wp--preset--color--panel);
 --gm-dark: var(--wp--preset--color--dark);
 --gm-muted: var(--wp--preset--color--muted);
}
/* === base and header === */
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
:focus-visible { outline: 2px solid var(--gm-copper); outline-offset: 5px; }
.wp-block-post-content > * { margin-block-start: 0; margin-block-end: 0; }
.wp-block-columns { margin-bottom: 0; }
.wp-block-image img { vertical-align: middle; }
.wp-site-blocks > header { position: sticky; top: 0; z-index: 100; background: var(--gm-white); }
.home .wp-site-blocks > header { position: absolute; inset: 0 0 auto; color: var(--gm-white); background: transparent; }
.home .wp-site-blocks > header.is-scrolled { position: fixed; background: var(--gm-white); color: var(--gm-ink); box-shadow: 0 2px 18px #20252b12; }
.masthead { border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent); }
.masthead-row { min-height: 98px; gap: 32px; }
.is-scrolled .masthead-row { min-height: 72px; }
.wordmark { margin: 0; font-size: 31px; line-height: 1; letter-spacing: -1.4px; font-weight: 600; }
.wordmark strong { font-size: 11px; letter-spacing: 3px; display: block; margin-top: 8px; font-weight: 600; }
.wordmark a { color: inherit; text-decoration: none; }
.brand-logo { flex-shrink: 0; margin: 0; padding: 12px 14px; background: var(--gm-white); border-radius: 3px; }
.brand-logo a { display: block; line-height: 0; }
.brand-logo img { display: block; width: 232px; height: auto; }
.footer-brand-logo { width: 270px; max-width: 100%; margin: 0; padding: 18px; background: var(--gm-white); border-radius: 3px; }
.footer-brand-logo img { width: 100%; height: auto; display: block; }
@media (max-width:599px) { .brand-logo { padding: 10px 12px; } .brand-logo img { width: 195px; } .footer-brand-logo { width: 240px; } }
.main-nav { font-size: 14px; font-weight: 600; }
.main-nav .wp-block-navigation__container { gap: 32px; }
.main-nav a { color: inherit; }
.nav-contact { border-left: 1px solid color-mix(in srgb, currentColor 30%, transparent); padding-left: 30px; }
.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open { color: var(--gm-ink); background: var(--gm-white); }
.section-band { padding-block: 80px; }
.section-band .wp-block-columns { gap: 64px; }
.is-style-section-label, .eyebrow { font-size: var(--wp--preset--font-size--label); letter-spacing: .07em; font-weight: 600; }
.is-style-section-label { color: var(--gm-copper); margin-bottom: 18px; }
.section-band h2 { margin-top: 0; }
.inner-hero { padding-block: 64px 56px; }
.inner-hero h1 { max-width: 1020px; margin-block: 22px; font-size: clamp(38px,5.3vw,64px); }
.header-top { padding-block: 11px; border-bottom: 1px solid color-mix(in srgb,currentColor 15%,transparent); }
.header-top-row { font-size: 10px; letter-spacing: .07em; }
.header-top-row p { margin: 0; }
.is-scrolled .header-top { display: none; }
.lead { max-width: 760px; font-size: 19px; color: var(--gm-muted); }
.breadcrumb { font-size: var(--wp--preset--font-size--label); color: var(--gm-muted); }
.inner-nav { margin-top: 32px; gap: 24px; font-size: 14px; }
.is-style-spec-line { border-top: 1px solid var(--gm-rule); border-bottom: 1px solid var(--gm-rule); padding-block: 18px; font-size: 20px; font-weight: 600; font-variant-numeric: tabular-nums; }
/* Palette and responsive type are controlled in theme.json. */
/* === hero === */
.hero-stage { position: relative; isolation: isolate; height: min(850px,100svh); min-height: 720px; padding: 0; color: var(--gm-white); background: var(--gm-dark); overflow: hidden; }
.hero-stage > .hero-slideshow { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; margin: 0 !important; }
.hero-slideshow .wp-block-jetpack-slideshow_container { height: 100% !important; max-height: none; background: var(--gm-dark); }
.hero-slideshow .swiper-wrapper { height: 100% !important; }
.hero-slideshow .swiper-slide, .hero-slideshow .swiper-slide figure { height: 100%; }
.hero-slideshow .wp-block-jetpack-slideshow_image { height: 100% !important; width: 100%; max-height: none !important; object-fit: cover; object-position: 67% center; filter: saturate(.95); }
.hero-slideshow .swiper-slide figure::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg,#11181feb 0%,#11181f80 48%,#11181f10 100%),linear-gradient(0deg,#11181fbd,transparent 30%); }
.hero-stage .hero-slideshow .wp-block-jetpack-slideshow_slide .wp-block-jetpack-slideshow_caption { z-index: 2; inset: auto var(--wp--style--root--padding-right) 124px auto; width: auto; max-width: 380px; padding: 0; background: none; text-align: right; font-family: inherit; font-size: 12px; color: var(--gm-white); }
.hero-slideshow .swiper-button-prev, .hero-slideshow .swiper-button-next { top: auto !important; bottom: 52px; left: auto; width: 48px; height: 48px; margin: 0; opacity: 1; border: 1px solid #ffffff70; background: #20252b50; color: var(--gm-white); z-index: 8; }
.hero-slideshow .swiper-button-next { right: var(--wp--style--root--padding-right); }
.hero-slideshow .swiper-button-prev { right: calc(var(--wp--style--root--padding-right) + 58px); }
.hero-stage .hero-slideshow .swiper-button-prev, .hero-stage .hero-slideshow .swiper-button-next { display: flex; align-items: center; justify-content: center; background-image: none; border-radius: 0; color: var(--gm-white); }
.hero-slideshow .swiper-navigation-icon { width: 10px; height: 18px; }
.hero-slideshow .swiper-button-prev::after, .hero-slideshow .swiper-button-next::after { display: none; }
.hero-slideshow .wp-block-jetpack-slideshow_button-pause { opacity: 1; top: auto; bottom: 54px; right: calc(var(--wp--style--root--padding-right) + 126px); left: auto; width: 44px; height: 44px; z-index: 8; }
.hero-slideshow .swiper-pagination { left: var(--wp--style--root--padding-left) !important; bottom: 62px !important; width: auto !important; text-align: left; z-index: 8; }
.hero-slideshow .swiper-pagination-bullet { width: 32px; height: 3px; border-radius: 0; opacity: .4; margin: 0 8px 0 0 !important; background: var(--gm-white); }
.hero-slideshow .swiper-pagination-bullet-active { opacity: 1; background: var(--gm-copper); }
.hero-content-shell { position: relative; z-index: 3; height: 100%; padding-top: 198px; pointer-events: none; }
.hero-copy .eyebrow { margin: 0 0 26px; letter-spacing: .09em; }
.hero-copy h1 { max-width: 850px; margin: 0; font-size: var(--wp--preset--font-size--display); font-weight: 600; }
.hero-description { margin-block: 28px 34px; max-width: 560px; font-size: 18px; line-height: 1.75; color: #e4e8eb; }
.hero-copy .wp-block-buttons { gap: 14px; pointer-events: auto; }
.hero-provenance { margin-top: 46px; letter-spacing: .08em; color: #d8dee3; }
.hero-stage .is-style-outline .wp-element-button { color: var(--gm-white); border-color: #ffffff88; }
.editor-styles-wrapper .hero-stage { height: auto; min-height: 0; }
.editor-styles-wrapper .hero-stage > .hero-slideshow { position: relative; height: 500px; }
.editor-styles-wrapper .hero-content-shell { padding-block: 40px; pointer-events: auto; }
/* === industrial composition === */
.capacity-dock { border-bottom: 1px solid var(--gm-rule); background: var(--gm-white); }
.capacity-dock .wp-block-columns { gap: 0; }
.is-style-capacity-cell { padding: 32px 24px; border-right: 1px solid var(--gm-rule); }
.capacity-dock .wp-block-column:first-child .is-style-capacity-cell { padding-left: 0; }
.capacity-dock .wp-block-column:last-child .is-style-capacity-cell { border-right: 0; padding-right: 0; }
.is-style-capacity-number { margin: 0 0 14px; color: var(--gm-copper); font-size: 15px; line-height: 1; font-variant-numeric: tabular-nums; }
.is-style-capacity-number strong { font-weight: 600; font-size: clamp(29px,3vw,44px); letter-spacing: -.04em; }
.is-style-capacity-cell h3 { font-size: 16px; margin-block: 16px 9px; }
.is-style-capacity-cell h3 a { color: var(--gm-ink); }
.is-style-capacity-cell p:last-child { font-size: 12px; color: var(--gm-muted); margin-top: 0; }
.company-story { padding-block: 96px; }
.metal-composition { position: relative; padding: 0 46px 66px 0; }
.composition-main { margin: 0; overflow: hidden; }
.composition-main img { width: 100%; aspect-ratio: .9; object-fit: cover; }
.composition-detail { position: absolute; bottom: 0; right: 0; margin: 0; width: 58%; border: 10px solid var(--gm-white); }
.composition-detail img { width: 100%; aspect-ratio: 1.25; object-fit: cover; }
.company-story .company-scope { padding-left: 17px; border-left: 2px solid var(--gm-copper); font-size: 14px; line-height: 1.7; }
.company-story .wp-block-buttons { margin-top: 30px; }
.service-showcase { padding-block: 80px 48px; }
.showcase-heading { margin-bottom: 36px; gap: 32px; }
.showcase-heading h2 { margin: 0; }
.showcase-heading > p { font-size: 14px; color: #c4ccd2; }
.service-showcase .is-style-section-label { color: #dba27d; }
.services-grid { gap: 24px; }
.is-style-service-frame { min-height: 395px; padding: 32px; overflow: hidden; }
.wp-block-cover.is-style-service-frame { align-items:flex-end; }
.is-style-service-frame .wp-block-cover__background { opacity: 1; background: linear-gradient(0deg,#11181ff5 0%,#11181fb0 34%,#11181f05 100%); background-color: transparent !important; /* Override the opaque palette utility while retaining the photo overlay. */ }
.is-style-service-frame .wp-block-cover__image-background { filter: saturate(.95); }
.is-style-service-frame h3 { font-size: 28px; margin-block: 10px 14px; }
.is-style-service-frame p { font-size: 14px; margin-block: 10px 0; }
.is-style-service-frame p:first-child { letter-spacing: .025em; }
.is-style-service-frame a { color: var(--gm-white); }
.showcase-note { margin-top: 24px; color: #c4ccd2; }
.workflow-band .section-heading { align-items: flex-end; }
.workflow-band .section-heading > p { font-size: 14px; color: var(--gm-muted); }
.workflow-steps { gap: 40px !important; margin-top: 44px; }
.is-style-process-step { padding-top: 24px; border-top: 2px solid var(--gm-rule); }
.step-index { margin: 0 0 20px; color: var(--gm-copper); font-size: 11px; letter-spacing: .05em; font-weight: 600; }
.is-style-process-step h3 { font-size: 22px; margin-block: 0 14px; }
.is-style-process-step p:last-child { font-size: 15px; color: var(--gm-muted); }
.technical-band .capacity-table { margin: 0; }
.technical-band .capacity-table th { background: var(--gm-dark); color: var(--gm-white); }
.technical-band .capacity-table td { padding-block: 20px; font-size: 14px; }
.technical-band .capacity-table td:first-child { width: 38%; }
.technical-band .capacity-table strong { font-size: 20px; }
.technical-band .is-style-operation summary { font-size: 17px; }
.project-cta { border-left: 7px solid var(--gm-copper); border-bottom: 1px solid #ffffff26; }
.project-cta h2 { margin-block: 18px; }
.project-cta p:not(.eyebrow) { font-size: 15px; color: #c4ccd2; }
.project-cta .eyebrow { color: #dba27d; }
@media (prefers-reduced-motion:no-preference) {
 .is-style-service-frame .wp-block-cover__image-background { transition: transform .4s ease; }
 .is-style-service-frame:hover .wp-block-cover__image-background { transform: scale(1.035); }
}
.process-strip { padding-block: 26px; }
.process-strip .wp-block-columns { gap: 0; }
.process-strip .wp-block-column { padding: 0 24px; border-left: 1px solid #ffffff30; }
.process-strip .wp-block-column:first-child { padding-left: 0; border-left: 0; }
.process-strip p { margin: 0; font-size: 12px; line-height: 1.8; }
.process-strip strong { font-size: 17px; font-weight: 600; }
.process-strip a { color: var(--gm-white); }
.process-strip a::after { content: '↗'; float: right; font-size: 18px; margin-top: -32px; opacity: .7; }
/* === services and sections === */
.production-columns > .wp-block-column:first-child { flex-basis: 42%; }
.production-columns > .wp-block-column:last-child { flex-basis: 58%; min-width: 0; }
.production-band h2 { margin-bottom: 20px; }
.production-band .has-muted-color { margin-bottom: 32px; }
.is-style-operation { margin-top: 0; border-top: 1px solid var(--gm-rule); padding: 17px 0; }
.is-style-operation:last-child { border-bottom: 1px solid var(--gm-rule); }
.is-style-operation summary { font-size: 19px; font-weight: 600; cursor: pointer; }
.is-style-operation summary::marker { color: var(--gm-copper); }
.is-style-operation[open] summary { color: var(--gm-copper); }
.is-style-operation p { font-size: 15px; line-height: 1.7; margin-block: 16px 0; }
.production-slideshow { margin: 0 !important; }
.production-slideshow .wp-block-jetpack-slideshow_container { aspect-ratio: 1.08; min-height: 490px; height: auto; max-height: none; background: var(--gm-dark); }
.production-slideshow .swiper-wrapper, .production-slideshow .swiper-slide, .production-slideshow figure { height: 100%; }
.production-slideshow .wp-block-jetpack-slideshow_image { width: 100%; height: 100%; object-fit: cover; }
.production-slideshow .wp-block-jetpack-slideshow_caption { background: #20252bd9; padding: 16px 48px 50px; bottom: 0; font-size: 14px; }
.production-slideshow .swiper-button-prev, .production-slideshow .swiper-button-next { background: #20252b9c; width: 44px; height: 44px; border-radius: 0; }
.production-slideshow .swiper-button-prev::after, .production-slideshow .swiper-button-next::after { font-size: 17px; }
.image-note { color: var(--gm-muted); margin-top: 14px; line-height: 1.6; }
.company-image { overflow: hidden; margin: 0; }
.company-image img { width: 100%; aspect-ratio: 1.15; object-fit: cover; filter: saturate(.95); }
.company-band .wp-block-buttons { margin-top: 28px; }
.section-heading { margin-bottom: 36px; gap: 20px; align-items: baseline; }
.section-heading h2, .section-heading p { margin-block: 0; }
.section-heading a { font-size: 14px; }
.capacity-table table { border-collapse: collapse; }
.capacity-table th, .capacity-table td { padding: 22px 18px; text-align: left; border: 0; border-bottom: 1px solid var(--gm-rule); vertical-align: top; }
.capacity-table thead { border: 0; }
.capacity-table th { font-size: 12px; color: var(--gm-muted); font-weight: 600; background: var(--gm-panel); }
.capacity-table td { font-size: 16px; font-variant-numeric: tabular-nums; }
.capacity-table td:first-child { font-weight: 600; }
.contact-band h2 { margin-bottom: 16px; }
.contact-band p { color: var(--gm-muted); }
.service-detail .wp-block-image { margin: 0; overflow: hidden; }
.service-detail .wp-block-image img { width: 100%; aspect-ratio: 1.35; object-fit: cover; filter: saturate(.95); }
.service-detail .wp-block-columns { align-items: center; }
.service-detail figcaption { font-size: 12px; text-align: left; color: var(--gm-muted); }
.project-checklist { padding-left: 22px; }
.project-checklist li { padding: 12px 0; border-bottom: 1px solid var(--gm-rule); }
.is-style-notice { padding: 28px; border-left: 3px solid var(--gm-copper); background: var(--gm-panel); }
.is-style-notice h3 { margin-top: 0; }
/* === footer and motion === */
.site-footer { padding-block: 64px 28px; }
.site-footer .wp-block-columns { gap: 64px; }
.site-footer .wp-block-column { flex-basis: 0; }
.site-footer .wp-block-column:first-child { flex-grow: 1.6; }
.site-footer h3 { font-size: 15px; margin-top: 0; margin-bottom: 22px; }
.site-footer a { color: inherit; }
.footer-company { font-size: 14px; line-height: 1.8; margin-top: 28px; }
.footer-links { list-style: none; padding: 0; font-size: 14px; }
.footer-links li + li { margin-top: 10px; }
.footer-bottom { border-top: 1px solid #ffffff26; margin-top: 44px; padding-top: 22px; color: #c4ccd2; }
.footer-bottom p { margin-block: 0 8px; }
.gm-reveal { opacity: 0; transform: translateY(20px); transition: opacity .55s ease, transform .55s ease; }
.gm-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: no-preference) {
 .masthead-row { transition: min-height .25s ease; }
 .company-image img, .service-detail .wp-block-image img { transition: transform .35s ease; }
 .company-image:hover img, .service-detail .wp-block-image:hover img { transform: scale(1.025); }
 .gm-entrance > * { animation: gm-enter .6s ease both; }
 .gm-entrance > :nth-child(2) { animation-delay: .10s; }
 .gm-entrance > :nth-child(3) { animation-delay: .18s; }
 .gm-entrance > :nth-child(4) { animation-delay: .26s; }
 .gm-entrance > :nth-child(5) { animation-delay: .34s; }
}
@keyframes gm-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
 *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
 .gm-reveal { opacity: 1; transform: none; }
}
/* === responsive === */
@media (max-width: 1100px) {
 .section-band .wp-block-columns { gap: 36px; }
 .main-nav .wp-block-navigation__container { gap: 24px; }
 .hero-content-shell { padding-top: 220px; }
 .is-style-capacity-cell { padding-inline: 18px; }
 .is-style-capacity-cell h3 { font-size: 14px; }
 .is-style-service-frame { min-height: 350px; padding: 28px; }
 .site-footer .wp-block-columns { gap: 36px; }
}
@media (max-width: 781px) {
 .section-band { padding-block: 56px; }
 .section-band .wp-block-columns { gap: 36px; }
 .masthead-row { min-height: 84px; }
 .hero-content-shell { padding-top: 180px; }
 .hero-copy h1 { max-width: 650px; }
 .capacity-dock .wp-block-columns { display: grid; grid-template-columns: 1fr 1fr; }
 .capacity-dock .is-style-capacity-cell { padding: 26px 20px; border-bottom: 1px solid var(--gm-rule); }
 .capacity-dock .wp-block-column:nth-child(odd) .is-style-capacity-cell { padding-left: 0; }
 .capacity-dock .wp-block-column:nth-child(even) .is-style-capacity-cell { border-right: 0; padding-right: 0; }
 .company-story .metal-composition { max-width: 580px; margin-inline: auto; }
 .composition-main img { aspect-ratio: 1.2; }
 .company-image img { aspect-ratio: 1.6; }
 .service-showcase .showcase-heading { align-items: flex-start; }
 .services-grid { gap: 18px; }
 .is-style-service-frame { min-height: 330px; padding: 22px; }
 .is-style-service-frame h3 { font-size: 24px; }
 .is-style-service-frame p { font-size: 13px; }
 .technical-band .capacity-table table { min-width: 0; }
 .technical-band .capacity-table td, .technical-band .capacity-table th { padding-inline: 14px; }
 .service-detail .wp-block-columns { flex-direction: column; }
 .service-detail .wp-block-columns > .wp-block-column { width: 100%; }
 .service-detail .wp-block-column:has(.wp-block-image) { order: 2; }
 .inner-hero { padding-block: 44px 38px; }
 .inner-hero h1 { font-size: 42px; }
 .lead { font-size: 17px; }
 .workflow-steps { gap: 28px !important; }
}
@media (max-width: 599px) {
 .wordmark { font-size: 29px; }
 .wordmark strong { font-size: 9px; letter-spacing: 3px; }
 .header-top { display: none; }
 .masthead-row { min-height: 84px; }
 .is-scrolled .masthead-row { min-height: 68px; }
 .main-nav .wp-block-navigation__responsive-container-content { align-items: flex-start !important; }
 .main-nav .wp-block-navigation__container { align-items: flex-start !important; gap: 26px; font-size: 24px; }
 .nav-contact { border: 0; padding: 0; }
 .hero-stage { height: 760px; min-height: 0; padding: 0; }
 .hero-content-shell { padding-top: 166px; }
 .hero-slideshow .wp-block-jetpack-slideshow_image { object-position: 65% center; }
 .hero-slideshow .swiper-slide figure::after { background: linear-gradient(90deg,#11181fe8,#11181f75),linear-gradient(0deg,#11181fcc,transparent 40%); }
 .hero-copy h1 { font-size: 46px; line-height: 1.08; }
 .hero-copy .eyebrow { font-size: 10px; letter-spacing: .04em; }
 .hero-description { font-size: 16px; margin-block: 24px 28px; }
 .hero-description br { display: none; }
 .hero-provenance { margin-top: 32px; font-size: 10px; }
 .hero-copy .wp-block-buttons { align-items: flex-start; flex-direction: column; gap: 12px; }
 .hero-stage .hero-slideshow .wp-block-jetpack-slideshow_slide .wp-block-jetpack-slideshow_caption { bottom: 111px; left: var(--wp--style--root--padding-left); right: var(--wp--style--root--padding-right); text-align: left; font-size: 11px; }
 .hero-slideshow .swiper-pagination { bottom: 54px !important; }
 .hero-slideshow .swiper-button-prev, .hero-slideshow .swiper-button-next { bottom: 36px; }
 .hero-slideshow .wp-block-jetpack-slideshow_button-pause { bottom: 38px; right: calc(var(--wp--style--root--padding-right) + 111px); width: 32px; }
 .hero-slideshow .swiper-pagination-bullet { width: 19px; margin-right: 5px !important; }
 .capacity-dock .is-style-capacity-cell { min-height: 164px; }
 .is-style-capacity-number strong { font-size: 32px; }
 .is-style-capacity-cell h3 { font-size: 13px; }
 .is-style-capacity-cell p:last-child { font-size: 11px; line-height: 1.6; }
 .section-band { padding-block: 48px; }
 .company-story { padding-top: 54px; }
 .metal-composition { padding-right: 30px; padding-bottom: 48px; }
 .composition-main img { aspect-ratio: 1; }
 .composition-detail { border-width: 7px; }
 .company-story h2 br { display: none; }
 .company-story .wp-block-buttons { margin-top: 24px; }
 .services-grid { grid-template-columns: 1fr; }
 .is-style-service-frame { min-height: 350px; padding: 26px; }
 .is-style-service-frame h3 { font-size: 28px; }
 .showcase-heading { margin-bottom: 28px; gap: 18px; }
 .showcase-heading > p { margin: 0; }
 .showcase-note { font-size: 11px; }
 .inner-hero h1 { font-size: 38px; }
 .inner-nav { gap: 14px; font-size: 12px; }
 .is-style-operation summary { font-size: 18px; }
 .company-image img { aspect-ratio: 1.2; }
 .section-heading { margin-bottom: 26px; }
 .project-cta { border-left-width: 4px; }
 .project-cta .wp-block-buttons { margin-top: 16px; }
 .site-footer { padding-block: 44px 24px; }
 .footer-bottom { margin-top: 32px; }
}
/* === Elementor Pro: native container/widget refinements === */
.elementor { --widgets-spacing:20px; }
.elementor .elementor-widget-text-editor p { margin-block:0; }
.elementor .elementor-widget-text-editor p + p { margin-top:16px; }
.elementor .elementor-widget-heading .elementor-heading-title { margin:0; }
.elementor .e-con.e-con-boxed { padding-block:0; }
.elementor .gm-e-faq .elementor-tab-title .elementor-accordion-title { font:inherit; letter-spacing:inherit; }
.elementor .e-con { --container-default-padding-top:0px; --container-default-padding-bottom:0px; --container-default-padding-left:0px; --container-default-padding-right:0px; }
.elementor .hero-stage { display:block; }
.elementor .gm-e-hero-slider { position:absolute; inset:0; width:100%; height:100%; margin:0; }
.gm-e-hero-slider > .elementor-widget-container, .gm-e-hero-slider .elementor-slides-wrapper, .gm-e-hero-slider .elementor-slides, .gm-e-hero-slider .swiper-slide { height:100%; }
.gm-e-hero-slider .swiper-slide-bg { background-position:67% center; }
.gm-e-hero-slider .swiper-slide::after { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,#11181feb,#11181f80 48%,#11181f10),linear-gradient(0deg,#11181fbd,transparent 30%); }
.elementor .hero-content-shell { position:relative; z-index:3; pointer-events:none; }
.elementor .hero-copy { gap:24px; }
.elementor .hero-copy .elementor-widget-button { pointer-events:auto; }
.elementor .hero-copy .eyebrow, .elementor .hero-copy .hero-description, .elementor .hero-copy .hero-provenance { margin:0; }
.elementor .hero-copy h1 { font-size:clamp(46px,6.5vw,80px); line-height:1.08; }
.elementor .hero-copy .hero-description p { max-width:560px; font-size:18px; line-height:1.75; }
.elementor .hero-copy .hero-provenance { margin-top:20px; }
.elementor .elementor-element.gm-e-hero-slider .elementor-slides-wrapper .elementor-swiper-button { top:auto; transform:none; bottom:52px; width:48px; height:48px; border:1px solid #ffffff70; display:flex; align-items:center; justify-content:center; z-index:8; }
.elementor .elementor-element.gm-e-hero-slider .elementor-swiper-button-next { right:48px; }
.elementor .elementor-element.gm-e-hero-slider .elementor-swiper-button-prev { right:106px; left:auto; }
.gm-e-hero-slider .swiper-pagination { text-align:left; padding-left:48px; bottom:62px; width:auto; }
.elementor .gm-e-slider-toggle { position:absolute; z-index:9; right:174px; bottom:52px; }
.gm-e-slider-toggle .elementor-button { padding:14px; background:#20252b80; border:1px solid #ffffff70; font-size:11px; color:white; }
.elementor .capacity-dock > .e-con-inner { gap:0; }
.elementor .is-style-capacity-cell { padding:32px 20px; min-height:190px; gap:12px; }
.elementor .is-style-capacity-cell .elementor-heading-title { font-size:16px; }
.elementor .is-style-capacity-cell .is-style-capacity-number { margin:0; }
.elementor .is-style-capacity-cell .elementor-widget-text-editor:last-child { font-size:12px; color:var(--gm-muted); }
.elementor .metal-composition { display:block; padding:0 46px 66px 0; }
.elementor .composition-main { width:100%; }
.elementor .composition-main img { aspect-ratio:.9; }
.elementor .composition-detail { position:absolute; width:58%; right:0; bottom:0; margin:0; }
.elementor .composition-detail img { aspect-ratio:1.25; }
.elementor .company-scope { font-size:14px; }
.elementor .service-showcase .is-style-section-label, .elementor .project-cta .eyebrow { color:#dba27d; }
.elementor .service-showcase .is-style-service-frame { border:0; background-size:cover; }
.elementor .is-style-service-frame .elementor-heading-title { font-size:28px; }
.elementor .is-style-service-frame .elementor-widget-text-editor { font-size:14px; }
.elementor .is-style-service-frame a { color:white; }
.elementor .services-grid { align-items:stretch; }
.elementor .is-style-process-step { gap:14px; }
.elementor .is-style-process-step .elementor-heading-title { font-size:22px; }
.elementor .is-style-process-step .step-index { margin:0 0 6px; }
.elementor .gm-e-faq .elementor-tab-title { font:600 17px/1.5 'Public Sans',sans-serif; color:var(--gm-ink); }
.elementor .gm-e-faq .elementor-accordion-item { border:0; border-top:1px solid var(--gm-rule); }
.elementor .gm-e-faq .elementor-tab-content { border:0; font:400 15px/1.7 'Public Sans',sans-serif; }
.elementor .gm-e-faq .elementor-active { color:var(--gm-copper); }
.elementor .gm-e-table table { width:100%; }
.elementor .gm-e-table th, .elementor .gm-e-table td { padding:20px 18px; }
.elementor .inner-hero .elementor-heading-title { font-size:clamp(38px,5.3vw,64px); }
.elementor .service-detail .elementor-widget-image img { width:100%; aspect-ratio:1.35; object-fit:cover; }
.elementor .service-detail .widget-image-caption { font-size:12px; text-align:left; color:var(--gm-muted); }
.gm-e-header { background:white; color:var(--gm-ink); }
.home .wp-site-blocks > header:not(.is-scrolled) .gm-e-header { background:transparent; color:white; }
.home .wp-site-blocks > header:not(.is-scrolled) .gm-e-menu .elementor-nav-menu--main .elementor-item { color:white; }
.gm-e-topbar { border-bottom:1px solid #80889040; font-size:10px; letter-spacing:.07em; }
.home .wp-site-blocks > header:not(.is-scrolled) .gm-e-topbar .elementor-widget-text-editor { color:white; }
.gm-e-masthead { border-bottom:1px solid #80889040; }
.is-scrolled .gm-e-topbar { display:none; }
.is-scrolled .gm-e-masthead { min-height:72px; padding-block:8px; }
.gm-e-header-logo img { display:block; }
.gm-e-menu .elementor-nav-menu--dropdown { z-index:200; }
.elementor .gm-e-footer { color:white; font-size:14px; }
.elementor .gm-e-footer .elementor-heading-title { font-size:15px; }
.elementor .gm-e-footer .elementor-icon-list-text { color:white; }
.elementor .gm-e-label, .elementor .gm-e-footer-bottom { font-size:12px; }
.elementor .gm-e-footer-bottom { margin-top:0; color:#c4ccd2; }
@media(max-width:767px) {
 .elementor .hero-stage { height:760px; min-height:760px; }
 .elementor .hero-copy { gap:22px; }
 .elementor .hero-copy .hero-description p { font-size:16px; }
 .elementor .hero-copy .hero-description br { display:none; }
 .elementor .capacity-dock > .e-con-inner > .e-con { flex-direction:row; flex-wrap:wrap; }
 .elementor .capacity-dock > .e-con-inner > .e-con > .e-con { width:50%; }
 .elementor .is-style-capacity-cell { padding:24px 12px; min-height:170px; border-bottom:1px solid var(--gm-rule); }
 .elementor .is-style-capacity-cell .elementor-heading-title { font-size:13px; }
 .elementor .is-style-capacity-cell .elementor-widget-text-editor:last-child { font-size:11px; }
 .elementor .is-style-capacity-number strong { font-size:32px; }
 .elementor .elementor-element.gm-e-hero-slider .elementor-slides-wrapper .elementor-swiper-button { bottom:32px; width:40px; height:40px; }
 .elementor .elementor-element.gm-e-hero-slider .elementor-swiper-button-next { right:22px; }
 .elementor .elementor-element.gm-e-hero-slider .elementor-swiper-button-prev { right:70px; }
 .gm-e-hero-slider .swiper-pagination { padding-left:22px; bottom:46px; }
 .elementor .gm-e-slider-toggle { right:22px; bottom:88px; }
 .elementor .metal-composition { padding:0 30px 48px 0; }
 .elementor .services-grid { flex-direction:column; }
 .elementor .services-grid > .e-con { width:100%; }
 .gm-e-menu .elementor-menu-toggle { padding:10px; }
}
@media(prefers-reduced-motion:reduce) { .elementor .swiper-wrapper { transition-duration:0ms !important; } }
/* Industrial showcase: content remains in native Elementor widgets. */
.elementor .gm-x-hero { isolation:isolate; border-bottom:4px solid var(--gm-copper); }
.elementor .gm-x-hero > .e-con-inner { justify-content:center; }
.elementor .gm-x-hero-copy { position:relative; z-index:1; }
.elementor .gm-x-hero .elementor-heading-title { text-wrap:balance; }
.elementor .gm-x-breadcrumb { font-size:11px; letter-spacing:.04em; margin-bottom:14px; }
.elementor .gm-x-breadcrumb a { color:inherit; text-decoration:none; }
.elementor .gm-x-breadcrumb a:hover { text-decoration:underline; }
.elementor .gm-x-lead { max-width:620px; font-size:17px; line-height:1.7; }
.elementor .gm-x-label p { display:flex; align-items:center; gap:12px; }
.elementor .gm-x-label p::before { content:''; width:26px; height:2px; flex:none; background:var(--gm-copper); }
.elementor .gm-x-identity .gm-x-label p::before { background:var(--gm-white); }
.elementor .gm-x-photo img { display:block; width:100%; object-fit:cover; }
.elementor .gm-x-form-composition { display:block; position:relative; padding:0 0 70px 28px; }
.elementor .gm-x-form-main { width:100%; }
.elementor .gm-x-form-inset { position:absolute; width:55%; left:0; bottom:40px; border:7px solid var(--gm-dark); }
.elementor .gm-x-form-composition > .gm-x-caption { position:absolute; bottom:0; left:28px; width:calc(100% - 28px); }
.elementor .gm-x-caption { font-size:11px; line-height:1.6; opacity:.76; }
.elementor .gm-x-small { font-size:12px; line-height:1.65; }
.elementor .gm-x-scope .elementor-icon-list-item { border-bottom:1px solid color-mix(in srgb,currentColor 20%,transparent); padding-bottom:10px; }
.elementor .gm-x-service-nav .gm-x-scope .elementor-icon-list-item { border:0; padding:0; }
.elementor .gm-x-service-nav .elementor-icon-list-items { gap:12px 28px; }
.elementor .gm-x-service-visual { gap:12px; }
.elementor .gm-x-detail-zoom img { object-position:50% 78%; }
.elementor .gm-x-focus { background:color-mix(in srgb,var(--gm-ink) 4%,transparent); }
.elementor .gm-x-service-dark .gm-x-focus { background:color-mix(in srgb,var(--gm-white) 6%,transparent); }
.elementor .gm-x-focus .elementor-widget-text-editor { font-size:14px; line-height:1.7; }
.elementor .gm-x-guide-item { border-top:1px solid color-mix(in srgb,var(--gm-white) 20%,transparent); padding-top:16px; font-size:14px; }
.elementor .gm-x-closing { border-top:1px solid color-mix(in srgb,var(--gm-white) 20%,transparent); }
.elementor .gm-x-contact .is-style-notice .elementor-heading-title { font-size:23px; }
.elementor .gm-x-contact .is-style-notice .elementor-widget-text-editor { font-size:14px; }
@media(max-width:767px) {
 .elementor .gm-x-hero { background-position:65% center; }
 .elementor .gm-x-lead { font-size:16px; }
 .elementor .gm-x-breadcrumb { margin-bottom:8px; }
 .elementor .gm-x-form-composition { padding:0 0 66px 22px; }
 .elementor .gm-x-form-inset { width:58%; border-width:5px; bottom:44px; }
 .elementor .gm-x-form-composition > .gm-x-caption { left:22px; width:calc(100% - 22px); }
 .elementor .gm-x-service-nav .elementor-icon-list-items { gap:14px 20px; }
 .elementor .gm-x-closing .elementor-heading-title br { display:none; }
}


