@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#16212b;--muted:#68727b;--line:#e8ecef;--orange:#ff6b18;--blue:#0b68d1;--soft:#f7f9fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1160px,92%);margin:auto}
.site-header{height:86px;background:#fff;border-bottom:1px solid rgba(22,33,43,.08);display:flex;align-items:center;position:sticky;top:0;z-index:20}.nav-wrap{display:flex;align-items:center;justify-content:space-between}.brand img{width:225px;height:auto;display:block}.nav{display:flex;gap:34px;align-items:center;font-size:14px;font-weight:600;color:#56616b}.nav a{padding:10px 0;border-bottom:2px solid transparent}.nav a:hover,.nav a.active{color:var(--ink);border-color:var(--orange)}.menu-toggle{display:none;border:0;background:none;font-size:26px;color:var(--ink)}
.hero{padding:52px 0 48px;background:linear-gradient(135deg,#fff8f3 0%,#f2f8ff 52%,#f4fbf7 100%)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:800;color:#7a858e}.hero h1{font-size:clamp(38px,4.8vw,62px);line-height:1.05;letter-spacing:-3px;margin:17px 0 22px}.hero h1 span{color:#59646d}.hero p,.page-hero p{font-size:18px;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:12px;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;border-radius:9px;padding:13px 22px;font-weight:700;font-size:14px;border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:#273541}.btn-secondary{border-color:#d5dce1;background:#fff}.hero-card{min-height:285px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px rgba(22,33,43,.09);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.hero-card img{width:88%;position:relative;z-index:2}.hero-orbit{position:absolute;width:290px;height:290px;border:1px solid #edf0f2;border-radius:50%}.hero-orbit:after{content:"";position:absolute;width:12px;height:12px;background:var(--orange);border-radius:50%;right:22px;top:36px}
.section{padding:72px 0}.soft{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section h2{font-size:38px;line-height:1.15;letter-spacing:-1.5px;margin:9px 0 0}.text-link{font-size:14px;font-weight:700;color:#3e4b55}.text-link:hover{color:var(--orange)}
.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.product-grid.large{grid-template-columns:repeat(2,1fr)}.product-card{background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);border:1px solid var(--line);border-radius:18px;padding:28px;transition:.2s ease;box-shadow:0 7px 22px rgba(22,33,43,.035)}.product-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(22,33,43,.09)}.product-link{cursor:pointer;color:inherit}.product-card h2,.product-card h3{margin:9px 0 7px;line-height:1.25}.product-card p{color:var(--muted);font-size:14px;margin:0 0 15px}.product-icon{width:58px;height:58px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;margin-bottom:22px}.orange{background:#fff0e8;color:#ee5b0c}.gray{background:#eef1f3;color:#59636b}.blue{background:#eaf2ff;color:#1767bd}.green{background:#eaf7f0;color:#287b4f}.purple{background:#f3edff;color:#7047b8}.tag{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:#879099;font-weight:700}
.values-section{border-top:1px solid var(--line);background:linear-gradient(120deg,#f5fbff,#fff8f3)}.values-grid,.about-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.value-list>div{padding:0 0 23px;margin-bottom:23px;border-bottom:1px solid var(--line)}.value-list b{font-size:17px}.value-list p{color:var(--muted);margin:4px 0 0;font-size:14px}.page-hero{padding:82px 0 70px;background:var(--soft);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(40px,5vw,64px);line-height:1.08;letter-spacing:-2.5px;margin:14px 0}.about-grid p{color:var(--muted)}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{background:#fff;border:1px solid var(--line);padding:28px;border-radius:16px}.info-card h3{margin-top:0}
.contact-info h2{font-size:42px;line-height:1.12;letter-spacing:-1.5px;margin:14px 0}.contact-info>p{color:var(--muted);max-width:520px}.contact-item{display:flex;flex-direction:column;margin-top:24px}.contact-item b{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#818b93}.contact-item span{font-size:16px}.contact-form{border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 10px 30px rgba(22,33,43,.05)}.contact-form label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:7px;border:1px solid #dce2e6;border-radius:8px;padding:12px 13px;font:inherit;outline:none;background:#fff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#8ea3b3}.form-message{font-size:13px;color:#287b4f;margin:12px 0 0}
.footer{background:#16212b;color:#fff;padding:38px 0}.footer-wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer strong{font-size:20px}.footer span{color:#aab3ba}.footer p{font-size:12px;color:#9ba5ad;margin:7px 0 0}.footer-links{display:flex;gap:25px;font-size:13px;color:#cbd1d5}.footer-links a:hover{color:#fff}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.nav{gap:18px}.hero-grid,.values-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.product-grid{grid-template-columns:repeat(2,1fr)}.hero-card{min-height:280px}.three-grid{grid-template-columns:1fr}}
@media(max-width:700px){.site-header{height:72px}.brand img{width:185px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:4%;right:4%;top:71px;background:#fff;padding:15px 20px;border:1px solid var(--line);border-radius:12px;box-shadow:0 15px 35px rgba(22,33,43,.1);flex-direction:column;align-items:stretch;gap:4px}.nav.open{display:flex}.nav a{padding:10px}.hero{padding:65px 0}.hero h1{letter-spacing:-2px}.hero-card{min-height:220px}.section{padding:65px 0}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:10px}.product-grid,.product-grid.large{grid-template-columns:1fr}.page-hero{padding:60px 0}.page-hero h1{letter-spacing:-1.5px}.contact-info h2{font-size:34px}.footer-wrap{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}}

/* Product imagery and direct shopping/contact actions */
.product-card{overflow:hidden;display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e8ecef;border-radius:16px;box-shadow:0 8px 24px rgba(22,33,43,.06);transition:transform .2s ease,box-shadow .2s ease}
.product-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(22,33,43,.12)}
.product-photo{height:250px;background:#f7f5ef;display:flex;align-items:center;justify-content:center;overflow:hidden}
.product-photo img{width:100%;height:100%;object-fit:contain;display:block}
.product-details{padding:20px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.product-details h2,.product-details h3{margin:8px 0}
.product-details p{color:var(--muted);font-size:14px;margin:0 0 18px}
.product-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;width:100%}
.buy-online,.whatsapp-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border-radius:8px;font-size:12px;font-weight:700;line-height:1.3}
.buy-online{background:#ffedbd;color:#252525;border:1px solid #f4d57c}
.amazon-mark{font-family:Arial,sans-serif;font-size:21px;font-weight:800;color:#111;line-height:1;position:relative}
.amazon-mark:after{content:"";position:absolute;left:0;right:-2px;bottom:-2px;height:2px;border-bottom:2px solid #f59b18;border-radius:50%}
.whatsapp-link{background:#e7f8ed;color:#146c3a;border:1px solid #bfe8ce}
.wa-mark{font-size:17px;font-weight:800}
.buy-online.unavailable{background:#f3f4f5;color:#68727b;border:1px solid #e8ecef;cursor:default}
@media(max-width:600px){.product-photo{height:220px}.product-actions{flex-direction:column;align-items:stretch}.buy-online,.whatsapp-link{width:100%}}

/* Alignment refinements for product cards */
.product-grid:not(.large) .product-card { padding:0; }
.product-grid:not(.large) .product-photo { height:230px; flex:0 0 230px; }
.product-photo img { width:100%; height:100%; object-fit:cover; object-position:center; }
.product-details { width:100%; box-sizing:border-box; }
.product-category { display:block; width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-height:16px; letter-spacing:.8px; }
.product-details h2,.product-details h3 { min-height:2.5em; display:block; line-height:1.25; margin:9px 0 10px; }
.product-details p { min-height:4.5em; }
.product-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; align-items:stretch; }
.buy-online,.whatsapp-link { width:100%; min-height:42px; box-sizing:border-box; padding:8px 7px; font-size:12px; white-space:nowrap; }
.wa-mark { width:18px; height:18px; display:inline-flex; flex:0 0 18px; }
.wa-mark svg { width:18px; height:18px; display:block; fill:currentColor; }
.contact-item address { font-style:normal; line-height:1.8; margin-top:2px; }
.contact-item a { color:inherit; text-decoration:none; }
.contact-item a:hover { text-decoration:underline; }
.contact-whatsapp { display:inline-flex; align-items:center; gap:8px; color:#168447 !important; font-weight:700; }
.contact-whatsapp svg { width:20px; height:20px; fill:currentColor; }
@media(max-width:1100px) and (min-width:901px) {
 .product-grid:not(.large) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .product-grid:not(.large) .product-photo { height:260px; flex-basis:260px; }
 .product-actions { grid-template-columns:1fr 1fr; }
 .buy-online,.whatsapp-link { white-space:normal; }
}

/* Product actions stacked vertically: Amazon first, WhatsApp second */
.product-actions { display:flex !important; flex-direction:column !important; gap:8px !important; align-items:stretch !important; }
.product-actions .buy-online, .product-actions .whatsapp-link { width:100%; min-height:42px; display:flex; justify-content:center; align-items:center; box-sizing:border-box; }
.product-actions .wa-mark { width:19px; height:19px; flex:0 0 19px; display:inline-flex; }
.product-actions .wa-mark svg { width:100%; height:100%; fill:currentColor; display:block; }

/* Product listing page: show the complete product image and keep titles on one line */
.products-page .product-grid.large .product-card,
.products-page .product-grid .product-card { min-width:0; }
.products-page .product-grid.large .product-photo,
.products-page .product-grid .product-photo {
  height: 320px;
  flex: 0 0 320px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  overflow:hidden;
}
.products-page .product-grid.large .product-photo img,
.products-page .product-grid .product-photo img {
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.products-page .product-details h2,
.products-page .product-details h3 {
  font-size:clamp(13px, 1.15vw, 17px);
  line-height:1.25;
  min-height:0;
  height:auto;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  letter-spacing:-.25px;
  margin:9px 0 10px;
}
@media (max-width:700px) {
  .products-page .product-grid.large .product-photo,
  .products-page .product-grid .product-photo { height:260px; flex-basis:260px; }
  .products-page .product-details h2,
  .products-page .product-details h3 { font-size:13px; letter-spacing:-.35px; }
}

/* Home page: all product names use a consistent two-line heading area */
.home-page .product-details h2,
.home-page .product-details h3 {
  white-space:normal;
  min-height:2.5em;
  height:2.5em;
  line-height:1.25;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  text-overflow:ellipsis;
}
/* Product page: product headings stay on one line */
.products-page .product-details h2,
.products-page .product-details h3 {
  white-space:nowrap;
  min-height:0;
  height:auto;
  line-height:1.25;
  overflow:visible;
  text-overflow:clip;
}
/* Small footer visit counter */
.visit-counter {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  margin:30px auto 0;
  padding:14px 18px;
  max-width:260px;
  border:1px solid rgba(40,100,60,.18);
  border-radius:12px;
  background:#f7faf6;
  color:#315b3d;
  font-size:13px;
  text-align:center;
}
.visit-counter-icon { font-size:17px; }
.visit-counter strong { font-variant-numeric:tabular-nums; }

/* Final spacing and heading refinements */
.home-page .product-details h2,
.home-page .product-details h3 {
  white-space:nowrap;
  font-size:clamp(12px, 1.05vw, 15px);
  letter-spacing:-.35px;
  overflow:visible;
  text-overflow:clip;
}
.home-page .product-details h2,
.home-page .product-details h3 { min-height:2.5em; }

/* Tighten the Why Sandgrouse section to remove unnecessary blank space below it */
.home-page .why-sandgrouse,
.home-page #why-sandgrouse,
.home-page .why-section,
.home-page section:has(h2) {
  padding-bottom:24px;
  margin-bottom:0;
}
.home-page .why-sandgrouse .container,
.home-page #why-sandgrouse .container,
.home-page .why-section .container {
  padding-bottom:0;
  margin-bottom:0;
}
.home-page .why-sandgrouse h2,
.home-page #why-sandgrouse h2,
.home-page .why-section h2 {
  margin-bottom:12px;
}

/* Every product title on products.html must remain on one line */
.products-page .product-details h2,
.products-page .product-details h3 {
  white-space:nowrap !important;
  font-size:clamp(12px, 1.05vw, 15px);
  letter-spacing:-.35px;
  min-height:0;
  height:auto;
  overflow:visible;
  text-overflow:clip;
}

/* All product headings stay on one line on Home and Products pages */
.home-page .product-details h2,
.home-page .product-details h3,
.products-page .product-details h2,
.products-page .product-details h3 {
  white-space: nowrap !important;
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1.25;
  font-size: clamp(11px, 1vw, 15px) !important;
  letter-spacing: -0.45px;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
}

/* Keep Plain T-Shirts on one line on both pages */
.home-page .product-card h2,
.home-page .product-card h3,
.products-page .product-card h2,
.products-page .product-card h3 {
  white-space: nowrap !important;
  font-size: clamp(10px, .95vw, 14px) !important;
  letter-spacing: -0.5px;
}
.home-page .product-card h2,
.home-page .product-card h3,
.products-page .product-card h2,
.products-page .product-card h3 {
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Refined Home page bottom: tidy visit counter and footer with clear hierarchy */
.home-page .visit-counter {
  max-width: 320px;
  margin: 26px auto 18px;
  padding: 12px 20px;
  border: 1px solid #dce8dd;
  border-radius: 999px;
  background: linear-gradient(135deg, #f7fbf6, #edf5ee);
  color: #315b3d;
  box-shadow: 0 5px 18px rgba(27, 74, 42, .06);
}
.home-page footer,
.home-page .site-footer {
  margin-top: 0;
  padding-top: 28px;
  padding-bottom: 26px;
  background: #163d2b;
  color: #f6faf6;
  border-top: 3px solid #75a879;
}
.home-page footer a,
.home-page .site-footer a {
  color: #e5f3e6;
}
.home-page footer a:hover,
.home-page .site-footer a:hover {
  color: #ffffff;
}
.home-page footer p,
.home-page .site-footer p {
  margin: 6px 0;
}
.home-page footer .container,
.home-page .site-footer .container {
  row-gap: 14px;
}
.home-page footer small,
.home-page .site-footer small {
  opacity: .82;
}

/* Home page footer: light black/charcoal, with visit count inside the footer area */
.home-page footer,
.home-page .site-footer {
  background: #292929 !important;
  color: #f4f4f4 !important;
  border-top: 0 !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}
.home-page footer a,
.home-page .site-footer a {
  color: #eeeeee !important;
}
.home-page .visit-counter {
  position: relative;
  z-index: 1;
  max-width: 300px;
  margin: 0 auto 18px !important;
  padding: 10px 18px !important;
  background: #383838 !important;
  color: #f4f4f4 !important;
  border: 1px solid #555555 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

/* Compact single-line home footer layout */
.home-page footer,
.home-page .site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 16px;
}
.home-page footer .visit-counter,
.home-page .site-footer .visit-counter {
  flex: 0 0 auto;
  max-width: none;
  width: auto;
  margin: 0 !important;
  padding: 7px 14px !important;
  white-space: nowrap;
  font-size: 11px !important;
  line-height: 1.2;
}
.home-page .visit-counter strong {
  font-size: 12px !important;
}
.home-page footer nav,
.home-page .site-footer nav {
  flex: 0 0 auto;
  white-space: nowrap;
}
@media (max-width: 760px) {
  .home-page footer,
  .home-page .site-footer {
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }
}

/* Attractive hero styling for Everyday products, thoughtfully delivered */
.home-page .hero,
.home-page .hero-section,
.home-page .home-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 12% 15%, rgba(115,173,116,.22), transparent 42%),
    radial-gradient(ellipse at 88% 80%, rgba(239,190,95,.20), transparent 40%),
    linear-gradient(125deg, #f4faf4 0%, #fffaf1 52%, #eef7ef 100%);
  border-radius: 0 0 28px 28px;
}
.home-page .hero h1,
.home-page .hero-section h1,
.home-page .home-hero h1 {
  max-width: 820px;
  font-size: clamp(34px, 4.2vw, 58px);
  line-height: 1.08;
  letter-spacing: -1.8px;
  color: #173e2b;
  text-wrap: balance;
}
.home-page .hero p,
.home-page .hero-section p,
.home-page .home-hero p {
  max-width: 650px;
  font-size: clamp(16px, 1.5vw, 19px);
  line-height: 1.7;
  color: #52665a;
}
.home-page .hero .button,
.home-page .hero-section .button,
.home-page .home-hero .button,
.home-page .hero a.cta,
.home-page .hero-section a.cta,
.home-page .home-hero a.cta {
  box-shadow: 0 8px 20px rgba(31,91,51,.18);
  transition: transform .2s ease, box-shadow .2s ease;
}
.home-page .hero .button:hover,
.home-page .hero-section .button:hover,
.home-page .home-hero .button:hover,
.home-page .hero a.cta:hover,
.home-page .hero-section a.cta:hover,
.home-page .home-hero a.cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(31,91,51,.22);
}
/* Center the visit counter inside the dark footer */
.home-page footer, .home-page .site-footer { position: relative; }
.home-page footer .visit-counter,
.home-page .site-footer .visit-counter {
  position: absolute;
  left: 50%;
  top: 12px;
  transform: translateX(-50%);
  margin: 0 !important;
  z-index: 2;
  width: max-content;
  max-width: calc(100% - 24px);
  font-size: 10px !important;
  padding: 5px 12px !important;
}
.home-page footer, .home-page .site-footer { padding-top: 48px !important; }
@media (max-width: 760px) {
  .home-page footer .visit-counter,
  .home-page .site-footer .visit-counter {
    position: static;
    transform: none;
    margin: 0 auto 12px !important;
  }
  .home-page footer, .home-page .site-footer { padding-top: 20px !important; }
}
