@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600;700&display=swap');:root{--ink:#242322;--muted:#77736f;--cream:#f8f7f4;--line:#e8e5df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:30;border-bottom:1px solid #f0eeea}.nav{max-width:1200px;margin:auto;padding:15px 30px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:205px;height:60px;object-fit:contain;object-position:left}.links{display:flex;align-items:center;gap:30px}.links a{font-size:12px;text-transform:uppercase;letter-spacing:.16em}.links a.active,.links a:hover{border-bottom:1px solid #222}.menu-toggle{display:none;background:none;border:0;font-size:26px;cursor:pointer}.wrap{max-width:1200px;margin:auto;padding:0 30px}.eyebrow{font-size:11px;letter-spacing:.27em;text-transform:uppercase;color:#807a75;font-weight:600}.hero{padding:74px 0 95px}.hero-grid{display:grid;grid-template-columns:43% 57%;align-items:center;gap:30px}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(44px,5.7vw,82px);font-weight:400;letter-spacing:-.065em;line-height:1.11;margin:24px 0}.hero p{max-width:390px;color:var(--muted);font-size:16px}.hero-image{height:610px;object-fit:cover;width:100%;object-position:center 30%}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 26px;border:1px solid #242322;text-transform:uppercase;font-size:11px;letter-spacing:.16em;margin-top:22px;transition:.2s;background:#242322;color:#fff;cursor:pointer}.btn:hover{background:#fff;color:#242322}.btn.light{background:transparent;color:#242322}.btn.light:hover{background:#242322;color:#fff}.section{padding:90px 0}.soft{background:var(--cream)}.section h2,.page-head h1{font-family:Manrope,sans-serif;font-weight:400;letter-spacing:-.055em;line-height:1.17;font-size:clamp(35px,4vw,57px);margin:13px 0 20px}.section-intro{max-width:540px;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}.photo-grid img{width:100%;height:440px;object-fit:cover}.photo-grid .offset{margin-top:45px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw}.split img{width:100%;height:560px;object-fit:cover}.split p{color:var(--muted);max-width:500px}.center{text-align:center}.center .section-intro{margin-left:auto;margin-right:auto}.page-head{padding:85px 0 45px;text-align:center}.page-head p{max-width:540px;margin:auto;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:20px 0 100px}.gallery img{width:100%;height:440px;object-fit:cover;cursor:zoom-in}.gallery img:nth-child(3n+2){height:510px}.gallery img:nth-child(3n+3){height:395px}.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:45px 0 20px}.price{border:1px solid var(--line);padding:40px 30px;text-align:center}.price .num{font-size:49px;font-weight:300;letter-spacing:-.06em;margin:14px 0}.price h3{font-size:19px;font-weight:500;margin:10px 0}.price p{color:var(--muted);margin:9px 0}.price .btn{margin-top:28px}.note{font-size:13px;color:var(--muted);text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps h3{font-size:19px;font-weight:500}.steps p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding:40px 0 110px}.contact-grid p{color:var(--muted)}label{font-size:12px;letter-spacing:.08em;display:block;margin:0 0 6px}input,textarea,select{width:100%;border:1px solid #ddd9d4;background:white;padding:13px 15px;font:inherit;border-radius:0;margin-bottom:18px}textarea{min-height:145px;resize:vertical}footer{border-top:1px solid var(--line);padding:45px 0;color:#777;font-size:12px}.foot{display:flex;justify-content:space-between;align-items:center;gap:20px}.foot img{width:170px}.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:99;align-items:center;justify-content:center;padding:40px}.lightbox.open{display:flex}.lightbox img{max-height:90vh;max-width:90vw;object-fit:contain}.close{position:absolute;right:28px;top:16px;background:none;border:0;color:white;font-size:36px;cursor:pointer}.banner{height:360px;object-fit:cover;width:100%;object-position:center 38%}@media(max-width:800px){.nav{padding:10px 18px}.brand img{width:170px;height:55px}.menu-toggle{display:block}.links{display:none;position:absolute;top:75px;left:0;right:0;background:white;padding:28px;flex-direction:column;border-bottom:1px solid var(--line)}.links.show{display:flex}.wrap{padding:0 22px}.hero{padding:30px 0 65px}.hero-grid,.split,.contact-grid{grid-template-columns:1fr;gap:30px}.hero-image{height:440px}.hero-grid>div:first-child{padding:15px 0}.hero h1{font-size:52px}.section{padding:65px 0}.photo-grid,.prices,.steps{grid-template-columns:1fr}.photo-grid img,.photo-grid .offset{height:430px;margin-top:0}.gallery{grid-template-columns:repeat(2,1fr);gap:10px}.gallery img,.gallery img:nth-child(3n+2),.gallery img:nth-child(3n+3){height:290px}.split img{height:420px}.page-head{padding:60px 0 35px}.contact-grid{padding-bottom:70px}.foot{flex-direction:column;text-align:center}}
/* Gallery: temporary portfolio message */
.gallery-coming-soon{min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:95px 20px}.gallery-coming-soon p{max-width:570px;line-height:1.8}.gallery-coming-soon .btn{margin-top:25px}
