
:root{--navy:#3d4573;--yellow:#f2d43d;--cream:#fcfaf0;--pale:#f0f2b3;--ink:#292d49;--muted:#666a7f;--white:#fff;--shadow:0 25px 70px rgba(42,45,73,.15);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.7;overflow-x:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;padding:12px 5vw;position:sticky;top:0;z-index:50;background:rgba(252,250,240,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(61,69,115,.09)}.brand img{width:148px;max-height:65px;object-fit:contain}.topbar nav{display:flex;gap:32px;font-size:14px;font-weight:600}.topbar nav a:hover{color:#7f7390}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:white;border:0;border-radius:999px;padding:17px 28px;font:700 14px "DM Sans";letter-spacing:.02em;cursor:pointer;box-shadow:0 12px 30px rgba(61,69,115,.2);transition:.25s}.button:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(61,69,115,.3)}.button-small{padding:12px 20px;font-size:13px}.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;align-items:center;padding:72px 7vw 88px;position:relative}.hero-copy{max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700;color:#777083;margin:0 0 22px}.hero h1,.section h2,.final-cta h2{font-family:"Fraunces",Georgia,serif;font-weight:600;line-height:1.04;letter-spacing:-.03em}.hero h1{font-size:clamp(48px,5.7vw,84px);margin:0 0 28px;color:var(--navy)}.hero h1 em{font-weight:500;color:#8b7486}.hero-lead{font-size:18px;max-width:650px;color:#555a70}.event-facts{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0}.event-facts span{display:flex;gap:7px;align-items:baseline;border-top:1px solid rgba(61,69,115,.25);padding:10px 14px 0 0;font-size:13px;color:#6c7083}.event-facts b{font-size:17px;color:var(--navy)}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid;padding-bottom:3px}.text-link.navy{color:var(--navy)}.microcopy{font-size:12px;color:#777;margin-top:14px}.hero-visual{position:relative;justify-self:end;width:min(100%,620px)}.photo-frame{border-radius:260px 260px 24px 24px;overflow:hidden;box-shadow:var(--shadow);background:#eee}.hero-photo{height:min(72vh,760px)}.hero-photo img{height:100%;object-fit:cover;object-position:center 35%}.seal{position:absolute;left:-50px;bottom:10%;width:128px;height:128px;border-radius:50%;background:var(--yellow);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--navy);box-shadow:0 18px 45px rgba(61,69,115,.18);transform:rotate(-8deg);line-height:1}.seal span{text-transform:uppercase;font-size:10px;letter-spacing:.12em}.seal strong{font-family:"Fraunces";font-size:46px}.botanical{position:absolute;color:rgba(242,212,61,.25);font-size:180px;line-height:1}.botanical-a{left:-35px;top:25px;transform:rotate(-18deg)}.marquee{background:var(--yellow);color:var(--navy);overflow:hidden;white-space:nowrap;padding:14px 0;font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:11px}.marquee div{width:max-content;animation:slide 24s linear infinite}.marquee i{font-style:normal;margin:0 24px}@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-35%)}}.section{padding:120px 7vw}.split{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.image-stack{position:relative}.image-main{height:690px;object-fit:cover;border-radius:18px 180px 18px 18px;box-shadow:var(--shadow)}.quote-card{position:absolute;right:-45px;bottom:45px;width:300px;background:var(--cream);padding:30px;border-radius:18px;box-shadow:var(--shadow)}.quote-card span{font-family:"Fraunces";font-size:50px;color:var(--yellow);line-height:.5}.quote-card p{margin:10px 0 0;font-family:"Fraunces";font-size:21px;line-height:1.3;color:var(--navy)}.section-copy h2,.section-head h2,.project-copy h2,.venue-copy h2,.signup h2{font-size:clamp(38px,4.3vw,64px);margin:0 0 26px;color:var(--navy)}.section-copy p{color:var(--muted);font-size:17px}.blue-section{background:var(--navy);color:white;position:relative}.section-head{max-width:800px;margin-bottom:58px}.section-head.light h2,.section-head.light .eyebrow{color:white}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.2)}.benefit-grid article{background:var(--navy);padding:42px 30px;min-height:330px}.benefit-grid span{color:var(--yellow);font-family:"Fraunces";font-size:18px}.benefit-grid h3{font-family:"Fraunces";font-size:27px;margin:65px 0 14px}.benefit-grid p{color:rgba(255,255,255,.72);font-size:14px}.project-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:center}.project-copy ul{list-style:none;padding:0;margin:30px 0}.project-copy li{padding:13px 0;border-bottom:1px solid rgba(61,69,115,.15)}.project-copy li:before{content:"✦";color:#c6a900;margin-right:12px}.project-image img{height:730px;object-fit:cover;border-radius:180px 18px 18px 18px;box-shadow:var(--shadow)}figcaption{font-size:11px;color:#777;margin-top:10px}.about{background:linear-gradient(135deg,var(--pale),#f7f7cb)}.about-card{max-width:1180px;margin:auto;background:var(--cream);display:grid;grid-template-columns:1.05fr .95fr;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.about-card>div{padding:72px}.about-card img{height:100%;min-height:650px;object-fit:cover;object-position:center 30%}.signature{margin-top:36px;border-top:1px solid rgba(61,69,115,.15);padding-top:20px;font-family:"Fraunces";font-size:20px;color:var(--navy)}.centered{text-align:center;margin-left:auto;margin-right:auto}.wide-photo{max-width:1250px;margin:auto;position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.wide-photo img{height:650px;object-fit:cover;object-position:center 35%}.overlay-note{position:absolute;left:30px;bottom:30px;background:rgba(252,250,240,.94);padding:20px 26px;border-radius:14px;display:flex;flex-direction:column}.overlay-note strong{font-family:"Fraunces";font-size:22px;color:var(--navy)}.overlay-note span{font-size:13px;color:#666}.venue{display:grid;grid-template-columns:1.08fr .92fr;min-height:800px;padding:0}.venue-photo img{height:100%;min-height:800px;object-fit:cover;object-position:center 35%}.venue-copy{padding:100px 8vw;background:#f7f3e8;display:flex;flex-direction:column;justify-content:center}.venue-copy dl{margin:28px 0 38px}.venue-copy dl div{display:grid;grid-template-columns:120px 1fr;border-top:1px solid rgba(61,69,115,.16);padding:13px 0}.venue-copy dt{text-transform:uppercase;font-size:10px;letter-spacing:.14em;font-weight:700}.venue-copy dd{margin:0;color:var(--navy);font-weight:600}.signup{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:var(--navy);color:white;align-items:start}.signup h2,.signup .eyebrow{color:white}.signup-intro{position:sticky;top:130px}.signup-intro>p:not(.eyebrow):not(.availability){color:rgba(255,255,255,.75)}.price{margin:36px 0 24px;padding:24px 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column}.price small,.price span{font-size:12px;color:rgba(255,255,255,.65)}.price strong{font-family:"Fraunces";font-size:55px;color:var(--yellow)}.availability{font-size:13px}.availability i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--yellow);margin-right:8px;box-shadow:0 0 0 5px rgba(242,212,61,.15)}.form-card{background:var(--cream);color:var(--ink);padding:48px;border-radius:24px;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:18px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.field input,.field select{width:100%;border:1px solid rgba(61,69,115,.2);border-radius:10px;padding:15px;background:white;font:14px "DM Sans";color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(61,69,115,.08)}.checkbox{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:#65697b;margin:10px 0 24px}.submit{width:100%}.privacy{text-align:center;font-size:11px;color:#888}.accordion{max-width:900px;margin:auto}.accordion details{border-top:1px solid rgba(61,69,115,.18);padding:23px 0}.accordion summary{cursor:pointer;font-family:"Fraunces";font-size:22px;color:var(--navy);list-style:none;display:flex;justify-content:space-between}.accordion summary:after{content:"+"}.accordion details[open] summary:after{content:"−"}.accordion p{color:var(--muted);max-width:760px}.final-cta{text-align:center;padding:110px 7vw;background:var(--yellow);color:var(--navy);position:relative;overflow:hidden}.final-cta h2{font-size:clamp(42px,5vw,72px);max-width:900px;margin:0 auto 20px}.final-cta p:not(.eyebrow){font-size:17px}.button-yellow{background:var(--navy);margin-top:18px}.final-pattern{font-size:90px;opacity:.12;position:absolute;left:50%;top:0;transform:translateX(-50%);white-space:nowrap}footer{padding:55px 7vw;text-align:center;background:#343b65;color:white}footer img{width:160px;max-height:80px;object-fit:contain;margin:0 auto 15px;filter:brightness(0) invert(1)}footer p{color:rgba(255,255,255,.72)}footer div{display:flex;justify-content:center;gap:24px;margin:22px 0;font-size:13px}footer small{color:rgba(255,255,255,.5)}.floating-whatsapp{position:fixed;right:20px;bottom:20px;background:#fff;color:var(--navy);padding:13px 18px;border-radius:999px;font-size:12px;font-weight:700;box-shadow:var(--shadow);z-index:40}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:45px}.hero-visual{justify-self:center;width:min(80vw,560px)}.hero-photo{height:700px}.split,.project-grid,.venue,.signup{grid-template-columns:1fr}.benefit-grid{grid-template-columns:1fr 1fr}.quote-card{right:-10px}.about-card{grid-template-columns:1fr}.about-card img{min-height:600px}.venue-photo img{min-height:620px}.signup-intro{position:static}.signup{gap:50px}}
@media(max-width:640px){.topbar{height:72px;padding:8px 18px}.brand img{width:115px}.topbar .button-small{font-size:11px;padding:10px 13px}.hero{padding:42px 22px 70px;gap:44px}.hero h1{font-size:45px}.hero-lead{font-size:16px}.event-facts{display:grid;grid-template-columns:1fr 1fr}.hero-visual{width:100%}.hero-photo{height:520px}.seal{left:5px;width:105px;height:105px}.seal strong{font-size:38px}.section{padding:80px 22px}.image-main{height:520px}.quote-card{position:relative;right:auto;bottom:auto;margin:-45px 15px 0;width:auto}.benefit-grid{grid-template-columns:1fr}.benefit-grid article{min-height:auto}.benefit-grid h3{margin-top:28px}.project-image img{height:520px}.about-card>div{padding:42px 26px}.about-card img{min-height:500px}.wide-photo img{height:510px}.overlay-note{left:14px;right:14px;bottom:14px}.venue-photo img{min-height:520px}.venue-copy{padding:70px 24px}.signup{padding-left:22px;padding-right:22px}.form-card{padding:28px 20px}.form-row{grid-template-columns:1fr;gap:0}.final-cta{padding:85px 22px}footer div{flex-wrap:wrap}.floating-whatsapp{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}}

.pix-box{margin:0 0 24px;padding:20px;border:1px solid rgba(242,212,61,.45);border-radius:16px;background:rgba(255,255,255,.08);display:flex;flex-direction:column;gap:7px}.pix-box>span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.68)}.pix-box>strong{font-size:17px;color:#fff;overflow-wrap:anywhere}.copy-pix{align-self:flex-start;margin-top:5px;border:0;border-radius:999px;padding:10px 16px;background:var(--yellow);color:var(--navy);font:700 12px "DM Sans";cursor:pointer}.copy-pix:hover{transform:translateY(-1px)}.pix-box small{min-height:18px;color:var(--yellow);font-size:11px}
