/*
Theme Name: Hárstofa Írisar
Theme URI: https://harstofairisar.is
Author: Hárstofa Írisar
Description: Fágað WooCommerce-þema fyrir Hárstofu Írisar — hvítt og ljóst gull (champagne), hágæða snyrtivöruútlit.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: harstofa-iris
*/

/* ---------- Design tokens ---------- */
:root{
  --white:#FFFFFF;
  --pearl:#FAF8F4;
  --champagne:#F1E8D8;
  --gold:#C9A96A;
  --gold-deep:#A9863F;
  --gold-pale:#EADFC8;
  --charcoal:#232120;
  --stone:#6E6A63;
  --line:#ECE6DA;
  --font-display:'Playfair Display',Georgia,serif;
  --font-body:'Jost',-apple-system,sans-serif;
  --maxw:1280px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--white);color:var(--charcoal);
  font-family:var(--font-body);font-weight:400;font-size:15px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;cursor:pointer;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
h1,h2,h3{font-family:var(--font-display);font-weight:500;margin:0 0 .35em;letter-spacing:.01em;color:var(--charcoal);}

.kicker{
  font-size:10.5px;letter-spacing:.34em;text-transform:uppercase;
  color:var(--gold-deep);font-weight:500;display:block;margin-bottom:14px;
}

/* ---------- Announcement ---------- */
.announce{
  background:var(--white);border-bottom:1px solid var(--line);
  text-align:center;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;
  padding:11px;color:var(--gold-deep);font-weight:500;
}

/* ---------- Header ---------- */
.site-header{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
.header-inner{
  display:grid;grid-template-columns:auto auto auto;
  align-items:center;justify-content:center;
  column-gap:30px;
  padding:24px 32px;max-width:var(--maxw);margin:0 auto;
}
.main-nav{justify-self:end;}
.main-nav ul{flex-wrap:nowrap;gap:26px;}
.main-nav a{white-space:nowrap;letter-spacing:.09em;font-size:11.5px;}
.site-logo{justify-self:center;text-align:center;white-space:nowrap;}
.header-right{display:flex;align-items:center;gap:46px;justify-self:start;}
.nav-right ul{display:flex;gap:26px;flex-wrap:nowrap;}
.nav-right a{
  font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;
  white-space:nowrap;padding:6px 0;position:relative;
}
.nav-right a::after{
  content:"";position:absolute;left:50%;bottom:0;
  width:0;height:1px;background:var(--gold);
  transition:all .3s ease;transform:translateX(-50%);
}
.nav-right a:hover::after{width:100%;}
.mobile-only{display:none;}
.site-logo{text-align:center;line-height:1;}
.site-logo .name{font-family:var(--font-display);font-size:27px;font-weight:500;letter-spacing:.06em;display:block;}
.site-logo .tag{font-size:9.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-top:5px;font-weight:500;}
.main-nav ul{display:flex;gap:36px;}
.main-nav a{
  font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  padding:6px 0;position:relative;
}
.main-nav a::after{
  content:"";position:absolute;left:50%;bottom:0;
  width:0;height:1px;background:var(--gold);
  transition:all .3s ease;transform:translateX(-50%);
}
.main-nav a:hover::after{width:100%;}
.header-icons{display:flex;gap:22px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;align-items:center;font-weight:500;}
.header-icons a,.header-icons button{background:none;border:0;color:var(--charcoal);display:flex;align-items:center;gap:4px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;}
.cart-count{
  border:1px solid var(--gold);color:var(--gold-deep);border-radius:50%;
  width:19px;height:19px;font-size:10px;display:inline-flex;align-items:center;justify-content:center;
}

/* ---------- Hero ---------- */
.hero{
  background:linear-gradient(180deg,var(--pearl) 0%,var(--white) 100%);
  padding:96px 32px 88px;text-align:center;position:relative;
}
.hero::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:1px;height:52px;background:var(--gold);
}
.hero h1{font-size:clamp(40px,5.6vw,70px);line-height:1.06;max-width:760px;margin:0 auto .3em;}
.hero h1 em{font-style:italic;color:var(--gold-deep);}
.hero-sub{color:var(--stone);font-size:16px;font-weight:300;max-width:480px;margin:0 auto 38px;line-height:1.7;letter-spacing:.02em;}
.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

