/* GENERÁLT FÁJL – tools/build_wp_assets.py. Forrás: vision.css */
body.gim .gim-layout-wrapper { display: flex; flex-direction: column; width: 100%; background-color: rgb(252, 252, 252); color: rgb(26, 26, 26); z-index: 2; }
body.gim .gim-media-slide { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; will-change: transform; }
body.gim .gim-img-divider { position: relative; width: 100%; padding: 0rem 5rem; overflow: hidden; }
body.gim .gim-img-divider-img { width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1); }
body.gim .gim-img-divider-overlay { position: absolute; inset: 0px; background: linear-gradient(rgba(252, 252, 252, 0.18) 0%, rgba(252, 252, 252, 0) 30%, rgba(252, 252, 252, 0) 70%, rgba(252, 252, 252, 0.18) 100%); pointer-events: none; }
body.gim .gim-bg-video { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0px; left: 0px; }
body.gim .gim-media-overlay { position: absolute; inset: 0px; background: linear-gradient(rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%); }
body.gim .gim-media-text { position: absolute; inset: 0px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 10%; z-index: 10; }
body.gim .gim-eyebrow { display: block; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 1rem; color: rgba(255, 255, 255, 0.8); font-weight: 600; }
body.gim .subline-book { font-size: 1rem; letter-spacing: 0.25em; text-transform: uppercase; margin-bottom: 32px; color: white; }
body.gim .gim-h2 { margin: 0px; color: rgb(255, 255, 255); }
body.gim .gim-content-section { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; }
body.gim .gim-text-block { padding: 10%; }
body.gim .gim-subline, body.gim .gim-lead-text { font-size: 1.5rem; line-height: 1.4; font-weight: 600; margin-bottom: 1.5rem; }
body.gim .gim-text-block p { margin-bottom: 2rem; }
body.gim .gim-quote { font-family: 'PPWriter', serif; font-size: 1.6rem; line-height: 1.45; font-style: normal; font-weight: 400; border: none; padding: 0; margin: 3rem 0; position: relative; font-style: italic;}
body.gim .gim-quote p { margin-bottom: 1.5rem;}
body.gim .gim-quote cite { display: block; font-family: 'PPMori', Sans-Serif;font-size: 1rem; font-style: normal; font-weight: 500; text-transform: uppercase; margin-top: 1rem; color: rgb(102, 102, 102);}
body.gim .gim-list { list-style: none; padding: 0px; margin: 2rem 0px; }
body.gim .gim-list li { font-size: 1.1rem; line-height: 1.6; color: rgb(74, 74, 74); margin-bottom: 1.5rem; padding-left: 1.5rem; position: relative; }
body.gim .gim-list li::before { content: "•"; position: absolute; left: 0px; color: rgb(26, 26, 26); font-weight: bold; }
body.gim .gim-list li strong { color: rgb(26, 26, 26); }
body.gim .gim-button { display: inline-block; background-color: rgb(26, 26, 26); color: rgb(255, 255, 255); padding: 0.75rem 1.75rem; font-size: 17px; border-radius: 30px; transition: 0.3s; text-decoration: none !important; }
body.gim .gim-button:hover { background-color: rgb(255, 146, 92); transform: scale(0.98); text-decoration: none !important; color: white !important; }
@media (max-width: 991px) { body.gim .gim-img-divider { height: 40vh; } body.gim .gim-img-divider { display: none; } }
@media (min-width: 992px) { body.gim .gim-layout-wrapper { flex-direction: row; } body.gim .gim-sticky-col { width: 50%; height: 100vh; position: sticky; top: 0px; overflow: hidden; } body.gim .gim-scroll-col { width: 50%; } body.gim .gim-mobile-only { display: none !important; } }
@media (max-width: 991px) { body.gim .gim-desktop-only { display: none !important; } body.gim .gim-mobile-media { width: 100%; height: 70vh; position: relative; overflow: hidden; } body.gim .gim-content-section { min-height: auto; } }
body.gim #gim-chapnav { position: fixed; left: 32px; top: 50%; transform: translateY(-50%); z-index: 100; display: flex; flex-direction: column; gap: 0; pointer-events: none;}
body.gim #gim-chapnav ul { list-style: none; padding: 0; margin: 0; pointer-events: auto;}
body.gim #gim-chapnav li { display: flex; align-items: center; gap: 12px; padding: 10px 0; cursor: pointer;}
body.gim #gim-chapnav .cn-line { width: 12px; height: 2px; background-color: rgba(255, 255, 255, 0.3); flex-shrink: 0; transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
body.gim #gim-chapnav li.active .cn-line, body.gim #gim-chapnav li:hover .cn-line { width: 36px; background-color: var(--butter);}
body.gim #gim-chapnav .cn-label { font-family: var(--font-display); font-weight: 200; font-size: 0.65rem; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255, 255, 255, 0.35); transition: color 0.3s ease; white-space: nowrap;}
body.gim #gim-chapnav li.active .cn-label, body.gim #gim-chapnav li:hover .cn-label { color: var(--butter);}
body.gim.nav-light #gim-chapnav .cn-line { background-color: rgba(16, 40, 48, 0.25);}
body.gim.nav-light #gim-chapnav li.active .cn-line, body.gim.nav-light #gim-chapnav li:hover .cn-line { background-color: var(--firefly);}
body.gim.nav-light #gim-chapnav .cn-label { color: rgba(16, 40, 48, 0.3);}
body.gim.nav-light #gim-chapnav li.active .cn-label, body.gim.nav-light #gim-chapnav li:hover .cn-label { color: var(--firefly);}
body.gim #gim-chapnav.cn-white .cn-line { background-color: rgba(255, 255, 255, 0.3);}
body.gim #gim-chapnav.cn-white li.active .cn-line, body.gim #gim-chapnav.cn-white li:hover .cn-line { background-color: #ffffff;}
body.gim #gim-chapnav.cn-white .cn-label { color: rgba(255, 255, 255, 0.5);}
body.gim #gim-chapnav.cn-white li.active .cn-label, body.gim #gim-chapnav.cn-white li:hover .cn-label { color: #ffffff;}
@media (max-width: 1024px) { body.gim #gim-chapnav { display: none; } }
