
:root{
  --ink:#1E1E1E;
  --cool:#6B7280;
  --sand:#C7B9A5;
  --bg:#FFFFFF;
  --eggshell:#FAFAF7;
  --line:#EAE8E2;
  --container:1080px;
}

html{scroll-behavior:smooth}
body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; color:var(--ink);}

.container{ max-width:var(--container); margin:0 auto; padding:0 24px; }
.hr-line{border-top:1px solid var(--line);margin:56px 0}

.grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
@media (max-width:1024px){.grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.grid{grid-template-columns:1fr;}}

.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.card a{color:inherit;text-decoration:none;display:block}
.card img{width:100%;height:auto;display:block;transition:transform .5s ease}
.card:hover img{transform:scale(1.02)}
.card h2{font-size:22px;line-height:1.3;margin:16px 16px 8px}
.card p{color:var(--cool);margin:0 16px 16px}

.single-wedding .hero{padding:72px 0 24px;border-bottom:1px solid var(--line);}
.single-wedding .hero h1{font-size:48px;line-height:1.15;margin:0 0 8px}
.single-wedding .hero p{color:var(--cool);margin:0}
.single-wedding .content{padding:32px 0}
.single-wedding .details{padding:24px 0;border-top:1px solid var(--line)}

.site-header{position:sticky;top:0;z-index:999;background:transparent;transition:background .3s ease, box-shadow .3s ease}
.scrolled .site-header{background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.05)}

.button-pill .elementor-button{border:1px solid var(--line);border-radius:999px;padding:.8rem 1.2rem;transition:all .2s ease}
.button-pill .elementor-button:hover{transform:translateY(-1px);background:var(--sand);color:#fff;border-color:var(--sand)}

.wpforms-form input,.wpforms-form select,.wpforms-form textarea{border-radius:8px}