.btn{
  display:inline-block;padding:15px 38px;
  font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;
  transition:all .25s ease;border:1px solid transparent;
}
.btn-gold{background:var(--charcoal);color:var(--white);border-color:var(--charcoal);}
.btn-gold:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:var(--white);}
.btn-line{border-color:var(--gold);color:var(--charcoal);}
.btn-line:hover{background:var(--champagne);}

/* ---------- Trust strip ---------- */
.trust-strip{
  display:flex;justify-content:center;gap:64px;padding:26px 32px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  flex-wrap:wrap;
}
.trust-item{
  font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--stone);font-weight:500;display:flex;align-items:center;gap:10px;
}
.trust-item::before{content:"";width:5px;height:5px;background:var(--gold);transform:rotate(45deg);}

/* ---------- Section ---------- */
.section{padding:88px 0;}
.section-head{text-align:center;margin-bottom:52px;}
.section-head h2{font-size:clamp(30px,3.4vw,42px);}
.section-head .rule{width:52px;height:1px;background:var(--gold);margin:20px auto 0;}
.section-more{text-align:center;margin-top:48px;}

/* ---------- Products (WooCommerce grid) ---------- */
.products, ul.products{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  justify-content:start;
  gap:44px 30px;
  list-style:none !important;padding:0 !important;margin:0 !important;
}
/* hver vara heldur sömu breidd — 1 vara á síðu er jafn stór og 4 vörur */
.product-card, ul.products li.product{
  max-width:100%;
}
.product-card, ul.products li.product{
  text-align:center;position:relative;background:none;border:0;margin:0 !important;width:auto !important;float:none !important;
}
.product-thumb, ul.products li.product img{
  aspect-ratio:1/1.18;object-fit:cover;width:100%;
  background:var(--pearl);border:1px solid var(--line);
  margin-bottom:20px;transition:border-color .3s ease;
}
.product-card:hover .product-thumb,
ul.products li.product:hover img{border-color:var(--gold);}
.product-brand{
  font-size:10px;letter-spacing:.26em;text-transform:uppercase;
  color:var(--gold-deep);font-weight:500;display:block;margin-bottom:7px;
}
.product-card h3,
ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-body) !important;font-weight:500 !important;
  font-size:14.5px !important;margin:0 0 9px !important;letter-spacing:.03em;line-height:1.4;
  color:var(--charcoal);padding:0 !important;
}
.product-price,
.woocommerce ul.products li.product .price{
  font-family:var(--font-display) !important;
  font-size:17px !important;color:var(--charcoal) !important;letter-spacing:.02em;
  font-weight:400 !important;
}
.woocommerce ul.products li.product .price del{opacity:.45;}
.product-badge,
.woocommerce ul.products li.product .onsale{
  position:absolute;top:14px;right:14px;left:auto;
  background:var(--white);border:1px solid var(--line);border-radius:0;
  font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  padding:5px 11px;color:var(--stone);font-weight:500;min-height:0;line-height:1.4;
}
.product-card .add,
.woocommerce ul.products li.product .button{
  display:inline-block;margin-top:13px;
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;
  color:var(--charcoal);background:none !important;
  border:0;border-bottom:1px solid var(--gold);border-radius:0;
  padding:0 0 3px !important;
  transition:color .2s ease;
}
.product-card .add:hover,
.woocommerce ul.products li.product .button:hover{color:var(--gold-deep);background:none;}

