/* Civilco 1.1 – stabilná galéria, lightbox a kontaktný formulár */
.service-grid-full{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-grid-full .service-card{min-height:230px}
.finance-section{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.35fr);gap:clamp(35px,7vw,100px);align-items:center;background:#eef0f2;padding-top:clamp(55px,6vw,85px);padding-bottom:clamp(55px,6vw,85px)}
.finance-copy h2{font-size:clamp(35px,4vw,58px)}
.finance-copy>p:not(.section-kicker){color:#5d665e;font-size:16px;line-height:1.7;margin:22px 0 15px}
.finance-copy small{color:#747b83;line-height:1.5}
.finance-banner{display:block;overflow:hidden;background:#000}
.finance-banner picture,.finance-banner img{display:block;width:100%}
.finance-banner img{height:auto;transition:transform .25s ease}
.finance-banner:hover img{transform:scale(1.01)}
.project-list{display:grid;gap:56px}
.project-card{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.6fr);gap:clamp(28px,5vw,72px);align-items:start;padding-top:38px;border-top:1px solid rgba(255,255,255,.22)}
.project-card:first-child{padding-top:0;border-top:0}
.project-info{position:sticky;top:122px}
.project-number{display:block;color:#a9c6a2;font-size:12px;letter-spacing:.15em;margin-bottom:17px}
.project-info h3{font-family:Georgia,serif;font-size:clamp(27px,3vw,42px);font-weight:500;line-height:1.08;margin:0 0 15px}
.project-info>p:not(.project-meta){color:rgba(255,255,255,.7);font-size:14px;line-height:1.65;margin:15px 0 0}
.project-meta{color:#a9c6a2;font-size:12px;line-height:1.55;text-transform:uppercase;letter-spacing:.07em;margin:0}
.project-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.project-gallery figure{margin:0;aspect-ratio:3/4;overflow:hidden;background:#1b331f}
.project-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.project-gallery .gallery-open:hover img{transform:scale(1.035)}
.older-projects{margin-top:clamp(75px,10vw,140px);padding-top:48px;border-top:1px solid rgba(255,255,255,.25)}
.older-projects-heading{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);column-gap:50px;align-items:end;margin-bottom:30px}
.older-projects-heading .section-kicker{grid-column:1/-1;margin-bottom:14px}
.older-projects-heading h3{font-family:Georgia,serif;font-size:clamp(32px,4vw,54px);font-weight:500;margin:0}
.older-projects-heading>p:last-child{color:rgba(255,255,255,.68);margin:0 0 6px}
.older-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.older-gallery figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:#1b331f}
.older-gallery figure:first-child{grid-column:span 2;grid-row:span 2}
.older-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.older-gallery .gallery-open:hover img{transform:scale(1.035)}
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:14px}
.gallery-item,.gallery-item-1,.gallery-item-2,.gallery-item-3,.gallery-item-4,.gallery-item-5,.gallery-item-6,.gallery-item-7{grid-column:auto;grid-row:auto;aspect-ratio:4/3}
.gallery-item-7{grid-column:2}
.gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden}
.gallery-open:focus-visible{outline:3px solid #a9c6a2;outline-offset:3px}
.gallery-open img{width:100%;height:100%;object-fit:cover}
.lightbox{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:72px 90px;background:rgba(5,12,7,.94)}
.lightbox.is-open{display:flex}
.lightbox-image{max-width:100%;max-height:calc(100vh - 120px);width:auto;height:auto;object-fit:contain;box-shadow:0 20px 70px rgba(0,0,0,.45)}
.lightbox button{position:absolute;border:0;color:#fff;background:rgba(255,255,255,.12);cursor:pointer;display:grid;place-items:center}
.lightbox button:hover,.lightbox button:focus-visible{background:rgba(255,255,255,.25);outline:2px solid #fff}
.lightbox-close{top:22px;right:24px;width:48px;height:48px;font-size:38px}
.lightbox-prev,.lightbox-next{top:50%;width:52px;height:70px;font-size:52px;transform:translateY(-50%)}
.lightbox-prev{left:22px}.lightbox-next{right:22px}
.lightbox-count{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);margin:0;color:#fff;font-size:13px;letter-spacing:.12em}
body.lightbox-open{overflow:hidden}
.contact{grid-template-columns:minmax(0,.9fr) minmax(380px,1fr);align-items:start}
.contact-details{margin-top:38px}
.contact-form-wrap{background:#fff;padding:clamp(25px,4vw,48px);box-shadow:0 18px 55px rgba(41,69,45,.08)}
.contact-form-wrap h3{font-family:Georgia,serif;font-size:32px;font-weight:500;margin:0 0 25px}
.contact-form{display:grid;gap:18px}
.contact-form label{display:grid;gap:8px;color:#39443b;font-size:12px;font-weight:700;letter-spacing:.03em}
.contact-form input,.contact-form textarea{width:100%;border:1px solid #ccd4ca;background:#fff;padding:13px 14px;border-radius:0;color:#172018;font:inherit;font-size:15px;outline:0}
.contact-form input:focus,.contact-form textarea:focus{border-color:#52764a;box-shadow:0 0 0 2px rgba(82,118,74,.14)}
.contact-form textarea{resize:vertical;min-height:130px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form .button{border:0;cursor:pointer;justify-self:start}
.contact-form>small{color:#6c756d;line-height:1.5}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-message{padding:12px 14px;margin:0 0 18px;font-size:14px;line-height:1.5}
.form-success{background:#e7f2e4;color:#29452d}.form-error{background:#f8e9e7;color:#7a2f29}
@media(max-width:980px){.service-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-section,.contact{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item-7{grid-column:auto}.project-card{grid-template-columns:1fr}.project-info{position:static}.project-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.older-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.lightbox{padding:65px 70px}}
@media(max-width:680px){.service-grid-full{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery-item,.gallery-item-7{grid-column:auto;aspect-ratio:4/3}.project-list{gap:44px}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.older-projects-heading{grid-template-columns:1fr;gap:12px}.older-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.older-gallery figure:first-child{grid-column:span 2}.form-row{grid-template-columns:1fr}.lightbox{padding:70px 12px}.lightbox-prev,.lightbox-next{top:auto;bottom:18px;width:48px;height:48px;font-size:40px;transform:none}.lightbox-prev{left:18px}.lightbox-next{right:18px}.lightbox-count{bottom:34px}}
