@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Space+Grotesk:wght@500;600;700&display=swap");:root{--ink:#112535;--muted:#536674;--sun:#f4b943;--mist:#f4f7f8;--line:#dce6ea;--white:#fff}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.65 "DM Sans",Arial,sans-serif;background:#fff}h1,h2,h3{font-family:"Space Grotesk",Arial,sans-serif;line-height:1.1;margin:0 0 18px}h1{font-size:clamp(2.5rem,6vw,5.2rem);letter-spacing:-.05em}h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.035em}h3{font-size:1.35rem}p{margin:0 0 18px}.wrap{max-width:1160px;margin:auto;padding:0 24px}.top{background:var(--ink);color:#dceaf0;font-size:.88rem}.top .wrap{display:flex;justify-content:space-between;padding-top:8px;padding-bottom:8px}.top a,.nav a{color:inherit;text-decoration:none}.nav{border-bottom:1px solid var(--line);background:#fff}.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px}.brand{font:700 1.1rem "Space Grotesk";max-width:230px}.brand span{color:#b27a0a}.links{display:flex;gap:24px;align-items:center}.links a{color:var(--ink);font-weight:700;font-size:.93rem}.btn{display:inline-block;background:var(--sun);color:var(--ink);font-weight:700;padding:13px 19px;border-radius:5px;text-decoration:none}.btn.dark{background:var(--ink);color:#fff}.hero{background:var(--mist);padding:78px 0 76px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.eyebrow{color:#a56f00;text-transform:uppercase;font-size:.78rem;letter-spacing:.16em;font-weight:700;margin-bottom:14px}.hero p{font-size:1.13rem;color:var(--muted);max-width:640px}.hero img{width:100%;border-radius:8px;box-shadow:20px 20px 0 var(--sun)}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.section{padding:78px 0}.section.mist{background:var(--mist)}.intro{max-width:700px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.card{border:1px solid var(--line);padding:26px;border-radius:7px;background:#fff}.card p{color:var(--muted)}.card a{color:#9a6700;font-weight:700;text-decoration:none}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.kicker{border-left:5px solid var(--sun);padding-left:18px}.list{padding:0;margin:24px 0;list-style:none}.list li{padding:11px 0;border-bottom:1px solid var(--line)}.list li:before{content:'→';color:#a56f00;font-weight:700;margin-right:10px}.callout{background:var(--ink);color:#fff;padding:35px;border-radius:8px}.callout p{color:#dceaf0}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{font-weight:700;cursor:pointer}.crumb{font-size:.9rem;color:var(--muted);padding:18px 0}.prose{max-width:780px}.prose h2{margin-top:42px}.address{font-size:1.15rem;font-weight:700}.map{width:100%;height:330px;border:0;border-radius:7px}.footer{background:var(--ink);color:#dceaf0;padding:46px 0}.footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.small{font-size:.9rem;color:#9fb2bd}.mobile-call{display:none}@media(max-width:800px){.links{display:none}.hero-grid,.split,.footer-grid{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.hero{padding:52px 0}.hero img{box-shadow:10px 10px 0 var(--sun)}.mobile-call{display:block;position:fixed;bottom:14px;right:14px;z-index:5}.top .wrap{display:block;text-align:center}}

/* AI PHOTOGRAPHY REFRESH */
.photo-strip{background:#f7fafb}.photo-strip h2{max-width:720px}.photo-intro{max-width:760px;margin-bottom:1.5rem}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.photo-grid figure{margin:0;background:#fff;border:1px solid rgba(21,56,76,.12);border-radius:.6rem;overflow:hidden;box-shadow:0 8px 20px rgba(20,50,70,.08)}.photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-grid figcaption{padding:.8rem .9rem;font-weight:700;color:#16384c;font-size:.94rem}@media(max-width:760px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.photo-grid figcaption{font-size:.86rem;padding:.7rem}}

.service-photo{padding-top:0}.service-photo figure{margin:0;overflow:hidden;border-radius:.75rem;background:#fff;border:1px solid rgba(21,56,76,.12)}.service-photo img{display:block;width:100%;max-height:420px;object-fit:cover}.service-photo figcaption{padding:.75rem 1rem;color:#34515f;font-size:.92rem}
