:root{--pink:#f52a91;--black:#101010;--muted:#666}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#222;background:#fff}img{max-width:100%;height:auto}.top-strip{background:#000;color:#fff;text-align:center;padding:8px 15px;font-size:13px}.header-inner{max-width:1280px;margin:auto;min-height:94px;padding:12px 28px;display:flex;align-items:center;gap:32px}.brand{margin-right:auto}.brand img{width:270px;display:block}.nav-menu{display:flex;gap:28px;list-style:none;margin:0;padding:0}.nav-menu a,.cart-link{text-decoration:none;font-weight:800}.nav-menu a:hover{color:var(--pink)}.cart-link span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--pink);color:#fff}.menu-toggle{display:none}.hero{max-width:1280px;margin:auto;padding:70px 28px 80px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.eyebrow{font-size:12px;font-weight:900;letter-spacing:2px;color:var(--pink)}.hero h1{font-size:clamp(54px,6vw,82px);line-height:.98;letter-spacing:-4px;margin:14px 0 22px}.hero p{font-size:20px;color:#555;max-width:650px}.hero-actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-block;padding:14px 23px;border-radius:6px;text-decoration:none;font-weight:900}.pink{background:var(--pink);color:#fff}.outline{border:2px solid #111}.dark{background:#111;color:#fff}.benefits{font-size:13px;font-weight:700;color:#666}.hero-art{min-height:440px;border-radius:30px;background:linear-gradient(145deg,#fff0f7,#f4f4f4);display:grid;place-items:center}.sample-card{width:260px;min-height:350px;background:#fff;box-shadow:0 28px 55px #0003;transform:rotate(3deg);display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}.sample-card img{width:100%;height:100%;object-fit:cover}.sample-card strong{font-size:40px;color:var(--pink);font-style:italic}.steps{background:#111;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:30px max(28px,calc((100vw - 1224px)/2))}.steps div{display:grid;grid-template-columns:42px 1fr}.steps b{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--pink)}.steps span{font-size:12px;color:#aaa}.home-section,.shop-shell,.content-wrap{max-width:1280px;margin:auto;padding:72px 28px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-head h2{font-size:38px;letter-spacing:-1.5px;margin:5px 0}.section-head>a{font-weight:800}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:30px!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;text-align:center}.woocommerce ul.products li.product img{transition:.2s;box-shadow:0 5px 18px #0001}.woocommerce ul.products li.product:hover img{transform:translateY(-5px);box-shadow:0 14px 28px #0002}.woocommerce ul.products li.product .price{color:var(--pink)!important;font-weight:900}.woocommerce ul.products li.product .button{background:#111!important;color:#fff!important}.pink-panel{max-width:1224px;margin:20px auto;background:var(--pink);color:#fff;border-radius:24px;padding:50px;display:grid;grid-template-columns:1.2fr 1fr auto;gap:40px;align-items:center}.pink-panel h2{font-size:36px;line-height:1.05;margin:7px 0}.woocommerce div.product .product_title{font-size:42px}.woocommerce div.product p.price{color:var(--pink)!important;font-weight:900}.woocommerce div.product form.cart .button{background:var(--pink)!important;padding:16px 24px!important}.site-footer{background:#080808;color:#fff;margin-top:60px}.footer-inner{max-width:1224px;margin:auto;padding:55px 28px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-inner img{width:235px}.footer-inner p{color:#aaa}.footer-inner h3{color:var(--pink)}.footer-inner a{display:block;color:#ddd;text-decoration:none;margin:8px 0}.copyright{text-align:center;border-top:1px solid #222;padding:18px;color:#777;font-size:12px}
@media(max-width:900px){.header-inner{flex-wrap:wrap}.brand img{width:210px}.menu-toggle{display:block;background:#111;color:#fff;border:0;padding:9px 13px}.main-nav{display:none;order:4;width:100%}.main-nav.open{display:block}.nav-menu{display:block}.nav-menu li{padding:9px 0;border-top:1px solid #eee}.hero{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}.pink-panel{margin:20px;grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.brand img{width:165px}.hero{padding:40px 20px 55px}.hero h1{font-size:50px;letter-spacing:-2px}.hero-actions{flex-direction:column}.hero-actions .btn{text-align:center}.hero-art{min-height:330px}.sample-card{width:190px;min-height:270px}.steps{grid-template-columns:1fr;padding:25px 20px}.home-section,.shop-shell,.content-wrap{padding:55px 20px}.woocommerce ul.products{gap:18px 12px!important}.pink-panel{padding:34px 24px}.footer-inner{grid-template-columns:1fr;padding:45px 20px}}

/* ==========================================================
   ARTMOOP 1.1 — POLISHED DIGITAL GREETING CARD STOREFRONT
   ========================================================== */

:root{
  --artmoop-pink:#f52a91;
  --artmoop-pink-dark:#d81775;
  --artmoop-pink-soft:#fff0f7;
  --artmoop-black:#101010;
  --artmoop-grey:#707070;
  --artmoop-border:#ececf0;
}

/* More premium page background / spacing */
.shop-shell{max-width:1320px}
.shop-shell .woocommerce-products-header{
  text-align:center;
  padding:18px 0 34px;
}
.shop-shell .woocommerce-products-header__title{
  margin:0;
  font-size:clamp(38px,5vw,58px);
  line-height:1;
  letter-spacing:-2.5px;
  color:var(--artmoop-black);
}
.shop-shell .woocommerce-products-header__title:after{
  content:"";
  display:block;
  width:58px;
  height:5px;
  margin:18px auto 0;
  border-radius:10px;
  background:var(--artmoop-pink);
}

/* Cleaner sorting/results row */
.woocommerce .woocommerce-result-count{
  color:#777;
  font-size:14px;
  padding-top:10px;
}
.woocommerce .woocommerce-ordering select{
  border:1px solid #ddd;
  background:#fff;
  min-height:44px;
  padding:0 38px 0 14px;
  border-radius:999px;
  font-weight:700;
  color:#333;
  outline:none;
}

/* Product grid: card-shop proportions */
.woocommerce ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:38px 26px !important;
  clear:both;
}
.woocommerce ul.products li.product{
  position:relative;
  background:#fff;
  border:1px solid var(--artmoop-border);
  border-radius:18px;
  padding:14px 14px 18px !important;
  overflow:hidden;
  box-shadow:0 7px 24px rgba(17,17,17,.055);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-7px);
  border-color:#f4bfd9;
  box-shadow:0 18px 42px rgba(17,17,17,.13);
}

/* Force a consistent portrait greeting-card display area */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:block;
  text-decoration:none;
}
.woocommerce ul.products li.product a img{
  width:100% !important;
  aspect-ratio:5 / 7 !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:10px;
  margin:0 0 15px !important;
  border-radius:12px;
  background:linear-gradient(145deg,#fafafa,#f3f3f5) !important;
  box-shadow:none !important;
  transition:transform .25s ease !important;
}
.woocommerce ul.products li.product:hover a img{
  transform:scale(1.025) !important;
  box-shadow:none !important;
}

/* Digital badge */
.woocommerce ul.products li.product:before{
  content:"DIGITAL eCARD";
  position:absolute;
  z-index:4;
  top:24px;
  left:24px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(16,16,16,.91);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.7px;
  pointer-events:none;
}

/* Product typography */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:43px;
  margin:0 !important;
  padding:0 5px 4px !important;
  color:#1a1a1a;
  font-size:15px !important;
  line-height:1.4;
  font-weight:800;
}
.woocommerce ul.products li.product .price{
  display:block;
  padding:0 5px;
  margin:3px 0 12px !important;
  color:var(--artmoop-pink) !important;
  font-size:19px !important;
  font-weight:900 !important;
}

