:root{
  --cream:#fffaf3;
  --paper:#fffdf9;
  --sand:#eac79f;
  --gold:#c88a42;
  --brown:#432616;
  --text:#1d1715;
  --muted:#6d5d54;
  --line:#ead7c5;
  --shadow:0 18px 45px rgba(91,57,30,.10);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Montserrat, Arial, sans-serif;
  color:var(--text);
  background:linear-gradient(145deg,#fbf1e6 0%,#fffaf3 48%,#f4dfc5 100%);
}
.page{
  max-width:1180px;
  margin:0 auto;
  padding:34px 24px 48px;
  position:relative;
  overflow:hidden;
  background:radial-gradient(circle at 50% 12%,#fff 0,#fffaf5 45%,#fff7ee 100%);
  min-height:100vh;
}
.wave{position:absolute;left:0;right:0;height:155px;pointer-events:none;opacity:.95;background:linear-gradient(135deg,#d89855,#f8e9d6 52%,transparent 53%);clip-path:polygon(0 0,100% 0,100% 45%,76% 26%,53% 45%,29% 24%,0 42%)}
.wave.top{top:0}.wave.bottom{bottom:0;transform:rotate(180deg)}
.decor{position:absolute;color:var(--gold);font-family:Georgia,serif;font-size:32px;opacity:.75}.decor.d1{top:250px;left:9%}.decor.d2{top:285px;right:10%}.decor.d3{top:390px;left:6%}.decor.d4{top:360px;right:7%}
header{text-align:center;position:relative;z-index:2;margin-bottom:28px}.logo{width:min(640px,78vw);height:auto;margin:0 auto 10px;display:block}.small-heart{color:var(--gold);font-size:26px;margin:8px 0}.title{font-family:Playfair Display, Georgia, serif;font-size:clamp(46px,7vw,92px);line-height:.98;margin:10px 0 18px;letter-spacing:.03em;text-transform:uppercase;color:var(--brown)}.title span{color:var(--gold);display:block}.intro{max-width:780px;margin:0 auto;font-size:19px;line-height:1.55}
.grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}.card{background:rgba(255,255,255,.82);border:1px solid rgba(234,215,197,.75);border-radius:28px;padding:28px 30px 26px 126px;box-shadow:var(--shadow);position:relative;min-height:154px}.card.wide{grid-column:1/-1}.icon{position:absolute;left:24px;top:28px;width:76px;height:76px;border-radius:50%;background:linear-gradient(145deg,#fff7ed,#efd5b7);border:1px solid #f2dec8;display:grid;place-items:center;box-shadow:0 10px 24px rgba(145,88,35,.12)}.icon img{width:48px;height:48px}.card h2{font-family:Playfair Display, Georgia, serif;color:var(--brown);font-size:25px;margin:0 0 12px;text-transform:uppercase}.card h2::after{content:"";display:block;width:150px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);margin-top:8px}.card p,.card li{font-size:16px;line-height:1.55}.card p{margin:0 0 9px}.card ul{margin:8px 0 0;padding-left:20px}.checklist{list-style:none;padding-left:0!important}.checklist li{position:relative;padding-left:30px;margin:5px 0}.checklist li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--gold);color:white;text-align:center;font-size:14px;line-height:20px}.contact-line{display:flex;gap:8px;align-items:center;margin:7px 0}.link{color:#b56b24;font-weight:600;text-decoration:none}.footer{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.mini{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:24px;padding:18px 22px;display:flex;gap:18px;align-items:center;box-shadow:var(--shadow)}.mini .icon{position:static;min-width:66px;width:66px;height:66px}.mini .icon img{width:40px;height:40px}.mini strong{font-family:Playfair Display,Georgia,serif;font-size:20px;color:var(--brown)}.update{justify-content:center;text-align:center;font-size:20px;color:var(--brown)}.update strong{color:var(--gold);font-size:25px}.leaf{position:absolute;bottom:80px;right:18px;width:130px;height:180px;opacity:.35}.leaf::before{content:"";position:absolute;left:62px;top:10px;width:2px;height:160px;background:var(--gold);transform:rotate(12deg)}.leaf span{position:absolute;width:34px;height:15px;border-radius:100% 0;background:#d8a364;transform:rotate(-35deg)}.leaf span:nth-child(1){top:34px;left:36px}.leaf span:nth-child(2){top:58px;left:72px;transform:rotate(35deg)}.leaf span:nth-child(3){top:88px;left:30px}.leaf span:nth-child(4){top:116px;left:78px;transform:rotate(35deg)}
@media(max-width:850px){.grid,.footer{grid-template-columns:1fr}.card{padding-left:105px}.title{font-size:46px}.intro{font-size:16px}.page{padding:22px 14px 34px}.leaf{display:none}}
@media(max-width:520px){.card{padding:92px 20px 22px}.icon{left:20px;top:18px;width:62px;height:62px}.icon img{width:40px;height:40px}.mini{align-items:flex-start}.title{font-size:38px}.card h2{font-size:21px}}