/* ---------- Editorial band ---------- */
.editorial{background:var(--pearl);padding:96px 32px;}
.editorial-inner{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;
}
.editorial-media{
  aspect-ratio:4/5;
  background:linear-gradient(150deg,var(--champagne),var(--gold-pale));
  border:1px solid var(--line);position:relative;overflow:hidden;
}
.editorial-media img{width:100%;height:100%;object-fit:cover;}
.editorial-media::after{content:"";position:absolute;inset:14px;border:1px solid var(--gold);opacity:.4;pointer-events:none;}
.editorial-text h2{font-size:clamp(28px,3vw,40px);line-height:1.15;}
.editorial-text p{color:var(--stone);font-weight:300;line-height:1.85;font-size:15.5px;margin:18px 0 30px;letter-spacing:.02em;}

/* ---------- Newsletter ---------- */
.newsletter{padding:88px 32px;text-align:center;border-top:1px solid var(--line);}
.newsletter h2{font-size:clamp(26px,3vw,36px);}
.newsletter p{color:var(--stone);font-weight:300;max-width:400px;margin:12px auto 32px;font-size:14.5px;letter-spacing:.02em;}
.newsletter-form{display:flex;max-width:440px;margin:0 auto;border:1px solid var(--gold);}
.newsletter-form input{
  flex:1;background:transparent;border:0;font-size:13px;padding:15px 18px;
  outline:none;font-family:var(--font-body);letter-spacing:.04em;
}
.newsletter-form button{
  background:var(--charcoal);color:var(--white);border:0;
  font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;
  padding:15px 26px;transition:background .25s ease;
}
.newsletter-form button:hover{background:var(--gold-deep);}

/* ---------- Footer ---------- */
.site-footer{
  background:var(--pearl);border-top:1px solid var(--line);
  padding:64px 0 30px;font-size:13px;color:var(--stone);
}
.footer-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;
  padding-bottom:44px;border-bottom:1px solid var(--line);
}
.footer-logo .name{font-family:var(--font-display);font-size:21px;color:var(--charcoal);display:block;letter-spacing:.06em;}
.footer-logo .tag{font-size:9px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold-deep);display:block;margin:5px 0 16px;font-weight:500;}
.footer-grid h4{
  font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--charcoal);margin:0 0 18px;font-weight:600;font-family:var(--font-body);
}
.footer-grid li{margin-bottom:11px;font-weight:300;letter-spacing:.03em;}
.footer-grid a:hover{color:var(--gold-deep);}
.footer-bottom{
  display:flex;justify-content:space-between;padding-top:22px;
  flex-wrap:wrap;gap:10px;font-size:11.5px;letter-spacing:.08em;font-weight:300;
}

/* ---------- WooCommerce single product & misc polish ---------- */
.woocommerce div.product .product_title{font-family:var(--font-display);font-weight:500;}
.woocommerce div.product p.price{font-family:var(--font-display);color:var(--charcoal);font-size:22px;}
.woocommerce div.product form.cart .button,
.woocommerce .checkout-button,
.woocommerce button.button.alt{
  background:var(--charcoal);color:var(--white);border-radius:0;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;
  padding:15px 34px;
}
.woocommerce div.product form.cart .button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button.button.alt:hover{background:var(--gold-deep);color:var(--white);}
.woocommerce-breadcrumb{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone) !important;}
.woocommerce nav.woocommerce-pagination ul{border:0;}
.woocommerce nav.woocommerce-pagination ul li{border:0;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  font-family:var(--font-body);letter-spacing:.1em;padding:10px 14px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--champagne);color:var(--charcoal);}

