:root{--ink:#3e2631;--wine:#802b49;--rose:#b63e69;--pink:#fae8e9;--cream:#fffaf5;--line:#e5d4ce;--muted:#77656b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;font:16px/1.7 Arial,sans-serif;background:var(--cream);color:var(--ink)}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}nav{height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;gap:30px;background:var(--cream)}.brand{text-decoration:none;display:inline-block;flex-shrink:0}.logo-crop{display:block;width:225px;height:62px;background:url('assets/lovefest-flyer.jpg') -85px -1271px/1250px auto no-repeat}.brand small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:2px}.navlinks{display:flex;align-items:center;gap:27px}.navlinks a{font-size:10px;letter-spacing:1.2px;text-decoration:none}.btn{display:inline-flex;justify-content:center;align-items:center;background:var(--wine);color:#fff9f2;padding:17px 25px;border:1px solid var(--wine);text-decoration:none;font-size:11px;font-weight:700;letter-spacing:1.3px;cursor:pointer;transition:background .2s,transform .2s}.btn:hover{background:#a1375c;transform:translateY(-2px)}.btn.small{padding:14px 20px}.menu-toggle{display:none}.hero{position:relative;min-height:750px;color:#fff;overflow:hidden;isolation:isolate}.hero-bg{position:absolute;inset:-3%;z-index:-2;background:linear-gradient(90deg,rgba(28,27,32,.65),rgba(35,25,34,.18)),url('assets/bali-hero.jpg') center 47%/cover;animation:drift 25s ease-in-out infinite alternate}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#3e263166,transparent 55%)}.hero-content{padding:80px 8% 70px;max-width:960px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--wine);font-weight:700;line-height:1.6}.hero .eyebrow{color:#ffe0d3}.script{font:italic 40px Georgia,serif;color:#ffd0d3;margin:35px 0 8px}.hero h1{font:normal clamp(64px,7vw,100px)/1.03 Georgia,serif;letter-spacing:-3px;margin:0 0 25px}.hero h1 em{color:#ffd8cf;font-weight:normal}.hero-copy{max-width:430px;color:#f9eae6;font-size:17px}.hero-actions{display:flex;align-items:center;gap:25px;margin:30px 0}.hero .btn{background:#f5ded1;color:#4c2635;border-color:#f5ded1}.text-link{font-size:12px;text-underline-offset:7px}.text-link.dark{color:var(--wine);display:inline-block;margin-top:15px}.hero-signoff{display:flex;align-items:center;gap:15px;margin-top:45px;font:italic 19px Georgia,serif}.hero-signoff>span:first-child{font-size:30px}.fine{font:9px Arial,sans-serif;letter-spacing:2px}.hero-badge{position:absolute;right:8%;top:35%;border:1px solid #ffe5d580;outline:1px solid #ffe5d550;outline-offset:9px;border-radius:140px 140px 0 0;padding:45px 30px 30px;text-align:center;background:#74274440;backdrop-filter:blur(3px)}.hero-badge span{font-size:8px;letter-spacing:2px}.hero-badge strong{display:block;font:normal 48px/1.1 Georgia;margin:20px 0}.hero-badge em{font-weight:normal;color:#ffd8cf}.motion-toggle{position:absolute;right:25px;bottom:20px;border:1px solid #fff7;background:#3e2631a6;color:white;border-radius:25px;padding:7px 13px;font-size:10px;cursor:pointer}.trip-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:34px 8%;background:#f3e9e0}.trip-strip>div{border-right:1px solid #dac9c0}.trip-strip>div:last-child{border:0}.trip-strip small{display:block;font-size:8px;letter-spacing:1.5px;margin-bottom:6px}.trip-strip strong{font:normal 19px Georgia,serif}section{padding:95px 8%}h2{font:normal clamp(40px,4vw,58px)/1.13 Georgia,serif;letter-spacing:-1.3px;margin:17px 0 25px}h2 em{font-weight:normal;color:var(--rose)}p{margin:0 0 20px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-image{position:relative}.intro-image img{width:100%;height:560px;object-fit:cover;border-radius:220px 220px 0 0}.image-caption{position:absolute;bottom:25px;left:-20px;background:var(--wine);color:var(--cream);padding:20px 25px;font:italic 23px Georgia;max-width:95%}.image-heart{position:absolute;right:-25px;top:18px;color:var(--rose);font:120px Georgia;transform:rotate(15deg)}.intro-copy>p:not(.eyebrow){color:var(--muted)}.experiences{background:#f4eee7}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:35px}.section-heading>p{max-width:330px;color:var(--muted);font-size:14px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.photo{overflow:hidden;margin-bottom:23px}.photo img{width:100%;height:285px;object-fit:cover;display:block;transition:transform .7s}.experience:hover .photo img{transform:scale(1.04)}.experience h3{font:700 35px/1.16 Georgia;letter-spacing:-.5px;margin:12px 0 18px}.experience>p:not(.eyebrow){font-size:15px;color:var(--muted)}.memory-card{background:#e9d3ce;padding:35px}.big-heart{display:block;color:var(--rose);font:150px/.9 Georgia;margin:15px 0 55px}.package{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:center}.package-copy>p{color:var(--muted)}.inclusions{display:grid;grid-template-columns:1fr 1fr;gap:22px 15px;margin:35px 0}.inclusions>div{display:flex;align-items:center;gap:15px;padding-bottom:16px;border-bottom:1px solid var(--line)}.inclusions span{font:28px Georgia;color:var(--rose);width:30px;text-align:center}.inclusions strong{font-size:14px;font-weight:500}.package-note{font-size:12px;line-height:1.7;color:var(--muted)}.price-panel{background:var(--pink);padding:40px;border:1px solid #e8c3ce;text-align:center}.price-panel>.eyebrow{font-size:9px}.price{font:25px Georgia;margin:20px 0 0}.price strong{font:normal 70px Georgia;letter-spacing:-4px}.price-panel>p:not(.price){font-size:12px}.price-divider{height:1px;background:#d9b5bd;margin:25px 0}.price-panel .date{font:25px Georgia!important}.price-panel .btn{width:100%;margin:12px 0 20px;padding-left:10px;padding-right:10px;font-size:10px}.quote-band{background:var(--wine);text-align:center;color:var(--cream);padding:60px 8%;position:relative;overflow:hidden}.quote-band>span{position:absolute;left:5%;bottom:-70px;color:#ffffff0d;font:400px Georgia}.quote-band>p{font:normal 50px/1.2 Georgia;margin-bottom:30px;position:relative}.quote-band em{color:#edc2bc}.btn.light{background:#f4dacc;color:var(--wine);border-color:#f4dacc}.guide{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:center}.guide-photo img{width:100%;max-height:550px;object-fit:cover;object-position:center 20%;border-radius:200px 200px 0 0}.guide p:not(.eyebrow){color:var(--muted)}.guide-role{font:italic 23px Georgia;color:var(--wine)!important}.contact-line{font-size:12px;margin-top:20px}.booking{background:#f0e0dc;display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:start}.booking-copy>p:not(.eyebrow){color:var(--muted)}.steps{list-style:none;padding:0;margin:35px 0;font-size:14px}.steps li{display:flex;align-items:center;gap:15px;margin:18px 0}.steps span{border:1px solid #c493a1;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font:16px Georgia;flex-shrink:0}.office{font-size:12px;margin-top:45px;color:var(--muted)}.office>a{font:23px Georgia;color:var(--wine)}.office p{margin:15px 0}form{padding:35px;background:var(--cream);box-shadow:7px 7px 0 #c99aa4}form h3{font:normal 29px Georgia;margin:0 0 14px}.form-intro{font-size:11px;color:var(--muted)}.required{color:#ae244c}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields label{font-size:12px}.fields input,.fields select,.fields textarea{display:block;width:100%;background:white;border:1px solid #dbc9c5;margin-top:7px;padding:12px 10px;border-radius:0;color:var(--ink);font-size:14px;min-width:0}.wide{grid-column:1/-1}.fields textarea{min-height:95px;resize:vertical}.consent{font-size:11px;line-height:1.6;display:flex;gap:10px;margin:22px 0}.consent input{margin-top:4px;flex-shrink:0}form>.btn{width:100%;font-size:10px;letter-spacing:1px}.form-note{font-size:11px;color:var(--muted);margin:16px 0 0}#status{font-size:13px;overflow-wrap:anywhere;margin-top:20px}#status a{display:block;margin-top:12px;text-underline-offset:4px;font-weight:700}.honeypot{position:absolute;left:-10000px}button:disabled{opacity:.65;cursor:wait}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:16px;padding-right:15px}.faq details p{font-size:14px;color:var(--muted);margin:20px 0 0}footer{border-top:1px solid var(--line);padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:10px}footer strong{font-weight:400;font-size:12px}footer p{margin:8px 0}footer a{text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c16589;outline-offset:4px}.reveal{opacity:1;transform:none}.reveal.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.motion-paused .hero-bg{animation-play-state:paused}@keyframes drift{from{transform:scale(1)}to{transform:scale(1.08)}}@media(max-width:1000px){.navlinks{gap:15px}.navlinks a{font-size:9px}.hero-badge{right:5%;padding:30px 20px}.hero-badge strong{font-size:36px}.hero-content{max-width:75%}.hero h1{font-size:74px}.price-panel{padding:28px}.price strong{font-size:60px}.experience h3{font-size:30px}}@media(max-width:750px){nav{height:90px;padding:0 6%}.logo-crop{width:190px;height:54px;background-size:1060px auto;background-position:-72px -1078px}.brand small{font-size:7px}.menu-toggle{display:block;background:none;border:0;color:var(--wine);font-size:25px;cursor:pointer}.navlinks{display:none;position:absolute;top:90px;left:0;right:0;background:var(--cream);z-index:10;padding:25px;box-shadow:0 20px 30px #0002}.navlinks.open{display:flex;flex-direction:column;align-items:stretch}.navlinks a{font-size:12px;padding:8px}.hero{min-height:760px}.hero-content{padding:55px 7% 75px;max-width:100%}.hero h1{font-size:65px;letter-spacing:-2px}.hero-copy{font-size:16px;max-width:320px}.script{font-size:35px;margin-top:25px}.hero-badge{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-signoff{flex-wrap:wrap;font-size:17px;margin-top:35px}.fine{font-size:8px}.trip-strip{grid-template-columns:1fr 1fr;padding:30px 7%;gap:25px}.trip-strip>div:nth-child(2){border:0}.trip-strip strong{font-size:17px}section{padding:60px 7%}.intro,.package,.guide,.booking,.faq{grid-template-columns:1fr;gap:35px}.intro-image img{height:400px}.intro-copy{order:-1}.image-heart{right:-10px;font-size:95px}.image-caption{left:-7px;font-size:20px}.section-heading{display:block}.experience-grid{grid-template-columns:1fr;gap:35px}.photo img{height:320px}.experience h3{font-size:35px}.memory-card{padding:30px}.big-heart{font-size:90px;margin:0 0 30px}.price-panel{padding:30px}.quote-band>p{font-size:39px}.guide-photo{max-width:380px}.guide-photo img{max-height:450px}form{padding:25px 20px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.booking{gap:25px}.office{margin-top:25px}footer{flex-direction:column;align-items:flex-start;padding:30px 7%}.motion-toggle{right:15px;bottom:14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal.will-reveal{opacity:1;transform:none}.motion-toggle{display:none}}
.logo-crop{height:76px;background-position:-88px -1327px}.brand small{margin-top:0}@media(max-width:750px){.logo-crop{height:64px;background-position:-75px -1125px}}
