body{background:#f5efeb;color:#2a171f}.topbar{color:#2a171f}.topbar .brand img{box-shadow:0 0 0 1px rgba(42,23,31,.15)}.hero{min-height:100svh;position:relative;overflow:hidden;background:linear-gradient(140deg,#f9f4f0 0%,#eadbdc 55%,#c5b4bd 100%);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:100px clamp(18px,6vw,100px) 54px}.portrait{width:min(42vw,650px);height:min(78vh,880px);justify-self:end;border-radius:50% 50% 44% 44%/35% 35% 65% 65%;box-shadow:0 30px 90px rgba(74,38,52,.23);z-index:2}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(80,28,53,.34),transparent 45%)}.hero-copy{z-index:3;position:relative;align-self:end;padding-bottom:5vh}.hero .display{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(72px,10vw,174px);font-weight:500;line-height:.82;letter-spacing:-.075em;margin:12px 0 24px;max-width:100%}.hero .lead{max-width:650px}.editorial{border-color:rgba(42,23,31,.25);color:#2a171f;background:rgba(255,255,255,.32)}.hero-orbit{position:absolute;border:1px solid rgba(99,51,74,.2);border-radius:50%;pointer-events:none}.hero-orbit.one{width:46vw;height:46vw;right:-10vw;top:-18vw}.hero-orbit.two{width:22vw;height:22vw;left:38%;bottom:-10vw}.hero-note{position:absolute;right:26px;bottom:28px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.28em;text-transform:uppercase}.intro{background:#6e3148;color:#f8ecef;display:grid;grid-template-columns:100px 1fr .65fr;gap:4vw;align-items:end}.intro-index{font-family:Georgia,serif;font-size:84px;opacity:.25}.intro .section-title i{font-family:Georgia,serif;font-weight:400}.intro-copy{font-size:21px;line-height:1.5}.intro .metric{background:rgba(255,255,255,.08)}.packages{padding:clamp(80px,10vw,150px) clamp(18px,6vw,100px);background:#f5efeb;display:grid;grid-template-columns:.8fr 1fr 1fr;gap:16px;color:#2a171f}.package-heading h2{font-family:Georgia,serif;font-style:italic;font-size:clamp(54px,7vw,105px);line-height:.86;letter-spacing:-.065em;margin:16px 0}.card{position:relative;padding:clamp(28px,3.5vw,48px);min-height:630px;display:flex;flex-direction:column;border:1px solid rgba(42,23,31,.18);background:rgba(255,255,255,.42);backdrop-filter:blur(16px)}.card.vip{background:#2a171f;color:#f8eff2;border-color:#2a171f;transform:translateY(32px)}.card-no{position:absolute;top:22px;right:22px;font-family:Georgia,serif;font-size:44px;opacity:.18}.price{font-family:Georgia,serif;font-size:clamp(48px,5vw,72px);letter-spacing:-.05em;margin:25px 0 8px}.card .btn{margin-top:auto}.editorial{background:#d9ccd1;color:#2a171f}.ed-copy{display:grid;grid-template-columns:1fr .7fr;align-items:end}.ed-copy p{line-height:1.6;max-width:470px;font-size:18px}.ed-images{height:1120px;position:relative;margin-top:80px}.ed-images figure{margin:0;position:absolute;box-shadow:0 30px 70px rgba(46,24,33,.16)}.ed-images .tall{left:2%;top:0;width:38%;height:760px;border-radius:180px 180px 12px 12px}.ed-images .wide{right:0;top:110px;width:52%;height:520px}.ed-images .small{right:18%;top:690px;width:30%;height:360px;border-radius:50% 50% 8px 8px}.steps{background:#f8f3ef}.step{display:grid;grid-template-columns:80px .7fr 1fr;align-items:center;border-top:1px solid rgba(42,23,31,.22);padding:30px 0}.step:last-child{border-bottom:1px solid rgba(42,23,31,.22)}.step b{font-size:11px;letter-spacing:.2em}.step h3{font-family:Georgia,serif;font-size:clamp(36px,5vw,72px);font-weight:500;font-style:italic;margin:0}.step p{max-width:520px;line-height:1.55}.why{background:#2a171f;color:#f7eef0;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.why-title h2{font-family:Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(56px,8vw,120px);line-height:.86;letter-spacing:-.065em;margin:14px 0}.why-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2)}.why-grid div{min-height:170px;padding:28px 18px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);font-size:clamp(18px,2vw,28px);font-weight:700}.final{min-height:100svh;display:grid;grid-template-columns:1.1fr .9fr;background:#efe5e3;color:#2a171f}.final-image{height:100svh}.final-copy{padding:100px clamp(18px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.final-copy h2{font-family:Georgia,serif;font-style:italic;font-size:clamp(58px,8vw,120px);font-weight:500;line-height:.86;letter-spacing:-.065em;margin:18px 0 24px}.final-copy p{font-size:19px;line-height:1.5;max-width:480px}.final-copy .socials{margin-top:18px}.footer{background:#efe5e3;color:#2a171f;border-color:rgba(42,23,31,.15)}
@media(max-width:850px){.hero{display:block;padding:0;min-height:100svh;background:#f2e8e7}.portrait{position:absolute;inset:0;width:100%;height:100%;border-radius:0;box-shadow:none}.portrait:after{background:linear-gradient(0deg,rgba(42,23,31,.93) 0%,rgba(42,23,31,.22) 65%,rgba(42,23,31,.12))}.topbar{color:#fff}.hero-copy{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:96px 16px 46px;color:#fff}.hero .display{font-size:clamp(54px,16vw,82px);line-height:.86;margin:10px 0 16px}.hero .lead{font-size:17px}.editorial{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08)}.hero-orbit,.hero-note{display:none}.intro{grid-template-columns:1fr;gap:24px}.intro-index{font-size:56px}.intro-copy{font-size:18px}.packages{grid-template-columns:1fr;padding:78px 16px}.card{min-height:auto}.card.vip{transform:none}.ed-copy{display:block}.ed-images{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:38px}.ed-images figure{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;border-radius:0!important;aspect-ratio:3/4}.ed-images .tall{grid-row:span 2}.ed-images .wide{aspect-ratio:1}.ed-images .small{aspect-ratio:1}.step{grid-template-columns:40px 1fr;padding:28px 0}.step p{grid-column:2}.step h3{font-size:42px}.why{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}.why-grid div{min-height:auto;padding:20px 0;border-right:0}.final{display:block;position:relative;min-height:94svh;color:#fff}.final-image{position:absolute;inset:0;height:100%}.final-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(42,23,31,.92),rgba(42,23,31,.25))}.final-copy{position:relative;z-index:2;min-height:94svh;justify-content:flex-end;padding:70px 16px 88px}.final-copy h2{font-size:clamp(54px,15vw,76px)}}

/* v6 bachelorette mobile composition */
@media(max-width:850px){
 .hero-copy{justify-content:flex-end;padding-top:84px;padding-bottom:max(84px,calc(56px + env(safe-area-inset-bottom)))}
 .hero .display{font-size:clamp(52px,14.2vw,76px);letter-spacing:-.065em;line-height:.88;max-width:100%}
 .hero .lead{max-width:34rem;line-height:1.38;margin:8px 0 18px}
 .portrait video{object-position:center center}
 .intro{padding-top:82px;padding-bottom:82px}
 .packages{padding-top:74px;padding-bottom:86px;gap:14px}
 .package-heading h2{font-size:clamp(48px,13vw,68px)}
 .card{padding:26px 20px;border-radius:18px;min-height:0}
 .card.vip{border-radius:18px}
 .price{font-size:clamp(46px,13vw,64px)}
 .ed-images{grid-template-columns:1fr;gap:12px}
 .ed-images .tall,.ed-images .wide,.ed-images .small{grid-row:auto;aspect-ratio:4/5!important;border-radius:16px!important}
 .ed-images .wide{aspect-ratio:16/11!important}
 .steps{padding-top:78px;padding-bottom:78px}
 .step{grid-template-columns:34px 1fr;column-gap:10px}
 .step h3{font-size:clamp(36px,11vw,46px)}
 .why{padding-top:80px;padding-bottom:80px}
 .why-title h2{font-size:clamp(50px,14vw,72px)}
 .final-copy{padding-top:86px;padding-bottom:max(116px,calc(90px + env(safe-area-inset-bottom)))}
}

/* v7 full-frame editorial photos */
.ed-images{height:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:80px}
.ed-images figure,.ed-images .tall,.ed-images .wide,.ed-images .small{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;border-radius:0!important;margin:0;align-self:start}
.ed-images figure img{width:100%;height:auto!important;object-fit:contain!important;transform:none!important;filter:none!important}
.ed-images .tall{grid-row:span 2}
@media(max-width:800px){.ed-images{grid-template-columns:1fr!important;gap:12px;margin-top:36px}.ed-images .tall{grid-row:auto}}

/* v8 — clean photo framing: first landscape, following portrait; no blurred edges */
.ed-images{height:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:80px}
.ed-images figure,.ed-images .tall,.ed-images .wide,.ed-images .small{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;border-radius:0!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important}
.ed-images figure:first-child{grid-column:1/-1!important;aspect-ratio:16/9!important}
.ed-images figure:not(:first-child){aspect-ratio:4/5!important}
.ed-images figure img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:none!important;transform:none!important}
.ed-images figure:before,.ed-images figure:after{display:none!important;content:none!important}
@media(max-width:800px){.ed-images{grid-template-columns:1fr!important;gap:12px;margin-top:36px}.ed-images figure:first-child{grid-column:auto!important;aspect-ratio:16/9!important}.ed-images figure:not(:first-child){aspect-ratio:4/5!important}}
/* Pink editorial typography */
.ed-copy,
.ed-copy .kicker,
.ed-copy .section-title,
.ed-copy p {
  color: #C71585 !important;
}