body.elementor-page-353:not(.elementor-motion-effects-element-type-background), body.elementor-page-353 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#efede7;}:root{--page-title-display:none;}/* Start custom CSS *//* FORMA Gradnja, draft stranica 353. Samo efekti i responsive korekcije koje native kontrole ne pokrivaju.
   Sve je ograničeno na #fg-site i id-jeve sa prefiksom fg-. Breakpointi iz reference: 1100 / 760 / 370. */
html:has(#fg-site) { scroll-behavior: smooth; scroll-padding-top: 100px; }
#fg-site { --fg-ease: cubic-bezier(.22,1,.36,1); -webkit-font-smoothing: antialiased; }
#fg-site ::selection { background: #b66b3e; color: #fff; }
#fg-site a { text-decoration: none; }
#fg-site :is(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid #b66b3e; outline-offset: 5px; }
#fg-site button { cursor: pointer; }
#fg-site summary { list-style: none; }
#fg-site summary::-webkit-details-marker { display: none; }

/* Header (sticky) */
#fg-header.is-scrolled { box-shadow: 0 1px 0 #cecec5; }
body.admin-bar #fg-header { top: 32px; }
#fg-nav-links a { position: relative; }
#fg-nav-links a::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .4s; }
#fg-nav-links a:hover::after { transform: scaleX(1); transform-origin: left; }

/* Dugmad i linkovi: strelica se pomera samo na interaktivnim kontrolama */
#fg-site :is(a, button) > span.e-paragraph-base:last-child { display: inline-block; transition: transform .4s var(--fg-ease); }
#fg-site :is(a, button):hover > span.e-paragraph-base:last-child { transform: translate(4px, -4px); }
#fg-hero-caption a:hover > span.e-paragraph-base:last-child { transform: translateY(4px); }
#fg-site a[id$="-btn"]:hover, #fg-site a[id^="fg-inquiry-"]:hover, #fg-mm-cta:hover { background: transparent !important; color: #252723 !important; }

/* Uvodna fotografija */
#fg-hero-media::after { content: ""; position: absolute; inset: 55% 0 0; background: linear-gradient(transparent, #1b201db5); pointer-events: none; }

/* Galerija */
#fg-filters button { position: relative; }
#fg-filters button[aria-pressed="true"] { color: #252723; }
#fg-filters button::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: #b66b3e; transform: scaleX(0); transform-origin: left; transition: transform .3s; }
#fg-filters button[aria-pressed="true"]::after { transform: scaleX(1); }
#fg-project-grid [id^="fg-open-"] img { transition: transform 1s var(--fg-ease), filter .6s; }
#fg-project-grid [id^="fg-open-"]:hover img { transform: scale(1.04); filter: brightness(.93); }
#fg-project-grid [id^="fg-open-"]:hover > div:first-child > span { background: #b66b3e; color: #f8f7f3; }
#fg-project-grid [id^="fg-r-card-"][hidden] { display: none !important; }
#fg-project-grid.is-filtered { grid-template-columns: 1fr 1fr; }
#fg-project-grid.is-filtered > div { padding-top: 0; grid-column: auto; }
#fg-project-grid.is-filtered [id^="fg-open-"] > div:first-child { height: 410px; }

/* Arhitektonska šema: iscrtavanje */
html.fg-ready #fg-blueprint .fg-draw :is(path, circle) { stroke-dasharray: 1200; stroke-dashoffset: 1200; transition: stroke-dashoffset 3s var(--fg-ease); }
html.fg-ready #fg-r-precision-art.is-visible #fg-blueprint .fg-draw :is(path, circle) { stroke-dashoffset: 0; }

/* Faze saradnje: + / − */
#fg-phases .e-accordion-item-icon-base > div::before { content: "+"; position: absolute; inset: 0; width: auto !important; height: auto; background: none; display: flex; align-items: center; justify-content: center; font-family: Arial, Helvetica, sans-serif; font-size: 24px; font-weight: 300; line-height: 1; color: #252723; }
#fg-phases details[open] .e-accordion-item-icon-base > div::before { content: "\2212"; }
#fg-phases details[open] > :not(summary) { animation: fg-fade .35s var(--fg-ease); }

/* Forma: bez podrazumevanog razmaka Elementor forme, visine kao u referenci */
#fg-form { flex-direction: column; flex-wrap: nowrap; gap: 0; }
#fg-form label { line-height: 1.15; }
#fg-form :is(input, textarea), #fg-form button[type="submit"] { line-height: 1.15; }
[id^="fg-r-service-"] > div:last-child p { line-height: 1.15; }

/* Forma */
#fg-form :is(input, textarea)::placeholder { color: #959f8d; }
#fg-form select { color-scheme: dark; -webkit-appearance: auto; appearance: auto; }
#fg-form select option { background: #262b27; }
#fg-form :is(input, select, textarea)[aria-invalid="true"] { border-bottom-color: #e39a6e; }
#fg-form .fg-field-error { margin: 0; font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 1.5; color: #e9a982; }
#fg-form .fg-field-error[hidden] { display: none !important; }
#fg-form.is-hidden { display: none !important; }
html.fg-js body:not(.elementor-editor-active) #fg-result:not(.is-shown) { display: none; }
#fg-form button[type="submit"]::after { content: "\2197\FE0E"; }
#fg-edit { border: 0; border-bottom: 1px solid currentColor; background: transparent; font: inherit; color: #efede7; }

/* Detaljni prikaz projekta. U editoru i bez skripte prikazuje se kao obična sekcija. */
html.fg-js body:not(.elementor-editor-active) #fg-dialog { position: fixed; inset: 0; z-index: 9999; display: none; padding: 16px; background: rgba(22, 28, 24, .72); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
html.fg-js body:not(.elementor-editor-active) #fg-dialog.is-open { display: flex; }
html.fg-js body:not(.elementor-editor-active) #fg-dialog-box > [id^="fg-detail-"]:not(.is-active) { display: none; }
#fg-dialog.is-open #fg-dialog-box { animation: fg-enter .4s var(--fg-ease); }
html.fg-lock, html.fg-lock body { overflow: hidden; }

/* Ulazak pri skrolovanju: sakriva se tek kada skripta krene (html.fg-ready) */
#fg-site [id^="fg-r-"] { transition: opacity 1s var(--fg-ease), transform 1.1s var(--fg-ease); }
html.fg-ready #fg-site [id^="fg-r-"]:not(.is-visible) { opacity: 0; transform: translateY(30px); }
#fg-r-service-02 { transition-delay: .1s; }
#fg-r-service-03 { transition-delay: .2s; }

/* Uvod: naslov red po red, otkrivanje slike */
#fg-hero-title .fg-line { display: block; overflow: hidden; padding-bottom: .08em; margin-bottom: -.08em; }
#fg-hero-title .fg-line > span { display: block; }
html.fg-js #fg-hero-title .fg-line > span { animation: fg-title 1.25s var(--fg-ease) both; }
html.fg-js #fg-hero-title .fg-line:nth-child(2) > span { animation-delay: .12s; }
html.fg-js #fg-hero-label { animation: fg-enter 1s .1s both; }
html.fg-js #fg-hero-aside { animation: fg-enter 1.1s .3s both; }
html.fg-js #fg-hero-media { animation: fg-picture 1.5s var(--fg-ease) both; }
html.fg-js #fg-hero-media img { animation: fg-zoom 2.1s var(--fg-ease) both; }

@keyframes fg-title { from { transform: translateY(110%); } to { transform: none; } }
@keyframes fg-enter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@keyframes fg-picture { from { clip-path: inset(10% 0 10% 0); opacity: 0; } to { clip-path: inset(0); opacity: 1; } }
@keyframes fg-zoom { from { transform: scale(1.08); } to { transform: scale(1); } }
@keyframes fg-fade { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }

@media (max-width: 1100px) {
  :is(#fg-nav, #fg-hero-top, #fg-hero-baseline, #pristup, #proces, #fg-contact-grid), #usluge > div, #projekti > div, #fg-footer > div { width: calc(100% - 64px); }
  #fg-nav-links { gap: 20px; }
  #fg-hero-top { grid-template-columns: 1fr 230px; gap: 35px; padding-top: 50px; }
  #fg-hero-title { font-size: 8vw; }
  #fg-hero-media { height: 470px; }
  #pristup { gap: 40px; grid-template-columns: .75fr 2fr; }
  #fg-r-intro-text { gap: 32px; }
  #fg-service-grid { gap: 28px; }
  #fg-service-grid h3 { font-size: 22px; }
  #fg-r-card-rezidencija [id^="fg-open-"] > div:first-child { height: 380px; }
  #fg-r-card-stanovanje { padding-top: 70px; }
  #fg-r-card-stanovanje [id^="fg-open-"] > div:first-child { height: 310px; }
  #fg-r-card-poslovanje [id^="fg-open-"] > div:first-child { height: 430px; }
  #fg-precision-content { padding: 60px 5vw; }
  #fg-r-precision-art { padding: 40px 30px; }
  #proces { gap: 65px; }
  #fg-contact-grid { gap: 65px; }
  #fg-dialog-box > [id^="fg-detail-"] { min-height: 450px; }
  #fg-dialog-box > [id^="fg-detail-"] > div:first-child { min-height: 450px; }
  #fg-dialog-box > [id^="fg-detail-"] > div:last-child { padding: 55px 30px 35px; }
}
@media (max-width: 760px) {
  html:has(#fg-site) { scroll-padding-top: 85px; }
  :is(#fg-nav, #fg-hero-top, #fg-hero-baseline, #pristup, #proces, #fg-contact-grid), #usluge > div, #projekti > div, #fg-footer > div { width: calc(100% - 40px); }
  #fg-nav { height: 77px; gap: 15px; }
  #fg-nav-links, #fg-header-cta { display: none; }
  #fg-menu-btn { display: inline-flex; align-items: center; }
  #fg-header-logo p:first-child { font-size: 22px; }
  #fg-header-logo > div:first-child { width: 25px; height: 28px; }
  #fg-mobile-nav { display: flex; position: fixed; inset: 77px 0 0 0; overflow-y: auto; visibility: hidden; opacity: 0; transform: translateY(-10px); transition: transform .3s, opacity .3s, visibility .3s; }
  body.admin-bar #fg-mobile-nav { top: calc(77px + 46px); }
  #fg-mobile-nav.is-open { visibility: visible; opacity: 1; transform: none; transition: transform .3s, opacity .3s, visibility 0s; }
  #fg-hero-top { padding: 39px 0 30px; grid-template-columns: 1fr; gap: 27px; }
  #fg-hero-label { font-size: 8px; margin-bottom: 24px; }
  #fg-hero-title { font-size: clamp(49px, 9.4vw, 73px); margin-left: -3px; line-height: 1.07; }
  #fg-hero-aside { padding: 0; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 22px; }
  #fg-hero-aside p { font-size: 11px; line-height: 1.8; margin: 0; max-width: 210px; }
  #fg-hero-btn { width: auto; max-width: none; font-size: 10px; padding: 14px 13px; gap: 22px; }
  #fg-hero-media { margin: 0 12px; height: 440px; }
  #fg-hero-media img { object-position: 42% center; }
  #fg-hero-caption { left: 20px; right: 20px; bottom: 21px; gap: 20px; }
  #fg-hero-caption > div p:first-child { font-size: 21px; line-height: 1.1; }
  #fg-hero-caption > div p:last-child { font-size: 7px; max-width: 170px; }
  #fg-hero-caption a { font-size: 9px; gap: 12px; }
  #fg-hero-caption a > span { font-size: 20px; }
  #fg-hero-baseline { font-size: 8px; padding: 19px 0; gap: 15px; line-height: 1.5; }
  #fg-hero-baseline > span:last-child { display: none; }
  #pristup { padding: 62px 0; grid-template-columns: 1fr; gap: 28px; }
  #fg-intro-mark { display: none; }
  #fg-r-intro-title { font-size: 36px; line-height: 1.2; }
  #fg-r-intro-text { grid-template-columns: 1fr; gap: 19px; margin-top: 26px; }
  #fg-r-intro-text p { font-size: 12px; }
  #usluge { padding: 57px 0 62px; }
  #fg-site [id$="-bar"][id^="fg-r-"] { margin-bottom: 35px; }
  :is(#fg-services-heading, #fg-projects-heading) { display: block; margin-bottom: 33px; }
  :is(#fg-r-services-title, #fg-r-projects-title) { font-size: 49px; line-height: 1.08; }
  :is(#fg-r-services-intro, #fg-r-projects-intro) { margin-top: 23px; max-width: 320px; }
  #fg-service-grid { grid-template-columns: 1fr; gap: 32px; }
  #fg-service-grid > div { padding-top: 21px; }
  #fg-service-grid > div > div:first-child { margin-bottom: 25px; }
  #fg-service-grid h3 { font-size: 27px; }
  #fg-service-grid > div > p { max-width: none; }
  #fg-service-grid > div > div:last-child { margin-top: 20px; }
  #fg-service-grid > div > div:first-child > div { width: 45px; height: 45px; }
  #projekti { padding: 60px 0; }
  #fg-r-toolbar { display: block; padding: 15px 0 28px; }
  #fg-filters { gap: 24px; }
  #fg-filters button { font-size: 10px; }
  #fg-count { display: block; margin-top: 20px; }
  #fg-project-grid, #fg-project-grid.is-filtered { grid-template-columns: 1fr; gap: 35px; }
  #fg-project-grid > div { padding-top: 0 !important; grid-column: auto !important; }
  #fg-project-grid [id^="fg-open-"] > div:first-child { height: 340px !important; }
  #fg-project-grid [id^="fg-open-"] > div:last-child { padding-top: 16px; }
  #fg-project-grid h3 { font-size: 23px; }
  #fg-project-grid [id^="fg-open-"] > div:last-child p { font-size: 8px; }
  #fg-project-grid [id^="fg-open-"] > div:first-child > span { width: 40px; height: 40px; right: 15px; bottom: 15px; }
  #fg-project-note { margin-top: 28px; font-size: 9px; }
  #fg-precision { grid-template-columns: 1fr; }
  #fg-r-precision-art { padding: 35px 26px 55px; min-height: 360px; }
  #fg-blueprint { max-width: 400px; }
  #fg-drawing-label { left: 24px; right: 24px; bottom: 23px; }
  #fg-drawing-label span { font-size: 7px; }
  #fg-precision-content { padding: 45px 20px 55px; }
  #fg-r-prec-title { font-size: 47px; margin: 24px 0; }
  #fg-r-prec-body { max-width: 100%; }
  #proces { padding: 60px 0; grid-template-columns: 1fr; gap: 30px; }
  #fg-r-proc-title { font-size: 49px; margin: 25px 0; }
  #fg-r-proc-body { max-width: 100%; }
  #fg-phases summary { padding: 24px 0; gap: 19px; }
  #fg-phases summary .e-flexbox-base { gap: 19px; }
  #fg-phases h3 { font-size: 22px; }
  #fg-phases details > :not(summary) { padding: 0 10px 25px 32px; }
  #kontakt { padding: 58px 0; }
  #fg-contact-grid { grid-template-columns: 1fr; gap: 36px; }
  #fg-r-contact-title { font-size: 53px; margin: 26px 0; }
  #fg-r-contact-body { max-width: 340px; }
  #fg-r-contact-meta { margin-top: 26px; max-width: 100%; }
  #fg-r-inquiry { padding: 0; }
  #fg-form-row-1, #fg-form-row-2 { gap: 0 20px; }
  #fg-form > div > div, #fg-form > div:not([id]) { margin-bottom: 22px; }
  #fg-form :is(input, select, textarea) { font-size: 12px; }
  #fg-footer-top { padding: 25px 0; align-items: flex-start; }
  #fg-footer-links { gap: 15px; flex-direction: column; }
  #fg-footer-links a { font-size: 9px; }
  #fg-footer-mark { font-size: 18.6vw; padding: 30px 0; }
  #fg-footer-bottom { gap: 20px; }
  #fg-footer-bottom p { max-width: 260px; }
  #fg-to-top { white-space: normal; max-width: 60px; }
  #fg-dialog-box > [id^="fg-detail-"] { grid-template-columns: 1fr; min-height: 0; }
  #fg-dialog-box > [id^="fg-detail-"] > div:first-child { height: 280px; min-height: 0; }
  #fg-dialog-box > [id^="fg-detail-"] > div:last-child { padding: 30px 24px; }
  #fg-dialog-box h2 { font-size: 35px; margin: 22px 0; }
  #fg-dialog-box [id^="fg-inquiry-"] { width: 100%; }
  #fg-dialog-close { right: 12px; top: 12px; }
  #fg-dialog-box > [id^="fg-detail-"] > div:last-child > p:nth-of-type(2) { font-size: 12px; }
}
@media (max-width: 782px) { body.admin-bar #fg-header { top: 46px; } }
@media (max-width: 600px) { body.admin-bar #fg-header { top: 0; } body.admin-bar #fg-mobile-nav { top: 77px; } }
@media (max-width: 370px) {
  #fg-hero-title { font-size: 44px; }
  #fg-hero-aside { grid-template-columns: 1fr; gap: 20px; }
  #fg-hero-aside p { max-width: 100%; }
  #fg-hero-btn { justify-self: start; }
  #fg-hero-caption > div p:first-child { font-size: 19px; }
  #fg-hero-caption a { max-width: 90px; }
  #fg-hero-media { height: 390px; }
  #fg-filters { gap: 18px; }
  #fg-project-grid h3 { font-size: 21px; }
  #fg-project-grid [id^="fg-open-"] > div:first-child { height: 300px !important; }
  #fg-form-row-1, #fg-form-row-2 { grid-template-columns: 1fr; gap: 0; }
  #fg-r-intro-title { font-size: 33px; }
  #fg-r-prec-title { font-size: 42px; }
  #fg-r-contact-title { font-size: 47px; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(#fg-site) { scroll-behavior: auto; }
  #fg-site *, #fg-site *::before, #fg-site *::after { animation: none !important; transition: none !important; }
  html.fg-ready #fg-site [id^="fg-r-"]:not(.is-visible) { opacity: 1; transform: none; }
  html.fg-ready #fg-blueprint .fg-draw :is(path, circle) { stroke-dashoffset: 0; }
}/* End custom CSS */