@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap";:root{--bg: #f3f6fb;--bg-strong: #e7eef9;--ink: #0f1b2d;--ink-soft: #445066;--accent: #1fa22e;--accent-2: #f9b700;--accent-3: #1fa22e;--light-green: #dbf0dd;--card: #ffffff;--line: #d6deea;--shadow: 0 18px 50px rgba(15, 27, 45, .12);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--max: 1200px}*{box-sizing:border-box}body{margin:0;font-family:Montserrat,system-ui,-apple-system,sans-serif;color:var(--ink);background:radial-gradient(1200px 800px at 15% 10%,#ffffff 0%,var(--bg) 60%),linear-gradient(120deg,#e4f0ff,#fef6f0,#e7f7f4);min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%}.site{display:flex;flex-direction:column;min-height:100vh}.container{width:min(100% - 48px,var(--max));margin:0 auto}.navbar{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f3f6fbd1;border-bottom:1px solid rgba(214,222,234,.6)}.navbar-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.logo{max-width:250px}.logo img{width:100%;height:auto;display:block}.nav-links{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.nav-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;box-shadow:0 10px 20px #0f1b2d1a;cursor:pointer;gap:5px;flex-direction:column}.nav-toggle-bar{display:block;width:22px;height:2px;background:var(--ink);border-radius:999px}.nav-links.is-open{display:flex}.nav-links a{padding:8px 12px;border-radius:999px;font-weight:500;color:var(--ink-soft);position:relative;isolation:isolate}.nav-links a:hover,.nav-links a[aria-current=page],.nav-links a.is-active{color:var(--ink);background:var(--light-green)}.nav-links a:hover:after,.nav-links a[aria-current=page]:after,.nav-links a.is-active:after{content:"";position:absolute;left:10px;right:10px;top:-16px;height:14px;background:center/contain no-repeat url(/img/handle.svg);opacity:.95;z-index:-1}.hero{padding:72px 0 48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:42px;align-items:center;position:relative}.hero-home:before,.hero-home:after{content:"";position:absolute;background-repeat:no-repeat;background-size:contain;pointer-events:none;z-index:0}.hero-home:before{width:150px;height:150px;left:30%;top:30px;background-image:url(/img/stone-yellow.svg);transform:rotate(-15deg)}.hero-home:after{width:200px;height:200px;right:150px;bottom:-190px;background-image:url(/img/stone-green.svg);transform:rotate(15deg)}@media(max-width:1070px){.hero-home:before{width:100px;height:100px}.hero-home:after{width:120px;height:120px;bottom:-100px}}@media(max-width:767px){.hero-home:before,.hero-home:after{display:none}}.hero-home>*{position:relative;z-index:1}.hero h1{font-size:clamp(2.6rem,3vw + 1.2rem,4rem);margin:0 0 16px;letter-spacing:-.01em}.hero p{color:var(--ink-soft);font-size:1.1rem;line-height:1.7;margin:0 0 26px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-actions.center{justify-content:center}.button{display:inline-block;padding:12px 22px;border-radius:999px;border:1px solid transparent;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.button.primary{background:var(--accent);color:#fff;box-shadow:0 16px 30px #1fa22e59}.button.secondary{background:#fff;border-color:var(--line);color:var(--ink)}.button-icon{display:inline-flex;align-items:center;gap:10px}.button-icon-svg{width:18px;height:18px;fill:currentColor;flex:0 0 18px}.button:hover{transform:translateY(-2px)}.photo-placeholder{background:linear-gradient(135deg,#1b6ff240,#14b8a640);display:grid;place-items:center;color:var(--ink-soft);font-weight:600;text-transform:uppercase;letter-spacing:.12em;border-radius:var(--radius-md);overflow:hidden}.section{padding:48px 0}@media(max-width:600px){.section{padding:22px 0}}.section h2{margin:0 0 18px;font-size:clamp(1.8rem,1.6vw + 1rem,2.6rem)}.section p{color:var(--ink-soft);line-height:1.7;margin:0 0 20px}.section p a,.info-item p a,.footer p a{color:var(--accent);font-weight:600}.section p a:hover,.info-item p a:hover,.footer p a:hover{text-decoration:underline}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.gallery-card{display:grid;grid-template-rows:auto 1fr;border-radius:var(--radius-md);background:var(--card);border:1px solid rgba(214,222,234,.7);box-shadow:0 14px 24px #0f1b2d14;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.gallery-card:hover{transform:translateY(-2px);box-shadow:0 18px 30px #0f1b2d1f}.gallery-thumb-wrap{position:relative;overflow:hidden}.gallery-thumb{width:100%;height:190px;object-fit:cover;display:block}.gallery-year{position:absolute;top:12px;right:12px;padding:6px 10px;border-radius:999px;background:var(--accent-2);color:#fff;font-weight:600;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 10px 18px #0f1b2d33;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gallery-card-body{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;color:var(--ink)}.gallery-card-body strong{font-weight:600}.gallery-card-body span{color:var(--ink-soft);font-size:.95rem}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.photo-grid a{border-radius:var(--radius-sm);overflow:hidden;border:1px solid rgba(214,222,234,.7);background:#fff;box-shadow:0 10px 18px #0f1b2d14;transition:transform .2s ease,box-shadow .2s ease;max-width:400px;width:100%}.photo-grid a:hover{transform:translateY(-2px);box-shadow:0 14px 24px #0f1b2d1f}.photo-grid img{width:100%;height:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.grid-3{grid-template-columns:repeat(3,minmax(240px,1fr))}@media(max-width:980px){.grid-3{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:640px){.grid-3{grid-template-columns:1fr}}.card{background:var(--card);border-radius:var(--radius-md);padding:24px;border:1px solid rgba(214,222,234,.7);box-shadow:0 14px 24px #0f1b2d14}.card h3{margin:0 0 12px;font-size:1.2rem}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:var(--light-green);color:var(--ink);font-weight:600;font-size:.9rem}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;align-items:center}.list{list-style:none;margin:0;padding:0;display:grid;gap:12px;color:var(--ink-soft)}.list li{padding-left:24px;position:relative}.list li:before{content:"";width:10px;height:10px;background:var(--accent-2);border-radius:50%;position:absolute;left:0;top:8px}.info-grid{display:grid;gap:16px}.info-item{background:#ffffffbf;border:1px solid rgba(214,222,234,.8);border-radius:var(--radius-sm);padding:18px 20px}.info-item-header{display:flex;align-items:center;gap:12px;margin-bottom:10px;color:var(--ink)}.info-item-header svg{width:22px;height:22px;flex:0 0 22px;fill:currentColor;color:var(--accent);background:var(--light-green);border-radius:10px;padding:6px;box-sizing:content-box}.info-item strong{font-weight:600;letter-spacing:.01em}.info-item p{margin:0 0 6px;color:var(--ink-soft)}.info-item p:last-child{margin-bottom:0}.footer{margin-top:auto;padding:36px 0 60px;color:var(--ink-soft)}.footer-inner{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid rgba(214,222,234,.8);padding-top:24px}.flash{width:calc(100% - 40px);margin:20px;padding:18px 24px;border-radius:12px;background:#ff7a5926;color:var(--ink);text-align:center;font-weight:500}@media(max-width:720px){.navbar-inner{flex-direction:row;align-items:center;flex-wrap:wrap}.nav-links{display:flex;width:100%;gap:8px;flex-direction:column;align-items:flex-start;padding:0;background:#ffffffbf;border-radius:16px;border:1px solid rgba(214,222,234,.8);border-width:0;max-height:0;opacity:0;overflow:hidden;pointer-events:none;visibility:hidden;transition:.3s ease}.nav-links a{width:100%}.nav-links a:hover:after,.nav-links a[aria-current=page]:after,.nav-links a.is-active:after{display:none}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto}.nav-links.is-open{max-height:400px;margin-top:20px;opacity:1;padding:12px;border-width:1px;pointer-events:auto;visibility:visible}.container{width:min(100% - 32px,var(--max))}}.text-center{text-align:center}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:2.5rem!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:2.5rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:2.5rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:2.5rem!important}.m-auto{margin-left:auto!important;margin-right:auto!important}.flash.success{background:var(--light-green);border:1px solid var(--accent)}.contact-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}@media(max-width:800px){.contact-boxes{grid-template-columns:1fr}}.contact-form-wrap{max-width:640px;margin:0 auto}.contact-form-wrap h2{margin:0 0 8px;font-size:clamp(1.8rem,1.6vw + 1rem,2.6rem);text-align:center}.contact-form-wrap p{color:var(--ink-soft);line-height:1.7;margin:0 0 24px;text-align:center}.contact-form-wrap form{display:grid;gap:18px}.contact-form-wrap input[type=text],.contact-form-wrap input[type=email],.contact-form-wrap textarea{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);font-family:inherit;font-size:1rem;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}.contact-form-wrap input[type=text]:focus,.contact-form-wrap input[type=email]:focus,.contact-form-wrap textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--light-green)}.contact-form-wrap textarea{min-height:150px;resize:vertical}.contact-form-wrap input[type=submit]{display:inline-block;padding:14px 28px;border-radius:999px;border:none;background:var(--accent);color:#fff;font-family:inherit;font-weight:600;font-size:1rem;cursor:pointer;box-shadow:0 16px 30px #1fa22e59;transition:transform .2s ease,box-shadow .2s ease;justify-self:start}.contact-form-wrap input[type=submit]:hover{transform:translateY(-2px)}.contact-form-wrap .error{color:#d32f2f;font-size:.85rem;margin-top:4px}.contact-form-wrap tr:last-child td{text-align:center}.nf-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;background:#0f1b2d73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:nfFadeIn .2s ease}.nf-modal-overlay.nf-modal-out{animation:nfFadeOut .15s ease forwards}.nf-modal{background:var(--card);border-radius:var(--radius-md);padding:28px 32px;max-width:420px;width:calc(100% - 32px);box-shadow:0 24px 60px #0f1b2d40;animation:nfSlideIn .25s ease}.nf-modal-out .nf-modal{animation:nfSlideOut .15s ease forwards}.nf-modal-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.nf-modal-header strong{font-size:1.1rem}.nf-modal-icon{width:24px;height:24px;flex:0 0 24px;fill:#d32f2f}.nf-modal-errors{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:8px}.nf-modal-errors li{padding:10px 14px;background:#d32f2f14;border-left:3px solid #d32f2f;border-radius:0 8px 8px 0;color:var(--ink);font-size:.95rem;line-height:1.5}.nf-modal-btn{display:block;width:100%;padding:12px;border:none;border-radius:999px;background:var(--accent);color:#fff;font-family:inherit;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .2s ease}.nf-modal-btn:hover{transform:translateY(-1px)}@keyframes nfFadeIn{0%{opacity:0}to{opacity:1}}@keyframes nfFadeOut{0%{opacity:1}to{opacity:0}}@keyframes nfSlideIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes nfSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.97)}}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;width:0!important;overflow:hidden!important}
