  /* ---------- Buttons ---------- */
  .btn-outline{
    border:1.5px solid var(--gold-dark); color:var(--gold-dark); font-weight:700; font-size:14px; padding:10px 20px;
    border-radius:999px; display:inline-flex; align-items:center; gap:8px; background:transparent;
    transition:background .18s ease, color .18s ease; width:100%; justify-content:center;
  }
  .btn-outline:hover{background:var(--gold-dark); color:#fff;}

  /* ---------- Book grid (shared card styles) ---------- */
  .book-row{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:22px 20px;}

  @keyframes pulseRing{
    0%{transform:scale(0.6); opacity:0.75;}
    100%{transform:scale(1.9); opacity:0;}
  }

  /* ---------- Shipping & delivery page ---------- */
  .ship-wrap{padding:48px 25px 110px;}
  .ship-intro{max-width:760px; margin-bottom:44px;}
  .ship-intro h2{font-size:clamp(24px,3vw,32px); font-weight:600; margin-top:10px;}
  .ship-intro p{margin-top:14px; font-size:15px; line-height:1.75; color:var(--ink-soft);}

  .delivery-group{margin-bottom:46px;}
  .group-head{display:flex; align-items:center; gap:14px; margin-bottom:22px;}
  .group-icon{
    width:44px; height:44px; border-radius:12px; flex:none;
    background:linear-gradient(180deg, var(--gold) 0%, var(--gold-dark) 100%);
    display:flex; align-items:center; justify-content:center; color:#fff;
    box-shadow:0 10px 20px -8px rgba(185,126,32,0.55);
  }
  .group-head h3{font-size:20px; font-weight:600;}
  .group-head p{font-size:13.5px; color:var(--ink-soft); margin-top:2px;}

  .delivery-list{display:flex; flex-direction:column; gap:16px;}
  .pickup-map-head{margin:26px 0 12px; font-size:13.5px; color:var(--ink-soft);}
  .pickup-map{
    width:100%; height:420px; border-radius:16px; overflow:hidden;
    border:1px solid var(--line); box-shadow:var(--shadow); background:var(--bg-alt);
  }
  .delivery-item{
    display:flex; gap:20px; background:var(--surface); border:1px solid var(--line); border-radius:16px;
    padding:24px 26px; box-shadow:var(--shadow); transition:transform .2s ease, box-shadow .2s ease;
  }
  .delivery-item:hover{transform:translateY(-3px);}
  .item-num{
    flex:none; width:38px; height:38px; border-radius:50%; background:var(--gold-pale); color:var(--gold-dark);
    font-family:"Fraunces",serif; font-weight:700; font-size:16px; display:flex; align-items:center; justify-content:center;
  }
  .item-body h4{font-size:16px; font-weight:700; font-family:"Karla",sans-serif;}
  .item-body p{font-size:14px; line-height:1.7; color:var(--ink-soft); margin-top:8px;}
  .item-body .fee-note{
    margin-top:12px; font-size:13px; color:var(--ink); background:var(--bg-alt); border-radius:10px;
    padding:10px 14px; line-height:1.6; border-left:3px solid var(--gold-dark);
  }
  .item-body .signboard{font-weight:700; color:var(--maroon);}

  .ship-note{
    margin-top:8px; display:flex; gap:12px; align-items:flex-start; background:var(--bg-alt); border:1px solid var(--line);
    border-radius:14px; padding:20px 22px; font-size:13.5px; line-height:1.7; color:var(--ink-soft);
  }
  .ship-note svg{flex:none; color:var(--gold-dark); margin-top:2px;}

  @media (max-width: 980px){
    .book-row{grid-template-columns:repeat(3,minmax(0,1fr));}
  }
  @media (max-width: 620px){
    .delivery-item{flex-direction:column; gap:12px;}
    .pickup-map{height:300px;}
    .book-row{grid-template-columns:repeat(2,minmax(0,1fr));}
  }