/* ---------- Responsive ---------- */
@media (max-width:1180px) and (min-width:961px){
  .products, ul.products{grid-template-columns:repeat(3, minmax(0,1fr)) !important;}
}
@media (max-width:960px){
  .products, ul.products{grid-template-columns:repeat(2, minmax(0,1fr)) !important;justify-content:start !important;justify-items:stretch !important;gap:34px 20px;}
  .editorial-inner{grid-template-columns:1fr;gap:40px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .main-nav{display:none;}
  .trust-strip{gap:24px;}
}
@media (max-width:560px){
  .footer-grid{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;}}

/* ---------- Hero entrance animation ---------- */
.rise{opacity:0;transform:translateY(22px);animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards;display:inline-block;}
.hero .kicker.rise,.hero-sub.rise{display:block;}
.hero-actions.rise{display:flex;}
.r1{animation-delay:.05s}.r2{animation-delay:.18s}.r3{animation-delay:.32s}.r4{animation-delay:.5s}.r5{animation-delay:.65s}
@keyframes rise{to{opacity:1;transform:translateY(0);}}
.hero h1 em{position:relative;}
.hero h1 em::after{
  content:"";position:absolute;left:0;bottom:.06em;
  width:100%;height:1px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;
  animation:draw 1s ease .9s forwards;
}
@keyframes draw{to{transform:scaleX(1);}}
@media (prefers-reduced-motion:reduce){
  .rise{opacity:1;transform:none;animation:none;}
  .hero h1 em::after{transform:scaleX(1);animation:none;}
}

/* ---------- Rútínur / vörupakkar ---------- */
.bundles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.bundle{
  border:1px solid var(--line);background:var(--white);
  padding:0 0 34px;text-align:center;position:relative;
  transition:border-color .3s ease;
}
.bundle:hover{border-color:var(--gold);}
.bundle-top{
  background:var(--pearl);border-bottom:1px solid var(--line);
  padding:34px 24px 30px;margin-bottom:26px;
}
.bundle-num{
  font-family:var(--font-display);font-style:italic;
  font-size:34px;color:var(--gold);line-height:1;display:block;margin-bottom:10px;
}
.bundle h3{
  font-family:var(--font-display);font-size:23px;font-weight:500;
  margin:0 0 8px;letter-spacing:.02em;
}
.bundle-for{
  font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--stone);font-weight:500;
}
.bundle-items{
  list-style:none;margin:0 0 22px;padding:0 30px;text-align:left;
}
.bundle-items li{
  font-size:13.5px;font-weight:300;color:var(--stone);
  padding:9px 0 9px 20px;border-bottom:1px solid var(--line);position:relative;letter-spacing:.02em;
}
.bundle-items li:last-child{border-bottom:0;}
.bundle-items li::before{
  content:"";position:absolute;left:0;top:16px;
  width:4px;height:4px;background:var(--gold);transform:rotate(45deg);
}
.bundle-price{margin-bottom:16px;}
.bundle-price .now{font-family:var(--font-display);font-size:22px;color:var(--charcoal);}
.bundle-price .was{
  font-size:13px;color:var(--stone);text-decoration:line-through;margin-left:9px;font-weight:300;
}
.bundle-save{
  display:inline-block;margin-left:9px;font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold-deep);border:1px solid var(--gold-pale);
  padding:3px 8px;font-weight:500;
}

