.baci-gift{--baci-plum:#754458;--baci-rose:#9b6579;--baci-line:#ebd9e0;box-sizing:border-box;max-width:1180px;margin:22px auto;color:#604854;font-family:inherit;background:#fff8fa;border:1px solid var(--baci-line);border-radius:20px;padding:clamp(16px,2.8vw,34px)}.baci-gift *{box-sizing:border-box}.baci-gift h2,.baci-gift h3,.baci-gift p{margin-top:0}.baci-gift-head{text-align:center;padding:10px 0 20px}.baci-gift-eyebrow{color:#a16d82;font-size:11px;letter-spacing:1.25px;font-weight:700}.baci-gift-head h2{color:var(--baci-plum);font-family:Georgia,serif;font-weight:600;font-size:clamp(25px,3.3vw,39px);line-height:1.18;margin:7px 0}.baci-gift-head p{font-size:15px;color:#876e79;line-height:1.5}.baci-gift-section{border-top:1px solid var(--baci-line);padding:22px 0}.baci-gift-section h3{font-size:clamp(18px,2.2vw,25px);font-weight:700;color:var(--baci-plum);margin-bottom:6px}.baci-gift-section h3 small{font-size:13px;font-weight:400;color:#927580}.baci-gift-section>p{color:#866f7b;font-size:14px;margin-bottom:16px}.baci-gift-grid{display:grid;gap:12px}.baci-gift-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.baci-gift-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.baci-gift-grid-themes{grid-template-columns:repeat(4,minmax(0,1fr))}.baci-gift-tile{background:#fff;border:1px solid var(--baci-line);border-radius:13px;padding:8px;cursor:pointer;min-width:0;display:flex;flex-direction:column;gap:5px;position:relative;transition:border-color .14s,box-shadow .14s;color:#604854}.baci-gift-tile:hover{border-color:#c997a9;box-shadow:0 3px 14px #b081921c}.baci-gift-tile:has(input:checked){border:2px solid var(--baci-rose);padding:7px;background:#fffafb}.baci-gift-tile input[type=radio],.baci-gift-tile input[type=checkbox]{accent-color:var(--baci-rose);width:18px;height:18px;position:absolute;top:14px;right:14px;z-index:2;cursor:pointer;box-shadow:0 0 0 3px #fff9;border-radius:50%;margin:0}.baci-gift-tile>img{width:100%;height:auto;aspect-ratio:1.32;object-fit:cover;border-radius:9px;display:block;background:#f8e8ec}.baci-gift-theme img{aspect-ratio:1.6}.baci-gift-theme span{font-size:12px}.baci-gift-name{font-size:14px;line-height:1.35;font-weight:600;overflow-wrap:anywhere}.baci-gift-tile strong{font-size:14px;color:var(--baci-rose);font-weight:700}.baci-gift-tile small{font-size:11px;color:#947986;line-height:1.35}.baci-gift-base small{min-height:15px}.baci-gift-help,.baci-gift-included{background:#f7e8ee;color:#7b5064;border-radius:11px;padding:11px 14px;margin-top:12px;font-size:13px;line-height:1.45}.baci-gift-included{margin:0 0 14px;font-weight:500}.baci-gift-custom{padding:14px 16px;background:#fff;border:1px solid var(--baci-line);border-radius:10px;margin-top:13px}.baci-gift-custom label,.baci-gift-dedication label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:#634c58;font-weight:600}.baci-gift-custom input:not([type=file]),.baci-gift-dedication input,.baci-gift-dedication textarea{display:block;width:100%;min-height:43px;padding:10px 12px;border:1px solid #dac7cf;border-radius:8px;background:#fff;color:#59424d;font-family:inherit;font-size:14px}.baci-gift-custom input[type=file]{display:block;width:100%;padding:8px 0;font-size:12px}.baci-gift-zone{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:15px;color:#6b4f5c;font-size:13px}.baci-gift-zone>span{font-weight:700}.baci-gift-zone label{display:flex;align-items:center;gap:5px;cursor:pointer}.baci-gift-zone input{accent-color:var(--baci-rose);margin:0}.baci-gift-tile.baci-gift-disabled{opacity:.42;cursor:not-allowed}.baci-gift-dedication{display:grid;grid-template-columns:1fr 1fr;gap:18px}.baci-gift-dedication>div:first-child{display:flex;flex-direction:column;gap:12px}.baci-gift-dedication textarea{resize:vertical;min-height:122px}.baci-gift-count{color:#a08791;font-size:11px}.baci-gift-card-wrap{background:#f8e9ef;padding:13px;border-radius:13px;display:flex;flex-direction:column;gap:10px;text-align:center;align-items:center;justify-content:center}.baci-gift-card-wrap>span{color:#9c6c81;font-size:11px;font-weight:700;letter-spacing:.5px}.baci-gift-card{min-height:164px;width:100%;background:#fff;border:1px solid #edcfda;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:15px;font-family:Georgia,serif;color:#7d5265;overflow-wrap:anywhere}.baci-gift-card-decor{font-size:25px;color:#c790a3}.baci-gift-card strong{font-size:16px}.baci-gift-card em{white-space:pre-wrap;font-size:14px;line-height:1.5}.baci-gift-card small{font-size:11px;color:#b78d9b}.baci-gift.theme-man .baci-gift-card-wrap{background:#e9edf7}.baci-gift.theme-man .baci-gift-card{border-color:#b9c9dd;color:#405879}.baci-gift-bottom{border-top:1px solid var(--baci-line);background:#fff;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:20px;padding:16px;margin:8px 0 0;border-radius:14px}.baci-gift-bottom>div:first-child{display:flex;flex-direction:column;gap:4px}.baci-gift-bottom strong{font-size:15px}.baci-gift-bottom small{font-size:11px;color:#9b8690}.baci-gift-total{color:var(--baci-rose);font-size:clamp(21px,2.5vw,28px);font-weight:800;white-space:nowrap}.baci-gift-submit{padding:13px 20px;background:#9b6579!important;color:#fff!important;border:0!important;border-radius:12px!important;font-size:15px!important;cursor:pointer;font-weight:700}.baci-gift-submit:hover{background:#855269!important}.baci-gift-summary{margin:11px 0 0;padding:12px 15px;border:1px solid var(--baci-line);border-radius:11px;background:#fff}.baci-gift-summary summary{cursor:pointer;color:#7d5064;font-weight:600}.baci-gift-summary-content{margin-top:10px;font-size:13px;color:#6a515d;line-height:1.8}.baci-gift-summary-content>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #f5e8ed}.baci-gift-summary-content>div span:last-child{white-space:nowrap}.baci-gift-summary-content strong{color:#9b6579}.baci-gift [hidden]{display:none!important}@media(max-width:800px){.baci-gift-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.baci-gift-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.baci-gift-bottom{grid-template-columns:1fr auto}.baci-gift-submit{grid-column:1/-1;width:100%}}@media(max-width:480px){.baci-gift{padding:14px;border-radius:14px}.baci-gift-grid-themes{grid-template-columns:repeat(2,minmax(0,1fr))}.baci-gift-grid{gap:8px}.baci-gift-tile{padding:6px}.baci-gift-tile:has(input:checked){padding:5px}.baci-gift-name{font-size:12px}.baci-gift-tile strong{font-size:12px}.baci-gift-tile input[type=checkbox],.baci-gift-tile input[type=radio]{width:16px;height:16px;top:10px;right:10px}.baci-gift-dedication{grid-template-columns:1fr}.baci-gift-head{padding:4px 0 12px}.baci-gift-section{padding:16px 0}}

/* v1.1: Product photos cover the card; sample images trimmed to remove their original margins. */
.baci-gift .baci-gift-tile>img{display:block;width:100%;height:auto;aspect-ratio:1.32;object-fit:cover;object-position:center;border-radius:9px}
.baci-gift .baci-gift-theme>img{aspect-ratio:1.6}

/* v1.2 - override Porto/theme image sizing; crop the tile fully. */
.baci-gift .baci-gift-grid .baci-gift-tile > img {
  display:block !important; width:100% !important; max-width:none !important;
  height:210px !important; min-height:210px !important; aspect-ratio:auto !important;
  object-fit:cover !important; object-position:center center !important;
  border-radius:9px !important; margin:0 !important; padding:0 !important;
}
.baci-gift .baci-gift-theme > img { height:145px !important; min-height:145px !important; }
@media(max-width:800px){.baci-gift .baci-gift-grid .baci-gift-tile>img{height:160px !important;min-height:160px !important}.baci-gift .baci-gift-theme>img{height:120px !important;min-height:120px !important}}
@media(max-width:480px){.baci-gift .baci-gift-grid .baci-gift-tile>img{height:130px !important;min-height:130px !important}.baci-gift .baci-gift-theme>img{height:105px !important;min-height:105px !important}}

/* v1.3: Render photos as backgrounds to avoid Porto image and lazy-loading rules. */
.baci-gift .baci-gift-grid .baci-gift-tile .baci-gift-photo {
  display:block !important; flex:0 0 auto !important;
  width:100% !important; max-width:100% !important;
  height:auto !important; min-height:0 !important;
  aspect-ratio: 4 / 3 !important;
  background-color:#f9eef1 !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  border-radius:9px !important;
  padding:0 !important; margin:0 !important;
}
.baci-gift .baci-gift-theme .baci-gift-photo {aspect-ratio: 3 / 2 !important;}
@media(max-width:480px){.baci-gift .baci-gift-grid .baci-gift-tile .baci-gift-photo {aspect-ratio:1 / 1 !important;}}
