:root{--ink:#27221f;--muted:#766d67;--cream:#fbf7f0;--paper:#fffdf9;--wine:#7d263b;--wine2:#5e1c2c;--gold:#c79b58;--line:#eadfd3;--green:#236e50;--shadow:0 18px 45px rgba(56,35,25,.09)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.announcement{text-align:center;background:var(--wine2);color:#fff7ed;padding:8px 16px;font-size:12px;letter-spacing:.07em}.site-header{background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:25px}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:19px;letter-spacing:-.04em}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}.brand-mark{width:42px;height:42px;border-radius:13px;background:var(--wine);color:#fff4e6;display:grid;place-items:center;font-family:Georgia,serif;font-size:16px;letter-spacing:-.06em;border:1px solid var(--gold)}.nav-links{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:650}.nav-links a:hover,.site-footer a:hover{color:var(--wine)}.nav-cta{padding:12px 17px;border-radius:999px;background:var(--wine);color:white!important}.menu-toggle{display:none;background:none;border:0;font-size:24px}.hero{background:linear-gradient(110deg,#f6eadb 0%,#fbf7f0 50%,#ead3bd 100%);overflow:hidden}.hero-inner{min-height:480px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px;padding-top:40px;padding-bottom:40px}.eyebrow{color:var(--wine);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.hero h1,.page-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(42px,5.4vw,70px);line-height:1.02;letter-spacing:-.045em;margin:18px 0}.hero p{color:#67584f;max-width:480px}.hero-art{position:relative;min-height:340px;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:#e8c7a6;right:4%;top:6%}.hero-art img{position:relative;width:min(100%,430px);height:330px;object-fit:cover;border-radius:180px 180px 22px 22px;box-shadow:var(--shadow);border:7px solid rgba(255,255,255,.7)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--wine);color:white;border:1px solid var(--wine);border-radius:999px;padding:13px 22px;font-weight:750;font-size:13px;cursor:pointer;transition:.2s}.btn:hover{background:var(--wine2);transform:translateY(-1px)}.btn.secondary{background:transparent;color:var(--wine)}.btn.light{background:white;color:var(--wine);border-color:white}.section{padding:72px 0}.section.soft{background:var(--cream)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.section h2,.section-head h2{font:500 clamp(30px,4vw,42px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:8px 0}.muted{color:var(--muted)}.small{font-size:12px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden;transition:.22s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-image{aspect-ratio:1/1;background:#f1e5d9;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-image .placeholder{height:100%;display:grid;place-items:center;font-size:50px;color:var(--wine)}.product-info{padding:18px}.product-info h3{margin:0 0 5px;font-size:17px}.product-info p{font-size:13px;color:var(--muted);margin:0 0 12px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.price{font-weight:800;color:var(--wine);font-size:18px}.mini-btn{font-size:12px;font-weight:750;color:var(--wine);border:1px solid var(--line);padding:9px 13px;border-radius:999px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.trust-item{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff}.trust-item .icon{font-size:24px}.trust-item h3{font-size:16px;margin:10px 0 4px}.trust-item p{font-size:13px;color:var(--muted);margin:0}.page-hero{background:var(--cream);padding:54px 0}.page-hero h1{font-size:clamp(38px,4vw,54px);margin:8px 0}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:10px}.content{max-width:850px;margin:0 auto;padding:55px 0 75px}.content h2{font:500 28px Georgia,serif;margin-top:30px}.content p,.content li{color:#5e5550}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:55px 0 70px}.detail-image{border-radius:20px;background:#f3e8dc;overflow:hidden;min-height:420px}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-copy h1{font:500 clamp(36px,4vw,50px)/1.08 Georgia,serif;margin:12px 0}.detail-copy .price{font-size:26px}.detail-copy .desc{color:var(--muted);margin:20px 0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-card{background:white;border:1px solid var(--line);border-radius:18px;padding:27px;box-shadow:0 8px 30px rgba(56,35,25,.04)}.form-card h2{font:500 30px Georgia,serif;margin:0 0 5px}.form-row{margin:15px 0}.form-row label{display:block;font-size:12px;font-weight:750;margin-bottom:6px}.form-row input,.form-row textarea,.form-row select,.admin-form input,.admin-form textarea,.admin-form select{width:100%;padding:12px 13px;border:1px solid #ddd0c4;border-radius:9px;background:#fffdfb;outline:none}.form-row input:focus,.form-row textarea:focus{border-color:var(--wine);box-shadow:0 0 0 3px #7d263b18}.checkout-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:25px;padding:50px 0 70px}.summary-card{background:var(--cream);border-radius:18px;padding:24px;height:max-content}.summary-line{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.notice{padding:13px 15px;border-radius:10px;background:#e8f4ed;color:#1d6447;margin:15px 0;font-size:13px}.warning{background:#fff3dc;color:#78521a}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payment-card{border:1px solid var(--line);border-radius:16px;padding:23px;background:white}.payment-card h3{margin-top:0}.qr-image{width:min(100%,260px);margin:15px auto;border:1px solid var(--line);padding:8px;background:white}.site-footer{background:#271e1c;color:#f8eee3;padding:52px 0 18px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:35px}.footer-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#d8b987}.footer-grid a:not(.brand){display:block;color:#e2d2c3;font-size:13px;margin:10px 0}.footer-grid p{font-size:13px;color:#c9b9ab}.footer-brand{color:#fff}.footer-brand small{color:#c9b9ab}.footer-bottom{border-top:1px solid #51423b;margin-top:35px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#bca99a;font-size:11px}.admin-login{background:var(--cream);min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(440px,100%);background:white;border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:var(--shadow)}.login-card h1{font:500 32px Georgia,serif}.login-card label{display:block;font-size:12px;font-weight:700;margin:16px 0}.login-card input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;margin-top:6px}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:#f7f4ef}.admin-side{background:#2b211f;color:#f8eee3;padding:25px 17px}.admin-side .brand{margin-bottom:30px}.admin-side a:not(.brand){display:block;padding:11px 12px;border-radius:8px;color:#dfcfc1;font-size:13px;margin:4px 0}.admin-side a.active,.admin-side a:not(.brand):hover{background:#4a3433;color:white}.admin-main{padding:30px;min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px}.admin-top h1{font:500 34px Georgia,serif;margin:0}.admin-card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:22px;overflow:auto}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat{padding:20px;border-radius:13px;background:white;border:1px solid var(--line)}.stat strong{font-size:27px;display:block;color:var(--wine)}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.admin-form{max-width:850px}.admin-form label{display:block;font-size:12px;font-weight:750;margin:14px 0 6px}.admin-form textarea{min-height:100px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.btn.danger{background:#8b2828;border-color:#8b2828}.pill{display:inline-block;border-radius:99px;padding:4px 9px;background:#f1e8df;font-size:11px}.empty-state{text-align:center;padding:50px 20px;color:var(--muted)}@media(max-width:850px){.nav-links{gap:13px}.hero-inner{grid-template-columns:1fr}.hero-art{min-height:250px}.hero-art img{height:260px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,1fr)}.checkout-layout{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.admin-side{padding:12px;display:flex;align-items:center;gap:7px;overflow-x:auto}.admin-side .brand{margin:0 12px 0 0;white-space:nowrap}.admin-side a:not(.brand){white-space:nowrap}.admin-main{padding:20px}.stats{grid-template-columns:1fr 1fr}}@media(max-width:600px){.container{width:min(100% - 28px,1160px)}.nav{min-height:70px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:white;padding:18px 22px 22px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.hero-inner{padding-top:30px;padding-bottom:30px}.hero h1{font-size:45px}.hero-art:before{width:230px;height:230px}.section{padding:48px 0}.section-head{align-items:start;flex-direction:column}.product-grid{gap:12px}.product-info{padding:12px}.product-info h3{font-size:14px}.product-info p{font-size:11px}.product-bottom{align-items:start;flex-direction:column}.mini-btn{display:block}.trust-row,.product-detail,.payment-grid{grid-template-columns:1fr}.product-detail{gap:24px;padding:30px 0 45px}.detail-image{min-height:300px;max-height:420px}.field-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.stats{grid-template-columns:1fr}.admin-main{padding:14px}.admin-top{align-items:flex-start;flex-direction:column}.admin-top h1{font-size:28px}}

.old-price{color:#8c817a;text-decoration:line-through;font-size:13px;margin-right:7px;font-weight:500}
.discount-badge{display:inline-flex;align-items:center;background:#e8f4ed;color:#1d6447;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;white-space:nowrap}
.price-block{margin-top:10px}.price-block .product-bottom{margin-top:5px}
.detail-prices{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-prices .price{flex-basis:100%;font-size:29px}
.product-info{display:flex;flex-direction:column}.product-info .price-block{margin-top:auto;padding-top:12px}
.product-card{box-shadow:0 5px 20px rgba(56,35,25,.035)}.product-image img{transition:transform .35s}.product-card:hover .product-image img{transform:scale(1.035)}
.theme-blush{--wine:#a23f62;--wine2:#782743;--cream:#fff3f6;--paper:#fffafb;--gold:#d8a2ad;--line:#f0dce3}
.theme-midnight{--wine:#24385d;--wine2:#15233f;--cream:#eef1f7;--paper:#fbfcff;--gold:#c7a96b;--line:#dce2ed}

.brand-mark-img{width:42px;height:42px;object-fit:contain;border-radius:10px;background:#fff;padding:3px;border:1px solid var(--gold)}
.detail-gallery{min-width:0}.gallery-main{position:relative;min-height:420px;border-radius:20px;background:#f3e8dc;overflow:hidden}.gallery-slide{display:none;width:100%;height:500px;object-fit:contain;background:#f7f1eb}.gallery-slide.active{display:block}.gallery-arrow{position:absolute;z-index:2;top:50%;transform:translateY(-50%);border:0;background:#fffe;color:#2b211f;border-radius:50%;width:42px;height:42px;font-size:30px;cursor:pointer;box-shadow:0 4px 14px #0002}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.gallery-counter{position:absolute;bottom:12px;right:12px;background:#211b1bcc;color:#fff;padding:4px 10px;border-radius:20px;font-size:12px}.gallery-thumbs{display:flex;gap:9px;overflow-x:auto;padding:12px 2px}.gallery-thumb{border:2px solid transparent;padding:0;border-radius:9px;overflow:hidden;flex:0 0 70px;height:70px;background:white;cursor:pointer}.gallery-thumb.active{border-color:var(--wine)}.gallery-thumb img{width:100%;height:100%;object-fit:cover}


/* Gift Hamper: consistent 1:1 product photos on homepage and product listing */
.product-grid .product-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    overflow: hidden;
    background: #f7f3ee;
}
.product-grid .product-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}
.product-grid .product-card {
    min-width: 0;
    overflow: hidden;
}
@media (max-width: 600px) {
    .product-grid { gap: 12px; }
    .product-grid .product-image { aspect-ratio: 1 / 1; }
}

/* Announcement bar: editable from Admin > Store settings */
.announcement{overflow:hidden;white-space:nowrap;letter-spacing:.02em}
.announcement-track{display:block;width:100%;overflow:hidden}
.announcement-track span{display:inline-block;padding-left:100%;animation:announcement-scroll 22s linear infinite}
.announcement:hover .announcement-track span{animation-play-state:paused}
@keyframes announcement-scroll{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.announcement-track span{animation:none;padding-left:0;white-space:normal}}


/* Scoped product-card repair: preserve the existing site theme and layout. */
.product-grid .product-image {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  height: auto;
  overflow: hidden;
  line-height: 0;
  background: #f7f1eb;
}
.product-grid .product-image img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: center;
}
.product-grid .product-image .placeholder {
  width: 100%; height: 100%; aspect-ratio: 1 / 1;
}
.product-grid .product-info { min-width: 0; }
.product-grid .product-info h3 { overflow-wrap: anywhere; }
.product-grid .price-block { margin-top: 10px; padding-top: 0; }
.product-grid .product-prices { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 9px; }
.product-grid .product-prices .price { font-size: 18px; }
.product-grid .product-prices .old-price { margin: 0; }
.product-grid .saving-line { display: inline-block; margin-top: 6px; padding: 3px 8px; border-radius: 7px; background: #fff0f0; color: #a32835; font-size: 11px; font-weight: 700; }
.product-grid .product-view-btn { display: inline-flex; margin-top: 10px; justify-content: center; }
@media (max-width: 600px) {
  .product-grid .product-image { aspect-ratio: 1 / 1; }
  .product-grid .product-info { padding: 12px; }
  .product-grid .product-prices .price { font-size: 16px; }
}