/* ---------- Gjafakort ---------- */
.giftcard{background:var(--pearl);padding:96px 32px;border-top:1px solid var(--line);}
.giftcard-inner{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;
}
.giftcard-visual{
  aspect-ratio:1.6/1;
  background:linear-gradient(135deg,#FFFFFF 0%,var(--champagne) 55%,var(--gold-pale) 100%);
  border:1px solid var(--gold-pale);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;position:relative;padding:30px;
}
.giftcard-visual::after{content:"";position:absolute;inset:12px;border:1px solid var(--gold);opacity:.45;}
.giftcard-visual .gc-name{
  font-family:var(--font-display);font-size:clamp(24px,2.6vw,32px);
  letter-spacing:.05em;color:var(--charcoal);margin-bottom:12px;
}
.giftcard-visual .gc-label{
  font-size:10.5px;letter-spacing:.36em;text-transform:uppercase;
  color:var(--gold-deep);font-weight:500;
}
.giftcard-visual .gc-line{width:44px;height:1px;background:var(--gold);margin:16px 0;}
.giftcard-text h2{font-size:clamp(28px,3vw,40px);line-height:1.15;}
.giftcard-text p{color:var(--stone);font-weight:300;line-height:1.85;font-size:15.5px;margin:18px 0 26px;letter-spacing:.02em;}
.gc-amounts{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.gc-amounts span,.gc-amounts a{
  border:1px solid var(--line);padding:11px 20px;
  font-size:13px;letter-spacing:.06em;color:var(--charcoal);
  transition:all .25s ease;cursor:pointer;background:var(--white);
  text-decoration:none;display:inline-block;
}
.gc-amounts span:hover,.gc-amounts a:hover,.gc-amounts span.active,.gc-amounts a.active{border-color:var(--gold);background:var(--champagne);}

/* ---------- Fylgihlutir og tæki ---------- */
.tools{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.tool{
  text-align:center;border:1px solid var(--line);background:var(--white);
  padding:38px 20px 32px;transition:border-color .3s ease;
}
.tool:hover{border-color:var(--gold);}
.tool-icon{
  width:52px;height:52px;margin:0 auto 20px;
  border:1px solid var(--gold-pale);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-style:italic;font-size:19px;color:var(--gold-deep);
}
.tool h3{font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.04em;margin:0 0 8px;}
.tool p{font-size:12.5px;color:var(--stone);font-weight:300;line-height:1.7;margin:0;letter-spacing:.02em;}

@media (max-width:960px){
  .bundles{grid-template-columns:1fr;}
  .giftcard-inner{grid-template-columns:1fr;gap:40px;}
  .tools{grid-template-columns:repeat(2,1fr);}
}

/* ================= MOBILE HEADER + PASS ================= */
.nav-toggle{
  display:none;background:none;border:0;padding:8px 0;
  width:26px;height:26px;position:relative;cursor:pointer;
}
.nav-toggle span{
  display:block;width:22px;height:1px;background:var(--charcoal);
  margin:5px 0;transition:transform .3s ease,opacity .3s ease;
}
body.nav-open .nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg);}
body.nav-open .nav-toggle span:nth-child(2){opacity:0;}
body.nav-open .nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

@media (max-width:960px){
  .announce{font-size:10px;letter-spacing:.14em;padding:9px 14px;line-height:1.5;}

  .header-inner{
    display:grid;
    grid-template-columns:36px 1fr 36px;
    padding:16px 18px;
    gap:8px;
  }
  .site-logo{justify-self:center;}
  .nav-right{display:none;}
  .header-right{gap:0;margin-left:0;}
  .mobile-only{display:block;}
  .nav-toggle{display:block;justify-self:start;}
  .site-logo{justify-self:center;}
  .site-logo .name{
    font-size:19px;letter-spacing:.03em;
    white-space:nowrap;
  }
  .header-icons{
    justify-self:end;gap:0;
  }
  /* hide text labels, keep only cart bubble on mobile */
  .header-icons a:not(.cart-link),
  .header-icons button:not(.cart-link){display:none;}
  .header-icons .cart-link{font-size:0;gap:0;}
  .cart-count{font-size:10px;width:24px;height:24px;}

  /* slide-down mobile menu */
  .main-nav{
    display:block;
    position:absolute;
    left:50%;
    top:100%;
    width:100vw;
    transform:translateX(-50%);
    background:var(--white);
    border-bottom:1px solid var(--line);
    max-height:0;overflow:hidden;
    z-index:60;
    transition:max-height .35s ease;
  }
  body.nav-open .main-nav{max-height:70vh;}
  .main-nav ul{
    flex-direction:column;gap:0;padding:6px 18px 18px;
  }
  .main-nav li{border-bottom:1px solid var(--line);}
  .main-nav li:last-child{border-bottom:0;}
  .main-nav a{
    display:block;padding:15px 2px;font-size:12px;letter-spacing:.16em;
  }
  .main-nav a::after{display:none;}

  /* hero */
  .hero{padding:56px 22px 60px;}
  .hero h1{font-size:clamp(30px,8.4vw,40px);line-height:1.12;}
  .hero .kicker,.hero-eyebrow{font-size:9.5px;letter-spacing:.26em;margin-bottom:16px;}
  .hero-sub{font-size:14.5px;margin-bottom:30px;line-height:1.65;}
  .hero-actions{flex-direction:column;gap:11px;width:100%;max-width:320px;margin:0 auto;}
  .hero-actions .btn{width:100%;padding:15px 20px;font-size:11.5px;letter-spacing:.14em;}
  .hero::after{height:36px;}

  /* trust strip stacks cleanly */
  .trust-strip{
    flex-direction:column;align-items:center;gap:11px;padding:20px 22px;
  }
  .trust-item{font-size:10.5px;letter-spacing:.12em;}

  /* sections */
  .section{padding:56px 0;}
  .wrap{padding:0 22px;}
  .section-head{margin-bottom:34px;}
  .section-head h2{font-size:clamp(24px,6.6vw,30px);}
  .section-head .kicker{font-size:9.5px;letter-spacing:.26em;}

  .editorial,.giftcard{padding:60px 22px;}
  .editorial-text h2,.giftcard-text h2{font-size:clamp(23px,6.2vw,30px);}
  .editorial-text p,.giftcard-text p{font-size:14.5px;}
  .editorial-media{aspect-ratio:3/2;}

  .gc-amounts{gap:8px;}
  .gc-amounts span,.gc-amounts a{padding:10px 15px;font-size:12px;}

  .newsletter{padding:56px 22px;}
  .newsletter h2{font-size:clamp(22px,6vw,28px);}
  .newsletter-form{flex-direction:column;border:0;gap:10px;}
  .newsletter-form input{border:1px solid var(--gold);padding:14px 16px;text-align:center;}
  .newsletter-form button{padding:15px;width:100%;}

  .site-footer{padding:44px 0 24px;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
}

@media (max-width:600px){
  .products, ul.products{gap:26px 14px;}
  .product-card h3,
  ul.products li.product .woocommerce-loop-product__title{font-size:13px !important;}
  .product-price,.woocommerce ul.products li.product .price{font-size:15.5px !important;}
  .product-brand{font-size:9px;letter-spacing:.2em;}
  .product-card .add{font-size:9.5px;letter-spacing:.14em;}

  .tools{grid-template-columns:1fr;gap:14px;}
  .tool{padding:26px 20px;display:flex;align-items:flex-start;gap:16px;text-align:left;}
  .tool-icon{margin:0;flex-shrink:0;width:42px;height:42px;font-size:15px;}
  .bundle-items{padding:0 22px;}
}

@media (max-width:380px){
  .site-logo .name{font-size:17px;}
  .hero h1{font-size:27px;}
}

/* ---------- Laga: result-count / ordering lenda ekki inni í vörugrind ---------- */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{
  grid-column:1 / -1;
  width:100%;
  float:none;
  margin:0 0 20px;
}
.woocommerce .woocommerce-notices-wrapper{grid-column:1 / -1;}
/* archive/shop pages: put result-count + ordering on their own row above the grid */
.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering,
.tax-product_cat .woocommerce-result-count,
.tax-product_cat .woocommerce-ordering{
  display:inline-block;
  font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--stone);
}
.woocommerce .woocommerce-ordering{float:right;}
.woocommerce .woocommerce-ordering select{
  font-family:var(--font-body);font-size:11.5px;letter-spacing:.06em;
  border:1px solid var(--line);padding:6px 10px;background:var(--white);
}
/* make absolutely sure the product grid itself contains only products */
.woocommerce ul.products::before,
.woocommerce ul.products::after{display:none !important;content:none !important;}

/* Toolbar fyrir ofan vörugrind (result-count + ordering saman í einni röð) */
.hi-shop-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  margin:0 0 30px;padding-bottom:16px;
  border-bottom:1px solid var(--line);
}
.hi-shop-toolbar .woocommerce-result-count,
.hi-shop-toolbar .woocommerce-ordering{
  float:none;margin:0;
}

/* ---------- Öryggisnet: takmarka stærð á vöruflokka-táknmyndum/lýsingum ---------- */
.woocommerce-products-header img,
.term-description img,
.woocommerce-taxonomy-archive-description img,
.page-description img{
  max-width:320px;
  height:auto;
  display:block;
  margin:0 auto 24px;
  border:1px solid var(--line);
}
