:root{--bg:#252525;--bg2:#1d1d1d;--paper:#f3f0eb;--paper2:#e9e4dd;--ink:#222;--muted:#6b675f;--accent:#c9b18f;--line:#d5cfc6;--light:rgba(255,255,255,.13);--container:min(1240px,calc(100vw - 64px));--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{width:var(--container);margin:auto}.container-narrow{width:min(720px,calc(100vw - 64px))}.section{padding:118px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--accent);margin:0 0 20px}.eyebrow.dark{color:#89745c}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.02}h1{font-size:clamp(3.3rem,6.5vw,7.1rem);letter-spacing:-.045em}h2{font-size:clamp(2.7rem,4.4vw,5.2rem);letter-spacing:-.035em}h3{font-size:1.25rem}.site-header{position:fixed;inset:0 0 auto;z-index:20;transition:.3s}.site-header.scrolled{background:rgba(31,31,31,.96);backdrop-filter:blur(10px);box-shadow:0 1px rgba(255,255,255,.08)}.nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between}.brand{width:235px;height:68px;display:flex;align-items:center;overflow:hidden}.brand img{width:225px}.nav-links{display:flex;align-items:center;gap:24px;color:#fff;font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}.nav-links a{opacity:.8}.nav-links a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.34);padding:11px 15px}.menu-toggle{display:none;border:0;background:transparent}.menu-toggle span{display:block;width:26px;height:1px;background:#fff;margin:7px}.hero{min-height:100vh;position:relative;background:#242424;color:#fff;display:grid;grid-template-columns:.84fr 1.16fr}.hero-copy{padding:175px 7vw 90px;align-self:center;z-index:2}.hero-lead{font-size:1.07rem;max-width:610px;color:rgba(255,255,255,.72)}.signature-line{font-family:var(--serif);font-size:1.42rem;color:#fff;margin:28px 0 35px}.hero-actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;padding:15px 19px;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:800;cursor:pointer}.btn-primary{background:#fff;color:#222}.btn-primary:hover{background:var(--accent)}.btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}.hero-image{background:linear-gradient(to right,rgba(37,37,37,.23),transparent 25%),url('../images/img-2010a77d7e3f.webp') center 45%/cover;min-height:100vh}.trust-strip{background:#1e1e1e;color:#fff;border-top:1px solid var(--light)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{padding:27px 34px;border-right:1px solid var(--light)}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border:0}.trust-grid strong{font:500 1.55rem var(--serif);display:block}.trust-grid span{color:rgba(255,255,255,.56);font-size:.82rem}.intro,.craft,.visualisations,.about{background:var(--paper)}.section-heading{max-width:940px;margin-bottom:58px}.section-heading.split{max-width:none;display:grid;grid-template-columns:1.25fr .75fr;gap:78px;align-items:end}.section-heading.split>p{color:var(--muted);margin-bottom:18px}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:330px;gap:12px}.gallery-item{padding:0;border:0;overflow:hidden;background:#ccc;cursor:zoom-in;position:relative}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.02);filter:brightness(.94)}.transformation{background:#fff}.before-after{display:grid;grid-template-columns:1fr .52fr 1fr;gap:12px;min-height:640px}.ba-card,.process-strip figure{margin:0;position:relative;overflow:hidden;background:#ddd}.ba-card img,.process-strip img{width:100%;height:100%;object-fit:cover}.ba-card>span,.process-strip span{position:absolute;z-index:2;left:14px;top:14px;background:rgba(20,20,20,.82);color:#fff;padding:8px 10px;font-size:.67rem;font-weight:800;letter-spacing:.12em}.after>span{background:#fff;color:#222}.process-strip{display:grid;grid-template-rows:repeat(3,1fr);gap:12px}.mini-gallery{display:grid;grid-template-columns:.78fr .78fr 1.1fr;gap:12px;margin-top:12px}.mini-gallery>.gallery-item{height:390px}.story-copy{padding:46px;background:var(--paper2);display:flex;flex-direction:column;justify-content:center}.story-copy h3{font:500 2.1rem/1.1 var(--serif)}.story-copy p{color:var(--muted)}.text-link{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-top:12px}.services{background:var(--bg);color:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--light)}.service-card{padding:45px 34px 40px;border-right:1px solid var(--light);min-height:400px;display:flex;flex-direction:column}.service-card:first-child{padding-left:0}.service-card:last-child{border:0}.service-no{color:var(--accent);font-size:.78rem;letter-spacing:.12em;margin-bottom:50px}.service-card h3{font:500 2rem/1.1 var(--serif)}.service-card p{color:rgba(255,255,255,.66)}.service-card .service-meta{margin-top:auto;padding-top:24px;border-top:1px solid var(--light);color:#fff;font-size:.82rem}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.detail-grid figure{margin:0;background:#fff}.detail-grid img{width:100%;height:410px;object-fit:cover}.detail-grid figcaption{padding:18px;font-size:.8rem;color:var(--muted)}.rough{background:#202020;color:#fff}.rough-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:center}.rough-copy p:last-child{color:rgba(255,255,255,.63);max-width:500px}.rough-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rough-photos img{width:100%;height:450px;object-fit:cover}.process{background:var(--paper2)}.process-wrap{display:grid;grid-template-columns:.84fr 1.16fr;gap:90px}.process-intro{position:sticky;top:120px;align-self:start}.process-intro>p:last-child{color:var(--muted);max-width:470px}.steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.steps li{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid var(--line)}.steps>li>span{color:#89745c;font-size:.78rem}.steps h3{margin-bottom:6px}.steps p{color:var(--muted);margin:0}.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.visual-grid figure{margin:0;position:relative;height:600px;overflow:hidden}.visual-grid img{width:100%;height:100%;object-fit:cover}.visual-grid figcaption{position:absolute;left:14px;bottom:14px;background:#fff;padding:8px 10px;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.exterior{background:#fff}.exterior-grid{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;gap:12px;align-items:stretch}.exterior-grid>div{background:var(--paper2);padding:50px;display:flex;flex-direction:column;justify-content:center}.exterior-grid p:last-child{color:var(--muted)}.exterior-grid img{width:100%;height:520px;object-fit:cover}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:84px;align-items:center}.about-image{height:680px;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy>p:not(.eyebrow){color:var(--muted);max-width:660px}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.pill-row span{border:1px solid var(--line);padding:9px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.contact{background:#202020;color:#fff}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-copy{position:sticky;top:120px;align-self:start}.contact-copy>p:not(.eyebrow){color:rgba(255,255,255,.62);max-width:430px}.contact-note{margin-top:42px;border-top:1px solid var(--light);padding-top:20px;display:flex;flex-direction:column}.contact-note span{color:rgba(255,255,255,.58)}.lead-form{display:flex;flex-direction:column;gap:18px;background:rgba(255,255,255,.04);border:1px solid var(--light);padding:34px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.7)}input,select,textarea{width:100%;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.18);color:#fff;padding:14px;outline:0;border-radius:0}select option{color:#222}.form-status{min-height:22px;color:#dbc6a7}.form-small{font-size:.72rem!important;color:rgba(255,255,255,.42)!important}.direct-contact{margin-top:34px;border-top:1px solid var(--light)}.direct-contact-item{display:flex;flex-direction:column;padding:18px 0;border-bottom:1px solid var(--light);transition:.2s}.direct-contact-item span{font-size:.67rem;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.46);margin-bottom:4px}.direct-contact-item strong{font-size:1rem;font-weight:600;overflow-wrap:anywhere}.direct-contact-item:hover{padding-left:7px;color:var(--accent)}.mobile-contact-bar{display:none}
.site-footer{background:#171717;color:#fff;padding:42px 0}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}.footer-brand img{width:260px;margin-bottom:10px}.footer-brand p{color:rgba(255,255,255,.48);font-size:.85rem}.footer-links{display:flex;gap:20px;font-size:.8rem;color:rgba(255,255,255,.72)}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;color:rgba(255,255,255,.35);font-size:.74rem}.lightbox{width:min(92vw,1100px);max-height:92vh;border:0;padding:0;background:#111}.lightbox::backdrop{background:rgba(0,0,0,.83)}.lightbox img{max-height:88vh;width:100%;object-fit:contain}.lightbox-close{position:absolute;right:12px;top:8px;width:42px;height:42px;border:0;background:rgba(0,0,0,.62);color:#fff;font-size:30px;cursor:pointer}
@media(max-width:1000px){.nav-links{position:fixed;inset:0;background:#222;display:flex;flex-direction:column;justify-content:center;gap:26px;font-size:1.25rem;transform:translateY(-105%);transition:.3s}.nav-links.open{transform:none}.menu-toggle{display:block;z-index:22}.brand{z-index:22}.hero{grid-template-columns:1fr}.hero-image{position:absolute;inset:0;opacity:.38}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,30,30,.92),rgba(30,30,30,.42))}.hero-copy>*{position:relative;z-index:2}.section-heading.split,.rough-grid,.process-wrap,.about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.before-after{grid-template-columns:1fr 1fr}.process-strip{display:none}.mini-gallery{grid-template-columns:1fr 1fr}.story-copy{grid-column:1/-1}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--light);padding-left:0;min-height:auto}.detail-grid{grid-template-columns:1fr 1fr}.visual-grid{grid-template-columns:1fr}.visual-grid figure{height:650px}.exterior-grid{grid-template-columns:1fr 1fr}.exterior-grid>div{grid-column:1/-1}.process-intro,.contact-copy{position:static}.about-image{height:560px}}
@media(max-width:680px){:root{--container:calc(100vw - 32px)}body{padding-bottom:66px}.section{padding:82px 0}.nav-wrap{height:74px}.brand{width:190px}.brand img{width:180px}.hero-copy{padding:132px 16px 80px}.hero-actions{flex-direction:column}.btn{width:100%}.trust-grid{grid-template-columns:1fr}.trust-grid>div{padding:18px 0;border-right:0;border-bottom:1px solid var(--light)}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:390px}.gallery-item.tall,.gallery-item.wide{grid-row:span 1;grid-column:span 1}.before-after{grid-template-columns:1fr}.ba-card{height:480px}.mini-gallery{grid-template-columns:1fr}.mini-gallery>.gallery-item{height:420px}.story-copy{grid-column:auto;padding:30px}.detail-grid{grid-template-columns:1fr}.detail-grid img{height:460px}.rough-photos{grid-template-columns:1fr}.rough-photos img{height:420px}.visual-grid figure{height:520px}.exterior-grid{grid-template-columns:1fr}.exterior-grid>div{grid-column:auto;padding:30px}.exterior-grid img{height:420px}.field-row{grid-template-columns:1fr}.lead-form{padding:22px}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1.25fr;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#151515;border-top:1px solid rgba(255,255,255,.14);box-shadow:0 -8px 30px rgba(0,0,0,.25)}.mobile-contact-bar a{min-height:66px;display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.mobile-contact-call{background:#fff;color:#222}.mobile-contact-mail{background:#c9b18f;color:#1d1d1d}.direct-contact{margin-top:28px}.direct-contact-item{padding:15px 0}.contact-note{margin-top:28px}}
.visual-cta{margin-top:28px;padding:34px 36px;border:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;background:#fff}.visual-cta h3{font:500 2rem/1.12 var(--serif);margin-bottom:10px}.visual-cta p:not(.eyebrow){color:var(--muted);max-width:720px;margin-bottom:0}.btn-dark{background:#242424;color:#fff;border-color:#242424;white-space:nowrap}.btn-dark:hover{background:#89745c;border-color:#89745c}.project-cta{cursor:pointer}
@media(max-width:900px){.visual-cta{grid-template-columns:1fr}.visual-cta .btn{width:100%}}
@media(max-width:680px){.visual-cta{padding:26px 22px}.visual-cta h3{font-size:1.6rem}}

/* v5 – construction project portfolio */
.brand,.footer-brand{background:transparent!important}.brand img,.footer-brand img{background:transparent!important}
.build-projects{background:#ece7df;border-top:1px solid var(--line)}
.build-heading{margin-bottom:48px}.build-heading>p{max-width:610px}
.project-jump{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #cbc4ba;margin:0 0 70px;background:rgba(255,255,255,.28)}
.project-jump a{padding:18px 20px;border-right:1px solid #cbc4ba;font-size:.78rem;text-transform:uppercase;letter-spacing:.065em;display:flex;gap:12px;align-items:center;transition:.2s}
.project-jump a:last-child{border-right:0}.project-jump a:hover{background:#fff}.project-jump span{font-family:var(--serif);font-size:1.2rem;color:#8a765f}
.build-project{scroll-margin-top:115px;display:grid;grid-template-columns:.78fr 1.22fr;gap:58px;align-items:center;padding:72px 0;border-top:1px solid #cbc4ba}
.build-project.reverse{grid-template-columns:1.22fr .78fr}.build-project.reverse .project-copy{grid-column:2;grid-row:1}.build-project.reverse .project-mosaic{grid-column:1;grid-row:1}
.project-index{font-size:.69rem;text-transform:uppercase;letter-spacing:.15em;color:#8a765f;font-weight:800;margin-bottom:18px}.project-copy h3{font:500 clamp(1.8rem,2.6vw,3rem)/1.08 var(--serif);letter-spacing:-.025em;margin-bottom:22px}.project-copy>p:not(.project-index){color:var(--muted);max-width:600px}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.project-tags span{border:1px solid #c7bfb4;background:rgba(255,255,255,.3);padding:7px 9px;font-size:.65rem;text-transform:uppercase;letter-spacing:.075em}
.project-mosaic{display:grid;gap:9px;min-width:0}.project-mosaic-3{grid-template-columns:1.45fr .8fr;grid-template-rows:250px 250px}.project-mosaic-4{grid-template-columns:1.35fr .8fr;grid-template-rows:164px 164px 164px}.project-mosaic-4 .project-photo-main{grid-row:1 / span 3}.project-photo{position:relative;border:0;padding:0;overflow:hidden;background:#222;cursor:zoom-in;width:100%;height:100%;min-height:0}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.project-photo:hover img{transform:scale(1.025)}.project-photo-main{grid-row:1 / span 2}.project-photo:after{content:'+';position:absolute;right:12px;bottom:12px;width:31px;height:31px;display:grid;place-items:center;background:rgba(20,20,20,.72);color:#fff;font-size:19px;line-height:1}
.build-project.apartment{display:block;padding-bottom:20px}.apartment-copy{display:grid;grid-template-columns:.72fr 1.28fr;column-gap:70px;align-items:start}.apartment-copy .project-index,.apartment-copy h3{grid-column:1}.apartment-copy>p:not(.project-index),.apartment-copy .project-tags{grid-column:2}.apartment-copy>p:not(.project-index){grid-row:1 / span 2;padding-top:34px}.apartment-copy .project-tags{grid-row:3}
.timeline-note{text-align:right;color:#80786e;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;margin:28px 0 10px}.timeline-note span{color:#8a765f;padding:0 4px}
.project-timeline{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,31%);gap:10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding:0 0 18px;scrollbar-color:#8a765f transparent}.project-timeline figure{margin:0;scroll-snap-align:start;background:#ded7ce}.project-timeline .project-photo{height:315px}.project-timeline figcaption{display:flex;align-items:baseline;gap:11px;padding:13px 14px 15px}.project-timeline figcaption strong{font:500 1.35rem var(--serif);color:#8a765f}.project-timeline figcaption span{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}
@media(max-width:1000px){.project-jump{margin-bottom:45px}.build-project,.build-project.reverse{grid-template-columns:1fr;gap:32px}.build-project.reverse .project-copy,.build-project.reverse .project-mosaic{grid-column:auto;grid-row:auto}.project-mosaic-3{grid-template-rows:230px 230px}.apartment-copy{display:block}.apartment-copy>p:not(.project-index){padding-top:0}.project-timeline{grid-auto-columns:minmax(280px,58%)}}
@media(max-width:680px){.build-heading{margin-bottom:32px}.project-jump{grid-template-columns:1fr}.project-jump a{border-right:0;border-bottom:1px solid #cbc4ba}.project-jump a:last-child{border-bottom:0}.build-project{padding:52px 0}.project-mosaic-3{grid-template-columns:1fr 1fr;grid-template-rows:300px 190px}.project-photo-main{grid-column:1/-1;grid-row:auto}.project-copy h3{font-size:1.85rem}.project-timeline{grid-auto-columns:82%;margin-right:calc((100vw - 32px - 100%)*-1)}.project-timeline .project-photo{height:310px}.timeline-note{text-align:left}}
@media(max-width:760px){.project-jump{grid-template-columns:1fr 1fr}.project-jump a:nth-child(2){border-right:0}.project-jump a:nth-child(-n+2){border-bottom:1px solid #cbc4ba}.project-mosaic-4{grid-template-columns:1fr 1fr;grid-template-rows:220px 180px 180px}.project-mosaic-4 .project-photo-main{grid-column:1 / span 2;grid-row:1}.project-mosaic-4 .project-photo:nth-child(4){grid-column:1 / span 2}}
/* v7 — jemné scroll animácie a plynulé prechody */
:root{--motion-ease:cubic-bezier(.22,.75,.24,1)}
.hero-image{
  background-position:center calc(45% + var(--hero-parallax,0px));
  transform:scale(var(--hero-scale,1.025));
  transform-origin:center;
  will-change:background-position,transform;
}
.hero-copy{transform:translate3d(0,var(--hero-copy-shift,0px),0);opacity:var(--hero-copy-opacity,1);will-change:transform,opacity}

.motion-section{position:relative;isolation:isolate;overflow:clip}
.motion-section::before{
  content:"";position:absolute;inset:-12% -10%;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 78% var(--ambient-y,50%),rgba(201,177,143,.12),transparent 48%);
  opacity:.7;transition:opacity .5s ease;will-change:background-position
}
.motion-section::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:120px;z-index:0;pointer-events:none;
  background:linear-gradient(to bottom,transparent,rgba(24,24,24,.035));
}
.services.motion-section::before,.rough.motion-section::before,.contact.motion-section::before{
  background:radial-gradient(ellipse at 76% var(--ambient-y,50%),rgba(201,177,143,.13),transparent 50%)
}
.services.motion-section::after,.rough.motion-section::after,.contact.motion-section::after{
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.03))
}
.motion-section>*{position:relative;z-index:1}

.motion-reveal{
  opacity:.05;transform:translate3d(0,34px,0) scale(.988);filter:blur(1.5px);
  transition:opacity .82s var(--motion-ease),transform .9s var(--motion-ease),filter .72s ease;
  will-change:opacity,transform,filter
}
.motion-reveal.from-left{transform:translate3d(-28px,18px,0) scale(.99)}
.motion-reveal.from-right{transform:translate3d(28px,18px,0) scale(.99)}
.motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
.motion-reveal.motion-delay-1{transition-delay:.07s}
.motion-reveal.motion-delay-2{transition-delay:.14s}
.motion-reveal.motion-delay-3{transition-delay:.21s}

/* Jemný "živý" pohyb veľkých fotografií bez agresívneho zoomu */
.project-photo img,.gallery-item img,.ba-card img,.visual-grid img,.process-strip img{
  transform:translate3d(0,var(--media-parallax,0px),0) scale(1.035);
  will-change:transform
}
.project-photo:hover img,.gallery-item:hover img{transform:translate3d(0,var(--media-parallax,0px),0) scale(1.055)}

@media(max-width:900px){
  .motion-reveal{transform:translate3d(0,22px,0) scale(.993);filter:none}
  .motion-reveal.from-left,.motion-reveal.from-right{transform:translate3d(0,22px,0) scale(.993)}
  .motion-section::after{height:76px}
}
@media(prefers-reduced-motion:reduce){
  .hero-image,.hero-copy,.motion-reveal,.project-photo img,.gallery-item img,.ba-card img,.visual-grid img,.process-strip img{transition:none!important;transform:none!important;filter:none!important;opacity:1!important}
  .motion-section::before,.motion-section::after{display:none}
}


.portfolio-cta-row{display:flex;justify-content:center;margin-top:48px}.btn-dark{background:var(--bg);color:#fff;border:1px solid var(--bg)}.btn-dark:hover{background:var(--bg2)}

/* ===== Realizácie view styles merged from realizacie.html ===== */
:root{--bg:#252525;--bg2:#1d1d1d;--paper:#f3f0eb;--paper2:#e9e4dd;--ink:#222;--muted:#6b675f;--accent:#c9b18f;--line:#d5cfc6;--light:rgba(255,255,255,.13);--container:min(1240px,calc(100vw - 64px));--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{width:var(--container);margin:auto}.container-narrow{width:min(720px,calc(100vw - 64px))}.section{padding:118px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--accent);margin:0 0 20px}.eyebrow.dark{color:#89745c}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.02}h1{font-size:clamp(3.3rem,6.5vw,7.1rem);letter-spacing:-.045em}h2{font-size:clamp(2.7rem,4.4vw,5.2rem);letter-spacing:-.035em}h3{font-size:1.25rem}.site-header{position:fixed;inset:0 0 auto;z-index:20;transition:.3s}.site-header.scrolled{background:rgba(31,31,31,.96);backdrop-filter:blur(10px);box-shadow:0 1px rgba(255,255,255,.08)}.nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between}.brand{width:235px;height:68px;display:flex;align-items:center;overflow:hidden}.brand img{width:225px}.nav-links{display:flex;align-items:center;gap:24px;color:#fff;font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}.nav-links a{opacity:.8}.nav-links a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.34);padding:11px 15px}.menu-toggle{display:none;border:0;background:transparent}.menu-toggle span{display:block;width:26px;height:1px;background:#fff;margin:7px}.hero{min-height:100vh;position:relative;background:#242424;color:#fff;display:grid;grid-template-columns:.84fr 1.16fr}.hero-copy{padding:175px 7vw 90px;align-self:center;z-index:2}.hero-lead{font-size:1.07rem;max-width:610px;color:rgba(255,255,255,.72)}.signature-line{font-family:var(--serif);font-size:1.42rem;color:#fff;margin:28px 0 35px}.hero-actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;padding:15px 19px;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:800;cursor:pointer}.btn-primary{background:#fff;color:#222}.btn-primary:hover{background:var(--accent)}.btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}.hero-image{background:linear-gradient(to right,rgba(37,37,37,.23),transparent 25%),url('../images/img-2010a77d7e3f.webp') center 45%/cover;min-height:100vh}.trust-strip{background:#1e1e1e;color:#fff;border-top:1px solid var(--light)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{padding:27px 34px;border-right:1px solid var(--light)}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border:0}.trust-grid strong{font:500 1.55rem var(--serif);display:block}.trust-grid span{color:rgba(255,255,255,.56);font-size:.82rem}.intro,.craft,.visualisations,.about{background:var(--paper)}.section-heading{max-width:940px;margin-bottom:58px}.section-heading.split{max-width:none;display:grid;grid-template-columns:1.25fr .75fr;gap:78px;align-items:end}.section-heading.split>p{color:var(--muted);margin-bottom:18px}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:330px;gap:12px}.gallery-item{padding:0;border:0;overflow:hidden;background:#ccc;cursor:zoom-in;position:relative}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.02);filter:brightness(.94)}.transformation{background:#fff}.before-after{display:grid;grid-template-columns:1fr .52fr 1fr;gap:12px;min-height:640px}.ba-card,.process-strip figure{margin:0;position:relative;overflow:hidden;background:#ddd}.ba-card img,.process-strip img{width:100%;height:100%;object-fit:cover}.ba-card>span,.process-strip span{position:absolute;z-index:2;left:14px;top:14px;background:rgba(20,20,20,.82);color:#fff;padding:8px 10px;font-size:.67rem;font-weight:800;letter-spacing:.12em}.after>span{background:#fff;color:#222}.process-strip{display:grid;grid-template-rows:repeat(3,1fr);gap:12px}.mini-gallery{display:grid;grid-template-columns:.78fr .78fr 1.1fr;gap:12px;margin-top:12px}.mini-gallery>.gallery-item{height:390px}.story-copy{padding:46px;background:var(--paper2);display:flex;flex-direction:column;justify-content:center}.story-copy h3{font:500 2.1rem/1.1 var(--serif)}.story-copy p{color:var(--muted)}.text-link{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-top:12px}.services{background:var(--bg);color:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--light)}.service-card{padding:45px 34px 40px;border-right:1px solid var(--light);min-height:400px;display:flex;flex-direction:column}.service-card:first-child{padding-left:0}.service-card:last-child{border:0}.service-no{color:var(--accent);font-size:.78rem;letter-spacing:.12em;margin-bottom:50px}.service-card h3{font:500 2rem/1.1 var(--serif)}.service-card p{color:rgba(255,255,255,.66)}.service-card .service-meta{margin-top:auto;padding-top:24px;border-top:1px solid var(--light);color:#fff;font-size:.82rem}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.detail-grid figure{margin:0;background:#fff}.detail-grid img{width:100%;height:410px;object-fit:cover}.detail-grid figcaption{padding:18px;font-size:.8rem;color:var(--muted)}.rough{background:#202020;color:#fff}.rough-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:center}.rough-copy p:last-child{color:rgba(255,255,255,.63);max-width:500px}.rough-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rough-photos img{width:100%;height:450px;object-fit:cover}.process{background:var(--paper2)}.process-wrap{display:grid;grid-template-columns:.84fr 1.16fr;gap:90px}.process-intro{position:sticky;top:120px;align-self:start}.process-intro>p:last-child{color:var(--muted);max-width:470px}.steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.steps li{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid var(--line)}.steps>li>span{color:#89745c;font-size:.78rem}.steps h3{margin-bottom:6px}.steps p{color:var(--muted);margin:0}.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.visual-grid figure{margin:0;position:relative;height:600px;overflow:hidden}.visual-grid img{width:100%;height:100%;object-fit:cover}.visual-grid figcaption{position:absolute;left:14px;bottom:14px;background:#fff;padding:8px 10px;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.exterior{background:#fff}.exterior-grid{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;gap:12px;align-items:stretch}.exterior-grid>div{background:var(--paper2);padding:50px;display:flex;flex-direction:column;justify-content:center}.exterior-grid p:last-child{color:var(--muted)}.exterior-grid img{width:100%;height:520px;object-fit:cover}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:84px;align-items:center}.about-image{height:680px;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy>p:not(.eyebrow){color:var(--muted);max-width:660px}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.pill-row span{border:1px solid var(--line);padding:9px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.contact{background:#202020;color:#fff}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-copy{position:sticky;top:120px;align-self:start}.contact-copy>p:not(.eyebrow){color:rgba(255,255,255,.62);max-width:430px}.contact-note{margin-top:42px;border-top:1px solid var(--light);padding-top:20px;display:flex;flex-direction:column}.contact-note span{color:rgba(255,255,255,.58)}.lead-form{display:flex;flex-direction:column;gap:18px;background:rgba(255,255,255,.04);border:1px solid var(--light);padding:34px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.7)}input,select,textarea{width:100%;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.18);color:#fff;padding:14px;outline:0;border-radius:0}select option{color:#222}.form-status{min-height:22px;color:#dbc6a7}.form-small{font-size:.72rem!important;color:rgba(255,255,255,.42)!important}.direct-contact{margin-top:34px;border-top:1px solid var(--light)}.direct-contact-item{display:flex;flex-direction:column;padding:18px 0;border-bottom:1px solid var(--light);transition:.2s}.direct-contact-item span{font-size:.67rem;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.46);margin-bottom:4px}.direct-contact-item strong{font-size:1rem;font-weight:600;overflow-wrap:anywhere}.direct-contact-item:hover{padding-left:7px;color:var(--accent)}.mobile-contact-bar{display:none}
.site-footer{background:#171717;color:#fff;padding:42px 0}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}.footer-brand img{width:260px;margin-bottom:10px}.footer-brand p{color:rgba(255,255,255,.48);font-size:.85rem}.footer-links{display:flex;gap:20px;font-size:.8rem;color:rgba(255,255,255,.72)}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;color:rgba(255,255,255,.35);font-size:.74rem}.lightbox{width:min(92vw,1100px);max-height:92vh;border:0;padding:0;background:#111}.lightbox::backdrop{background:rgba(0,0,0,.83)}.lightbox img{max-height:88vh;width:100%;object-fit:contain}.lightbox-close{position:absolute;right:12px;top:8px;width:42px;height:42px;border:0;background:rgba(0,0,0,.62);color:#fff;font-size:30px;cursor:pointer}
@media(max-width:1000px){.nav-links{position:fixed;inset:0;background:#222;display:flex;flex-direction:column;justify-content:center;gap:26px;font-size:1.25rem;transform:translateY(-105%);transition:.3s}.nav-links.open{transform:none}.menu-toggle{display:block;z-index:22}.brand{z-index:22}.hero{grid-template-columns:1fr}.hero-image{position:absolute;inset:0;opacity:.38}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,30,30,.92),rgba(30,30,30,.42))}.hero-copy>*{position:relative;z-index:2}.section-heading.split,.rough-grid,.process-wrap,.about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.before-after{grid-template-columns:1fr 1fr}.process-strip{display:none}.mini-gallery{grid-template-columns:1fr 1fr}.story-copy{grid-column:1/-1}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--light);padding-left:0;min-height:auto}.detail-grid{grid-template-columns:1fr 1fr}.visual-grid{grid-template-columns:1fr}.visual-grid figure{height:650px}.exterior-grid{grid-template-columns:1fr 1fr}.exterior-grid>div{grid-column:1/-1}.process-intro,.contact-copy{position:static}.about-image{height:560px}}
@media(max-width:680px){:root{--container:calc(100vw - 32px)}body{padding-bottom:66px}.section{padding:82px 0}.nav-wrap{height:74px}.brand{width:190px}.brand img{width:180px}.hero-copy{padding:132px 16px 80px}.hero-actions{flex-direction:column}.btn{width:100%}.trust-grid{grid-template-columns:1fr}.trust-grid>div{padding:18px 0;border-right:0;border-bottom:1px solid var(--light)}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:390px}.gallery-item.tall,.gallery-item.wide{grid-row:span 1;grid-column:span 1}.before-after{grid-template-columns:1fr}.ba-card{height:480px}.mini-gallery{grid-template-columns:1fr}.mini-gallery>.gallery-item{height:420px}.story-copy{grid-column:auto;padding:30px}.detail-grid{grid-template-columns:1fr}.detail-grid img{height:460px}.rough-photos{grid-template-columns:1fr}.rough-photos img{height:420px}.visual-grid figure{height:520px}.exterior-grid{grid-template-columns:1fr}.exterior-grid>div{grid-column:auto;padding:30px}.exterior-grid img{height:420px}.field-row{grid-template-columns:1fr}.lead-form{padding:22px}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1.25fr;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#151515;border-top:1px solid rgba(255,255,255,.14);box-shadow:0 -8px 30px rgba(0,0,0,.25)}.mobile-contact-bar a{min-height:66px;display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.mobile-contact-call{background:#fff;color:#222}.mobile-contact-mail{background:#c9b18f;color:#1d1d1d}.direct-contact{margin-top:28px}.direct-contact-item{padding:15px 0}.contact-note{margin-top:28px}}
.visual-cta{margin-top:28px;padding:34px 36px;border:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;background:#fff}.visual-cta h3{font:500 2rem/1.12 var(--serif);margin-bottom:10px}.visual-cta p:not(.eyebrow){color:var(--muted);max-width:720px;margin-bottom:0}.btn-dark{background:#242424;color:#fff;border-color:#242424;white-space:nowrap}.btn-dark:hover{background:#89745c;border-color:#89745c}.project-cta{cursor:pointer}
@media(max-width:900px){.visual-cta{grid-template-columns:1fr}.visual-cta .btn{width:100%}}
@media(max-width:680px){.visual-cta{padding:26px 22px}.visual-cta h3{font-size:1.6rem}}

/* v5 – construction project portfolio */
.brand,.footer-brand{background:transparent!important}.brand img,.footer-brand img{background:transparent!important}
.build-projects{background:#ece7df;border-top:1px solid var(--line)}
.build-heading{margin-bottom:48px}.build-heading>p{max-width:610px}
.project-jump{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #cbc4ba;margin:0 0 70px;background:rgba(255,255,255,.28)}
.project-jump a{padding:18px 20px;border-right:1px solid #cbc4ba;font-size:.78rem;text-transform:uppercase;letter-spacing:.065em;display:flex;gap:12px;align-items:center;transition:.2s}
.project-jump a:last-child{border-right:0}.project-jump a:hover{background:#fff}.project-jump span{font-family:var(--serif);font-size:1.2rem;color:#8a765f}
.build-project{scroll-margin-top:115px;display:grid;grid-template-columns:.78fr 1.22fr;gap:58px;align-items:center;padding:72px 0;border-top:1px solid #cbc4ba}
.build-project.reverse{grid-template-columns:1.22fr .78fr}.build-project.reverse .project-copy{grid-column:2;grid-row:1}.build-project.reverse .project-mosaic{grid-column:1;grid-row:1}
.project-index{font-size:.69rem;text-transform:uppercase;letter-spacing:.15em;color:#8a765f;font-weight:800;margin-bottom:18px}.project-copy h3{font:500 clamp(1.8rem,2.6vw,3rem)/1.08 var(--serif);letter-spacing:-.025em;margin-bottom:22px}.project-copy>p:not(.project-index){color:var(--muted);max-width:600px}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.project-tags span{border:1px solid #c7bfb4;background:rgba(255,255,255,.3);padding:7px 9px;font-size:.65rem;text-transform:uppercase;letter-spacing:.075em}
.project-mosaic{display:grid;gap:9px;min-width:0}.project-mosaic-3{grid-template-columns:1.45fr .8fr;grid-template-rows:250px 250px}.project-mosaic-4{grid-template-columns:1.35fr .8fr;grid-template-rows:164px 164px 164px}.project-mosaic-4 .project-photo-main{grid-row:1 / span 3}.project-photo{position:relative;border:0;padding:0;overflow:hidden;background:#222;cursor:zoom-in;width:100%;height:100%;min-height:0}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.project-photo:hover img{transform:scale(1.025)}.project-photo-main{grid-row:1 / span 2}.project-photo:after{content:'+';position:absolute;right:12px;bottom:12px;width:31px;height:31px;display:grid;place-items:center;background:rgba(20,20,20,.72);color:#fff;font-size:19px;line-height:1}
.build-project.apartment{display:block;padding-bottom:20px}.apartment-copy{display:grid;grid-template-columns:.72fr 1.28fr;column-gap:70px;align-items:start}.apartment-copy .project-index,.apartment-copy h3{grid-column:1}.apartment-copy>p:not(.project-index),.apartment-copy .project-tags{grid-column:2}.apartment-copy>p:not(.project-index){grid-row:1 / span 2;padding-top:34px}.apartment-copy .project-tags{grid-row:3}
.timeline-note{text-align:right;color:#80786e;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;margin:28px 0 10px}.timeline-note span{color:#8a765f;padding:0 4px}
.project-timeline{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,31%);gap:10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding:0 0 18px;scrollbar-color:#8a765f transparent}.project-timeline figure{margin:0;scroll-snap-align:start;background:#ded7ce}.project-timeline .project-photo{height:315px}.project-timeline figcaption{display:flex;align-items:baseline;gap:11px;padding:13px 14px 15px}.project-timeline figcaption strong{font:500 1.35rem var(--serif);color:#8a765f}.project-timeline figcaption span{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}
@media(max-width:1000px){.project-jump{margin-bottom:45px}.build-project,.build-project.reverse{grid-template-columns:1fr;gap:32px}.build-project.reverse .project-copy,.build-project.reverse .project-mosaic{grid-column:auto;grid-row:auto}.project-mosaic-3{grid-template-rows:230px 230px}.apartment-copy{display:block}.apartment-copy>p:not(.project-index){padding-top:0}.project-timeline{grid-auto-columns:minmax(280px,58%)}}
@media(max-width:680px){.build-heading{margin-bottom:32px}.project-jump{grid-template-columns:1fr}.project-jump a{border-right:0;border-bottom:1px solid #cbc4ba}.project-jump a:last-child{border-bottom:0}.build-project{padding:52px 0}.project-mosaic-3{grid-template-columns:1fr 1fr;grid-template-rows:300px 190px}.project-photo-main{grid-column:1/-1;grid-row:auto}.project-copy h3{font-size:1.85rem}.project-timeline{grid-auto-columns:82%;margin-right:calc((100vw - 32px - 100%)*-1)}.project-timeline .project-photo{height:310px}.timeline-note{text-align:left}}
@media(max-width:760px){.project-jump{grid-template-columns:1fr 1fr}.project-jump a:nth-child(2){border-right:0}.project-jump a:nth-child(-n+2){border-bottom:1px solid #cbc4ba}.project-mosaic-4{grid-template-columns:1fr 1fr;grid-template-rows:220px 180px 180px}.project-mosaic-4 .project-photo-main{grid-column:1 / span 2;grid-row:1}.project-mosaic-4 .project-photo:nth-child(4){grid-column:1 / span 2}}
/* v7 — jemné scroll animácie a plynulé prechody */
:root{--motion-ease:cubic-bezier(.22,.75,.24,1)}
.hero-image{
  background-position:center calc(45% + var(--hero-parallax,0px));
  transform:scale(var(--hero-scale,1.025));
  transform-origin:center;
  will-change:background-position,transform;
}
.hero-copy{transform:translate3d(0,var(--hero-copy-shift,0px),0);opacity:var(--hero-copy-opacity,1);will-change:transform,opacity}

.motion-section{position:relative;isolation:isolate;overflow:clip}
.motion-section::before{
  content:"";position:absolute;inset:-12% -10%;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 78% var(--ambient-y,50%),rgba(201,177,143,.12),transparent 48%);
  opacity:.7;transition:opacity .5s ease;will-change:background-position
}
.motion-section::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:120px;z-index:0;pointer-events:none;
  background:linear-gradient(to bottom,transparent,rgba(24,24,24,.035));
}
.services.motion-section::before,.rough.motion-section::before,.contact.motion-section::before{
  background:radial-gradient(ellipse at 76% var(--ambient-y,50%),rgba(201,177,143,.13),transparent 50%)
}
.services.motion-section::after,.rough.motion-section::after,.contact.motion-section::after{
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.03))
}
.motion-section>*{position:relative;z-index:1}

.motion-reveal{
  opacity:.05;transform:translate3d(0,34px,0) scale(.988);filter:blur(1.5px);
  transition:opacity .82s var(--motion-ease),transform .9s var(--motion-ease),filter .72s ease;
  will-change:opacity,transform,filter
}
.motion-reveal.from-left{transform:translate3d(-28px,18px,0) scale(.99)}
.motion-reveal.from-right{transform:translate3d(28px,18px,0) scale(.99)}
.motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
.motion-reveal.motion-delay-1{transition-delay:.07s}
.motion-reveal.motion-delay-2{transition-delay:.14s}
.motion-reveal.motion-delay-3{transition-delay:.21s}

/* Jemný "živý" pohyb veľkých fotografií bez agresívneho zoomu */
.project-photo img,.gallery-item img,.ba-card img,.visual-grid img,.process-strip img{
  transform:translate3d(0,var(--media-parallax,0px),0) scale(1.035);
  will-change:transform
}
.project-photo:hover img,.gallery-item:hover img{transform:translate3d(0,var(--media-parallax,0px),0) scale(1.055)}

@media(max-width:900px){
  .motion-reveal{transform:translate3d(0,22px,0) scale(.993);filter:none}
  .motion-reveal.from-left,.motion-reveal.from-right{transform:translate3d(0,22px,0) scale(.993)}
  .motion-section::after{height:76px}
}
@media(prefers-reduced-motion:reduce){
  .hero-image,.hero-copy,.motion-reveal,.project-photo img,.gallery-item img,.ba-card img,.visual-grid img,.process-strip img{transition:none!important;transform:none!important;filter:none!important;opacity:1!important}
  .motion-section::before,.motion-section::after{display:none}
}


.portfolio-page-hero{min-height:62vh;background:linear-gradient(135deg,#242424 0%,#1b1b1b 100%);color:#fff;display:flex;align-items:flex-end;padding:170px 0 90px;position:relative;overflow:hidden}.portfolio-page-hero:after{content:"";position:absolute;right:-10vw;bottom:-28vw;width:62vw;height:62vw;border-radius:50%;background:radial-gradient(circle,rgba(201,177,143,.16),transparent 64%);pointer-events:none}.portfolio-page-hero-inner{position:relative;z-index:1}.portfolio-page-hero h1{font-size:clamp(4rem,8vw,8rem);margin-bottom:22px}.portfolio-page-hero p:not(.eyebrow){max-width:760px;color:rgba(255,255,255,.72);font-size:1.08rem}.portfolio-bottom-cta{background:var(--bg);color:#fff}.portfolio-bottom-inner{display:flex;align-items:end;justify-content:space-between;gap:50px}.portfolio-bottom-inner h2{margin-bottom:20px}.portfolio-bottom-inner p{max-width:680px;color:rgba(255,255,255,.7)}@media(max-width:800px){.portfolio-page-hero{min-height:auto;padding:145px 0 72px}.portfolio-bottom-inner{display:block}.portfolio-bottom-inner .btn{margin-top:24px}}


/* ===== Single-file view router ===== */
.page-view[hidden]{display:none !important;}
#portfolio-view{min-height:60vh;}
body.view-portfolio .site-header .nav-links a[data-view-link="portfolio"]{opacity:1;}
body.view-portfolio .site-header .nav-links a[data-view-link="home"]{opacity:.82;}



/* Mobile navigation hardening */
@media(max-width:1000px){
  .site-header{z-index:3000!important;pointer-events:auto!important}
  .nav-wrap{position:relative}
  .menu-toggle{display:block!important;position:relative;z-index:3002!important;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;padding:14px;margin:-14px;border-radius:0}
  .menu-toggle span{pointer-events:none}
  .nav-links{z-index:3001!important;pointer-events:none;visibility:hidden}
  .nav-links.open{pointer-events:auto;visibility:visible;transform:translateY(0)!important}
  .nav-links a{display:block;min-width:220px;text-align:center;padding:10px 16px;touch-action:manipulation}
  .brand{position:relative;z-index:3002!important}
}

/* ===== v12: stable mobile navigation ===== */
#sluzby,#proces,#vizualizacie,#kontakt{scroll-margin-top:92px}
@media(max-width:1000px){
  /* backdrop-filter creates a containing block for fixed descendants on some
     mobile browsers. Keep the scrolled header opaque instead, so the menu
     remains fixed to the viewport at every scroll position. */
  .site-header.scrolled{
    background:#1f1f1f!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.mobile-menu-open .site-header{
    background:#222!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .site-header{z-index:5000!important}
  .nav-wrap{position:relative;z-index:1}
  .brand{position:relative;z-index:5003!important}
  .menu-toggle{
    display:flex!important;
    position:relative!important;
    z-index:5003!important;
    width:52px;height:52px;
    padding:0!important;margin:0!important;
    flex:0 0 52px;
    flex-direction:column;align-items:center;justify-content:center;
    cursor:pointer;touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }
  .menu-toggle span{
    width:27px;height:1px;margin:4px 0!important;
    background:#fff;pointer-events:none;
    transition:transform .22s ease,opacity .22s ease;
  }
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
  .nav-links{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100vh!important;
    margin:0!important;
    padding:calc(112px + env(safe-area-inset-top)) 24px calc(92px + env(safe-area-inset-bottom))!important;
    background:#222!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:4px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    transform:translate3d(0,-100%,0)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:5001!important;
    transition:transform .3s ease,opacity .2s ease,visibility 0s linear .3s!important;
  }
  .nav-links.open{
    transform:translate3d(0,0,0)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:transform .3s ease,opacity .2s ease,visibility 0s!important;
  }
  .nav-links a{
    display:flex!important;
    align-items:center;justify-content:center;
    width:min(420px,calc(100vw - 48px))!important;
    min-width:0!important;
    min-height:54px;
    padding:14px 16px!important;
    margin:0!important;
    border-bottom:1px solid rgba(255,255,255,.11);
    color:#fff!important;
    opacity:1!important;
    text-align:center;
    font-size:.86rem;
    line-height:1.25;
    pointer-events:auto!important;
    touch-action:manipulation;
    position:relative;z-index:5002;
  }
  .nav-links .nav-cta{
    margin-top:12px!important;
    border:1px solid rgba(255,255,255,.42)!important;
    background:rgba(255,255,255,.04);
  }
}
@media(max-width:680px){
  #sluzby,#proces,#vizualizacie,#kontakt{scroll-margin-top:74px}
  .nav-links{
    padding-top:calc(94px + env(safe-area-inset-top))!important;
    padding-bottom:calc(84px + env(safe-area-inset-bottom))!important;
  }
  .nav-links a{min-height:52px;font-size:.82rem}
}