/* Clean, brand-matched shop buttons */
.woocommerce ul.products li.product .button{
  display:block !important;
  width:100%;
  margin:8px 0 0 !important;
  padding:13px 15px !important;
  border:0 !important;
  border-radius:10px !important;
  background:var(--artmoop-pink) !important;
  color:#fff !important;
  text-align:center;
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.15px;
  box-shadow:0 7px 18px rgba(245,42,145,.20);
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.woocommerce ul.products li.product .button:hover{
  background:var(--artmoop-pink-dark) !important;
  transform:translateY(-1px);
  box-shadow:0 10px 23px rgba(245,42,145,.29);
}

/* Global WooCommerce actions */
.woocommerce a.button:not(.remove),
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
  border-radius:10px !important;
  font-weight:900 !important;
  transition:.18s ease;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
  background:var(--artmoop-pink) !important;
  color:#fff !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover{
  background:var(--artmoop-pink-dark) !important;
}

/* Product page — make the card itself feel premium */
.woocommerce div.product{
  align-items:start;
}
.woocommerce div.product div.images{
  padding:24px;
  border:1px solid var(--artmoop-border);
  border-radius:22px;
  background:linear-gradient(145deg,#fafafa,#f3f3f5);
}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{
  max-height:720px;
  width:100%;
  object-fit:contain;
}
.woocommerce div.product div.summary{
  padding-top:12px;
}
.woocommerce div.product .product_title{
  line-height:1.06;
  letter-spacing:-2px;
}
.woocommerce div.product p.price{
  margin:16px 0 !important;
  font-size:30px !important;
}
.woocommerce div.product form.cart .button{
  min-height:54px;
  padding:0 28px !important;
  border-radius:10px !important;
  background:var(--artmoop-pink) !important;
  box-shadow:0 9px 22px rgba(245,42,145,.22);
}
.woocommerce div.product form.cart .button:hover{
  background:var(--artmoop-pink-dark) !important;
  transform:translateY(-1px);
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{
  border:0 !important;
  display:flex;
  gap:7px;
}
.woocommerce nav.woocommerce-pagination ul li{
  border:0 !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:grid;
  place-items:center;
  min-width:42px;
  height:42px;
  padding:0 12px !important;
  border:1px solid #e3e3e3;
  border-radius:10px;
  background:#fff;
  color:#222;
  font-weight:800;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  border-color:var(--artmoop-pink);
  background:var(--artmoop-pink);
  color:#fff;
}

/* Header polish */
.site-header{
  position:relative;
  z-index:20;
  background:#fff;
  box-shadow:0 1px 0 rgba(0,0,0,.07);
}
.header-inner{
  min-height:100px;
}
.nav-menu a{
  position:relative;
  padding:10px 0;
}
.nav-menu a:after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:4px;
  height:3px;
  border-radius:3px;
  background:var(--artmoop-pink);
  transition:right .2s ease;
}
.nav-menu a:hover:after{right:0}

/* Homepage cards use same polished presentation */
.home-section{
  position:relative;
}
.home-section:nth-of-type(odd){
  background:#fff;
}

/* Responsive */
@media(max-width:1050px){
  .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:760px){
  .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px 14px !important;
  }
  .woocommerce ul.products li.product{
    padding:9px 9px 14px !important;
    border-radius:14px;
  }
  .woocommerce ul.products li.product:before{
    top:16px;
    left:16px;
    font-size:8px;
    padding:6px 8px;
  }
  .woocommerce ul.products li.product a img{
    padding:5px;
  }
}
@media(max-width:420px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:12.5px !important;
    min-height:39px;
  }
  .woocommerce ul.products li.product .price{
    font-size:16px !important;
  }
  .woocommerce ul.products li.product .button{
    font-size:11px !important;
    padding:11px 8px !important;
  }
}

