:root{--ink:#272727;--white:#fff;--gold:#deab5c;--gold-light:#f6db94;--slate:#292e38;--silver:#eee;--paper:#f8f8f8;--script:'Water Brush',cursive}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}
h1,h2,h3,p,figure,blockquote{margin:0}
a{color:inherit;text-underline-offset:4px}
a:focus-visible{outline:3px solid var(--gold);outline-offset:6px}
img{display:block;max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-150%);z-index:10;background:var(--white);padding:12px 20px}
.skip-link:focus{transform:translateY(0)}
.site-header{min-height:96px;padding:20px 70px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:sticky;top:0;z-index:5;background:var(--white)}
.brand{display:flex;flex-direction:column;gap:3px;text-decoration:none;flex-shrink:0}
.brand-name{font-size:20px;font-weight:700;line-height:1.55;letter-spacing:.13em}
.brand-caption{font-size:9px;letter-spacing:.2em;line-height:1.55}
.button{display:inline-flex;align-items:center;justify-content:center;padding:18px 28px;background:var(--gold);color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;letter-spacing:.09em;text-align:center;text-decoration:none;min-height:48px;transition:background-color .18s ease}
.button:hover{background:#f0c477}
.header-contact{padding:15px 32px;font-size:12px}
.hero{position:relative;height:830px;clip-path:polygon(0 0,100% 0,100% 90%,0 60%);overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:grayscale(1) brightness(.45)}
.hero-content{position:relative;padding:140px 40px 0;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center;color:var(--white)}
.hero h1{font-family:var(--script);font-size:72px;font-weight:400;line-height:84px;color:var(--gold-light);max-width:1100px}
.hero h1 span{display:block}
.hero-subtitle{font-size:22px;font-weight:700;line-height:30px;letter-spacing:.18em}
.script-title{font-family:var(--script);font-size:64px;font-weight:400;line-height:76px;text-align:center}
.offers{position:relative}
.offers>.script-title{position:absolute;top:36px;right:64px;width:calc(33.333% - 128px);font-size:56px;line-height:64px;text-align:left}
.offer{display:flex;min-height:400px}
.offer-photo{width:66.667%;height:400px;flex-shrink:0;object-fit:cover;clip-path:polygon(0 0,100% 40%,100% 100%,0 60%)}
.signature-photo,.dj-photo{object-position:50% 0%}
.offer-copy{width:33.333%;padding:92px 64px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.offer:first-of-type .offer-copy{padding-top:140px}
.offer h3{font-size:24px;line-height:30px;font-weight:700}
.offer p{font-size:16px;line-height:25px}
.text-link{font-size:12px;line-height:20px;letter-spacing:.04em;text-decoration:underline;min-height:36px;display:inline-flex;align-items:center;gap:4px}
.text-link:hover{text-decoration-thickness:2px}
.small-note{font-size:13px;line-height:20px}
.section-padding{padding:82px 100px}
.preparation{background:var(--silver);display:flex;flex-direction:column;gap:40px}
.two-columns{display:flex;gap:48px}
.two-columns>p{flex:1;min-width:0;line-height:26px}
.process{background:var(--paper);display:flex;flex-direction:column;gap:32px}
.process-steps{list-style:none;display:flex;gap:40px;padding:0;margin:0;text-align:center}
.process-steps>li{flex:1;min-width:0;padding:20px 0 32px;border-bottom:1px solid var(--gold);display:flex;flex-direction:column;align-items:center;gap:24px}
.step-number{font-family:Georgia,serif;font-size:48px;line-height:64px;color:#8d682a}
.process h3{font-size:22px;line-height:32px;font-weight:400}
.process p{font-size:16px;line-height:25px}
.partners{height:448px;position:relative;display:flex;justify-content:flex-end;overflow:hidden}
.partners-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.4)}
.partners-copy{position:relative;width:38%;padding:40px 64px 40px 32px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:20px;color:var(--white)}
.partners .script-title{font-size:64px;line-height:72px;text-align:left;white-space:nowrap}
.partners p{line-height:26px}
.contact{display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px}
.contact>p{max-width:740px;font-size:17px}
.contact>.small-note{font-size:13px}
.site-footer{display:flex;align-items:center;justify-content:space-between;padding:38px 100px;gap:28px;background:var(--ink);color:var(--white);font-size:12px;line-height:20px}
.footer-brand{font-size:16px;font-weight:700;letter-spacing:.1em;white-space:nowrap}
@media(min-width:1025px) and (max-width:1280px){.offers>.script-title{right:32px;width:calc(33.333% - 64px)}.offer-copy{padding-right:32px;padding-left:32px}.partners-copy{width:43%;padding-right:40px}.partners .script-title{font-size:56px}}
@media(max-width:1024px){
  html{scroll-padding-top:90px}
  .site-header{min-height:64px;padding:12px 20px;gap:12px}
  .brand-name{font-size:15px;letter-spacing:.1em}
  .brand-caption{font-size:8px;letter-spacing:.15em}
  .header-contact{padding:12px 16px;font-size:10px;min-height:44px}
  .hero{clip-path:polygon(0 0,100% 0,100% 100%,0 95%)}
  .hero-content{padding:96px 24px 0;gap:24px}
  .hero h1{font-size:44px;line-height:52px}
  .hero-subtitle{font-size:22px;line-height:30px;letter-spacing:.14em}
  .hero .button{max-width:100%;padding-left:20px;padding-right:20px;font-size:12px}
  .offers{padding-top:48px}
  .offers>.script-title{position:static;width:auto;text-align:center;margin-bottom:24px;font-size:56px;line-height:64px}
  .offer{display:flex;flex-direction:column;min-height:0}
  .offer-photo{width:100%;height:200px;clip-path:polygon(0 0,100% 25%,100% 100%,0 75%)}
  .offer-copy,.offer:first-of-type .offer-copy{width:100%;padding:32px 32px 48px;gap:16px}
  .offer h3{font-size:24px;line-height:30px}
  .section-padding{padding:56px 24px}
  .script-title{font-size:52px;line-height:62px}
  .preparation .script-title span,.contact .script-title span{display:block}
  .two-columns{flex-direction:column;gap:32px}
  .process-steps{flex-direction:column;gap:24px}
  .step-number{font-size:48px}
  .partners{height:auto;display:flex;flex-direction:column}
  .partners-photo{position:static;height:384px;filter:none;object-position:center}
  .partners-copy{width:100%;padding:40px 30px;align-items:center;text-align:center;color:var(--ink);gap:24px}
  .partners .script-title{font-size:52px;line-height:62px;white-space:normal;text-align:center}
  .site-footer{flex-direction:column;align-items:flex-start;padding:38px 24px;gap:28px}
}
@media(max-width:359px){.brand-name{font-size:13px}.hero-content{padding-right:18px;padding-left:18px}.hero h1{font-size:38px;line-height:46px}.hero-subtitle{font-size:19px}.offer-copy{padding-right:24px;padding-left:24px}.script-title{font-size:46px;line-height:56px}.partners .script-title{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
