/* Floral wedding pack cards */
.floral-pack-grid{gap:24px;align-items:stretch}.pack-floral-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #ead7d4;border-radius:10px 36px 10px 10px;background:linear-gradient(145deg,#fffaf8,var(--blush));padding:0;display:grid;grid-template-columns:1fr;box-shadow:0 8px 24px rgba(97,61,57,.04)}
.pack-floral-card::after{content:"";position:absolute;pointer-events:none;right:-22px;bottom:-25px;width:130px;height:180px;background:url('pack-botanical.svg') center/contain no-repeat;opacity:.55;z-index:0;transform:rotate(-12deg)}
.pack-visual{position:absolute;left:-70px;top:15px;width:150px;height:300px;opacity:.18;background:url('pack-botanical.svg') center/contain no-repeat;pointer-events:none}
.has-pack-photo{grid-template-columns:clamp(65px,6.6vw,105px) minmax(0,1fr)}.has-pack-photo .pack-visual{position:relative;left:auto;top:auto;width:100%;height:100%;min-height:550px;opacity:1;background:var(--blush);border-radius:0 140px 100px 0;border-right:8px solid #f4d7d6;overflow:hidden}.pack-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.pack-copy{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;padding:30px 25px 85px}.has-pack-photo .pack-copy{padding-inline:18px}.pack-heart{font-family:var(--serif);font-size:2rem;line-height:1;text-align:center;color:#c18089;margin-bottom:18px}.pack-floral-card h3{font-size:clamp(1.8rem,2.35vw,2.6rem);text-align:center;overflow-wrap:break-word;margin-bottom:18px}.pack-floral-card .pack-description{background:rgba(224,173,181,.22);color:var(--ink);font-size:.8rem;line-height:1.65;text-align:center;padding:9px 12px;margin:0 0 24px;min-height:0;border-radius:3px}
.pack-floral-card ul{list-style:none;padding:0;margin:0 0 25px}.pack-floral-card li{border:0;display:flex;gap:9px;align-items:flex-start;padding:8px 0;font-size:.86rem;line-height:1.55}.pack-item-flower{width:19px;height:25px;flex:0 0 19px;background:url('pack-flower.svg') center/contain no-repeat}.pack-floral-card .pack-note{font-size:.77rem;line-height:1.65;margin: auto 0 20px;color:var(--muted)}.pack-floral-card .pack-inquiry{align-self:flex-start;font-size:.82rem;position:relative}.pack-floral-card .pack-extra{margin-bottom:20px;font-size:.85rem}
@media(max-width:1100px){.floral-pack-grid{grid-template-columns:1fr;gap:30px;max-width:800px;margin-inline:auto}.has-pack-photo{grid-template-columns:minmax(130px,.7fr) 1.8fr}.has-pack-photo .pack-visual{min-height:0;border-radius:0 200px 150px 0}.pack-copy,.has-pack-photo .pack-copy{padding:35px 40px 65px}.pack-floral-card h3{font-size:2.6rem}.pack-floral-card li{font-size:.96rem}.pack-floral-card .pack-description{font-size:.88rem}.pack-floral-card::after{width:150px;height:200px}}
@media(max-width:480px){.has-pack-photo{grid-template-columns:80px minmax(0,1fr)}.pack-copy,.has-pack-photo .pack-copy{padding:28px 18px 70px}.pack-floral-card h3{font-size:2rem}.pack-floral-card li{font-size:.86rem;gap:7px}.pack-floral-card .pack-description{font-size:.8rem;padding:8px}.pack-floral-card::after{width:110px;height:150px}.pack-item-flower{width:17px;flex-basis:17px}.pack-floral-card .pack-note{font-size:.78rem}}

/* Reference refinements: distinct botanical corners and a curved lower photo edge. */
.pack-floral-card{--pack-paper:#fff3f2;--pack-border:#f6d9da;background:var(--pack-paper)}.pack-floral-variant-2{--pack-paper:#faf0f5;--pack-border:#eddfec}.pack-floral-card::after{display:none}.pack-floral-card::before{content:"";position:absolute;left:-12px;bottom:0;width:175px;height:220px;z-index:2;pointer-events:none;background:url('pack-botanical-open.svg') bottom left/contain no-repeat;opacity:.8}.pack-floral-variant-2::before{left:0;width:155px;height:240px;background-image:url('pack-botanical-lavender.svg');opacity:.9}.pack-floral-variant-3::before{left:auto;right:-10px;width:180px;height:270px;background-image:url('pack-botanical-stems.svg')}
.has-pack-photo{grid-template-columns:clamp(85px,8vw,125px) minmax(0,1fr)}.has-pack-photo .pack-visual{min-height:600px;border-right:8px solid var(--pack-border);border-top:14px solid var(--pack-border);border-radius:0 155px 0 0;background:var(--pack-border)}.pack-visual::after{content:"";position:absolute;inset:auto -1px -1px -1px;height:110px;background:var(--pack-paper);border-top-left-radius:100% 100%;z-index:1}.pack-copy,.has-pack-photo .pack-copy{padding-bottom:155px}.pack-item-icon{width:23px;height:29px;flex:0 0 23px;background-position:center;background-size:contain;background-repeat:no-repeat}.pack-visual:not(:has(img))::after{display:none}
.pack-icon-bouquet{background-image:url('pack-icon-bouquet.svg')}
.pack-icon-buttonhole{background-image:url('pack-icon-buttonhole.svg')}
.pack-icon-pin{background-image:url('pack-icon-pin.svg')}
.pack-icon-table{background-image:url('pack-icon-table.svg')}
.pack-icon-center{background-image:url('pack-icon-center.svg')}
.pack-icon-arch{background-image:url('pack-icon-arch.svg')}
.pack-icon-welcome{background-image:url('pack-icon-welcome.svg')}
.pack-icon-sign{background-image:url('pack-icon-sign.svg')}
.pack-icon-tools{background-image:url('pack-icon-tools.svg')}
.pack-icon-design{background-image:url('pack-icon-design.svg')}
@media(max-width:1100px){.has-pack-photo{grid-template-columns:minmax(130px,.7fr) 1.8fr}.has-pack-photo .pack-visual{min-height:0;border-radius:0 200px 0 0}.pack-copy,.has-pack-photo .pack-copy{padding-bottom:135px}.pack-visual::after{height:120px}}@media(max-width:480px){.has-pack-photo{grid-template-columns:85px minmax(0,1fr)}.pack-floral-card::before{width:135px;height:180px}.pack-floral-variant-2::before{width:125px;height:205px}.pack-floral-variant-3::before{width:140px;height:205px}.pack-copy,.has-pack-photo .pack-copy{padding-bottom:140px}.pack-visual::after{height:100px}.pack-item-icon{width:20px;flex-basis:20px;height:27px}}