/* ARTMOOP 1.2 — generated logo + PNG navigation */
.brand img{
  width:300px;
  max-height:84px;
  object-fit:contain;
  border-radius:12px;
}
.artmoop-png-nav{
  gap:7px !important;
}
.artmoop-png-nav li{
  margin:0;
}
.artmoop-png-nav a{
  width:112px;
  height:42px;
  display:grid !important;
  place-items:center;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  text-shadow:0 1px 2px rgba(0,0,0,.3);
  transition:transform .16s ease,filter .16s ease;
}
.artmoop-png-nav a:after{display:none !important}
.artmoop-png-nav a:hover{
  transform:translateY(-2px);
  filter:brightness(1.12);
}
.artmoop-png-nav .nav-home{background-image:url('../images/nav-home.png')}
.artmoop-png-nav .nav-birthday{background-image:url('../images/nav-birthday.png')}
.artmoop-png-nav .nav-all-cards{background-image:url('../images/nav-all-cards.png')}
.artmoop-png-nav .nav-about{background-image:url('../images/nav-about.png')}
.artmoop-png-nav .nav-services{background-image:url('../images/nav-services.png')}
.artmoop-png-nav .nav-contact{background-image:url('../images/nav-contact.png')}
@media(max-width:1150px){
 .artmoop-png-nav a{width:96px;height:38px;font-size:11px !important}
 .brand img{width:235px}
}
@media(max-width:900px){
 .artmoop-png-nav{display:grid !important;grid-template-columns:1fr 1fr;gap:8px !important;padding:12px 0 !important}
 .artmoop-png-nav li{border:0 !important;padding:0 !important}
 .artmoop-png-nav a{width:100%;height:44px}
}


