:root{color-scheme:light;--ink:#111111;--muted:#64615d;--paper:#eeeeec;--panel:#ffffff;--line:#d8d2c8;--accent:#c0266f;--cherry:#c0266f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}.page-shell,.gallery-section,.final-cta{width:min(100% - 40px,1120px);margin:0 auto}.hero{background:var(--paper)}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;border-bottom:1px solid var(--line)}.site-nav div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:20px;color:var(--muted);font-size:14px}.brand{font-family:Georgia,"Times New Roman",serif;font-size:24px}.hero-grid{display:grid;grid-template-columns:1fr;min-height:430px;padding:64px 0 46px}.hero-content,.section-heading,.final-cta{display:grid;gap:18px}.eyebrow{margin:0;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1}h1{max-width:740px;font-size:88px}h1 span{color:var(--cherry)}h2{font-size:42px}.section-heading h2{max-width:100%;font-size:38px}.hero-content>p:not(.eyebrow){max-width:760px;margin:0;color:var(--muted);font-size:23px;line-height:1.42}.cta-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.button-link{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--cherry);padding:0 18px;box-shadow:0 8px 18px rgba(127,16,32,0.12);font-size:15px;font-weight:750;transition:background 160ms ease,color 160ms ease,transform 160ms ease,box-shadow 160ms ease}.button-link--primary{background:var(--cherry);color:#ffffff}.button-link--secondary{background:#ffffff;color:var(--cherry)}.button-link:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(127,16,32,0.18)}.button-link--secondary:hover{background:#fff7f8}.service-list{display:flex;flex-wrap:wrap;gap:10px 18px;max-width:760px;padding-top:2px}.service-list span{color:var(--muted);font-size:15px;font-weight:750}.service-list span:not(:last-child)::after{content:"/";margin-left:18px;color:#aaa39a;font-weight:500}.gallery-section{padding:54px 0 72px;border-top:1px solid var(--line)}.section-heading{grid-template-columns:1fr;align-items:end;margin-bottom:24px}.section-heading .eyebrow{grid-column:1 / -1}.section-heading p:last-child{max-width:680px;margin:0;color:var(--muted);font-size:16px;line-height:1.55}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.photo-tile{position:relative;overflow:hidden;background:transparent}.photo-tile--wide{grid-column:auto}.photo-tile img{height:auto;object-fit:contain;transition:transform 280ms ease,filter 280ms ease}.photo-tile:hover img{transform:scale(1.025);filter:contrast(1.02)}.photo-caption{position:absolute;left:0;right:0;bottom:0;padding:16px;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,0.62));opacity:0;transition:opacity 180ms ease}.photo-tile:hover .photo-caption{opacity:1}.photo-caption span{font-size:14px}.final-cta{padding:56px 0 64px;border-top:1px solid var(--line)}.contact-note{margin:0;color:var(--muted);font-size:15px}@media (max-width:860px){.page-shell,.gallery-section,.final-cta{width:min(100% - 32px,1120px)}.site-nav{min-height:70px}.hero-grid{grid-template-columns:1fr;padding:42px 0 40px;min-height:0}h1{font-size:56px}h2{font-size:34px}.section-heading h2{font-size:30px}.hero-content>p:not(.eyebrow){font-size:20px}.gallery-section{padding:38px 0 52px}.section-heading{grid-template-columns:1fr;gap:12px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-tile--wide{grid-column:auto}.final-cta{padding:42px 0 52px}}@media (max-width:520px){.site-nav{display:grid;gap:12px;padding:16px 0}.site-nav div{justify-content:flex-start;gap:14px}.hero-grid{padding:34px 0 34px}h1{font-size:44px}h2{font-size:30px}.section-heading h2{font-size:27px}.hero-content>p:not(.eyebrow){font-size:18px}.button-link{width:100%}.photo-grid{gap:8px}}.site-footer{width:min(100% - 40px,1120px);margin:0 auto;padding:28px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px}@media (max-width:860px){.site-footer{width:min(100% - 32px,1120px)}}