/* ==========================================================
   ARTMOOP 1.3 — LIGHT, CLEAN HEADER
   ========================================================== */
.header-inner{
  max-width:1320px;
  min-height:112px;
  gap:24px;
}
.brand{
  min-width:270px;
  margin-right:auto;
}
.brand img{
  width:285px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  border-radius:0 !important;
  filter:none !important;
}
.artmoop-png-nav{
  gap:8px !important;
}
.artmoop-png-nav a{
  width:108px !important;
  height:40px !important;
  color:#461939 !important;
  text-shadow:none !important;
  font-size:12px !important;
  letter-spacing:0 !important;
  filter:none;
}
.artmoop-png-nav a:hover{
  transform:translateY(-2px) !important;
  filter:brightness(.98) saturate(1.08) !important;
}
.cart-link{
  color:#4a1640 !important;
  padding:10px 4px;
}
.cart-link:hover{color:var(--artmoop-pink) !important}
.cart-link span{
  background:var(--artmoop-pink) !important;
  box-shadow:0 4px 10px rgba(245,42,145,.2);
}
@media(max-width:1150px){
 .brand{min-width:210px}
 .brand img{width:220px !important}
 .artmoop-png-nav a{width:92px !important;height:37px !important;font-size:10px !important}
}
@media(max-width:900px){
 .brand{min-width:0}
 .brand img{width:205px !important}
 .artmoop-png-nav a{width:100% !important;height:44px !important;font-size:12px !important}
}


/* ==========================================================
   ARTMOOP 1.4 — CLEAN TEXT NAVIGATION
   ========================================================== */
.artmoop-text-nav{
  display:flex !important;
  align-items:center;
  gap:30px !important;
  list-style:none;
  margin:0;
  padding:0;
}
.artmoop-text-nav li{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
.artmoop-text-nav a{
  display:block !important;
  position:relative;
  width:auto !important;
  height:auto !important;
  padding:12px 1px !important;
  background:none !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#252126 !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-shadow:none !important;
  text-decoration:none !important;
  transform:none !important;
  filter:none !important;
  transition:color .18s ease !important;
}
.artmoop-text-nav a:before{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:5px;
  height:3px;
  border-radius:99px;
  background:#f52a91;
  transition:left .18s ease,right .18s ease;
}
.artmoop-text-nav a:after{
  display:none !important;
}
.artmoop-text-nav a:hover,
.artmoop-text-nav a:focus{
  color:#f52a91 !important;
  background:none !important;
}
.artmoop-text-nav a:hover:before,
.artmoop-text-nav a:focus:before{
  left:0;
  right:0;
}
.header-inner{
  gap:34px !important;
}
.main-nav{
  margin-left:auto;
}
.cart-link{
  margin-left:8px;
  font-size:14px !important;
  font-weight:800 !important;
}
@media(max-width:1100px){
  .artmoop-text-nav{gap:20px !important}
  .artmoop-text-nav a{font-size:13px !important}
}
@media(max-width:900px){
  .main-nav{margin-left:0}
  .artmoop-text-nav{
    display:block !important;
    padding:8px 0 14px !important;
  }
  .artmoop-text-nav li{
    border-top:1px solid #f0f0f0 !important;
  }
  .artmoop-text-nav a{
    padding:13px 4px !important;
    font-size:14px !important;
  }
  .artmoop-text-nav a:before{display:none}
}

/* Artmoop 1.5: catalogue View Card is navigation, never add-to-cart */
.woocommerce ul.products li.product .artmoop-view-card{
  cursor:pointer;
}

/* Artmoop 1.6 — personalisation is the only purchase CTA for digital cards */
.single-product .wgcd-product-button{
  margin:24px 0 12px !important;
  text-align:left !important;
}
.single-product .wgcd-personalise-btn{
  width:100%;
  min-height:58px;
  border:0;
  border-radius:12px;
  background:#f52a91 !important;
  color:#fff !important;
  font-size:17px !important;
  font-weight:900 !important;
  box-shadow:0 10px 24px rgba(245,42,145,.24);
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.single-product .wgcd-personalise-btn:hover{
  background:#d81775 !important;
  transform:translateY(-1px);
  box-shadow:0 13px 28px rgba(245,42,145,.30);
}
