:root{
  --bg:#f5f7fb;
  --card:#ffffff;
  --text:#16304d;
  --muted:#5e6f82;
  --blue:#2f6bff;
  --blue2:#61b4ff;
  --border:#d9e3f0;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:linear-gradient(180deg,#edf3ff 0%,#f8fbff 45%,#f5f7fb 100%)}
.container{width:min(1100px,92%);margin:0 auto}
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:20px}
.brand img{height:44px;width:auto;display:block}
nav{display:flex;gap:22px;flex-wrap:wrap}
nav a{color:var(--text);text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.02em}
nav a:hover{color:var(--blue)}
.hero{padding:72px 0 44px}.hero-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 16px}.hero p{font-size:18px;line-height:1.65;color:var(--muted);max-width:700px}
.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;padding:14px 22px;border-radius:999px;text-decoration:none;font-weight:700}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:white}.btn-secondary{border:1px solid var(--border);background:white;color:var(--text)}
.hero-art{background:radial-gradient(circle at top left,#89d5ff 0,#4f95ff 35%,#203354 100%);border-radius:28px;padding:30px;box-shadow:0 24px 60px rgba(32,51,84,.2)}.hero-art img{width:100%;height:auto;display:block}
.section{padding:40px 0}.card,.price-card{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:28px;box-shadow:0 8px 30px rgba(19,39,67,.05)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}
h2{font-size:34px;margin:0 0 10px}h3{font-size:22px;margin:0 0 14px}.lead{color:var(--muted);line-height:1.7}
.price-card h4{margin:0 0 12px;font-size:18px}.price{font-size:30px;font-weight:800;margin-bottom:10px;color:var(--blue)}.list{padding-left:18px;color:var(--muted);line-height:1.7}
.badge{display:inline-block;padding:8px 12px;border-radius:999px;background:#e9f2ff;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px}.info-line{margin:10px 0;color:var(--muted)}
label{display:block;font-weight:700;margin:0 0 8px}input,textarea{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:14px;font:inherit;background:#fff}textarea{min-height:150px;resize:vertical}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}footer{margin-top:36px;padding:28px 0;color:var(--muted);border-top:1px solid var(--border)}.small{font-size:14px;color:var(--muted)}.icon-row{display:flex;align-items:flex-start;gap:16px}.icon-row img{width:42px;height:42px}
@media (max-width: 900px){.hero-wrap,.grid-2,.contact-grid,.price-grid,.form-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}


/* Products page layout upgrade only */
.products-page .products-wrap{padding:30px}
.products-page .products-intro{max-width:920px;margin-bottom:24px}
.products-page .shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}
.products-page .shop-card{
  background:#fff;
  border:1px solid #d9e3f0;
  border-radius:20px;
  padding:22px;
  box-shadow:0 8px 24px rgba(19,39,67,.05)
}
.products-page .shop-card .product-tag{
  display:inline-block;
  margin-bottom:10px;
  padding:7px 11px;
  border-radius:999px;
  background:#e9f2ff;
  color:#2f6bff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase
}
.products-page .shopify-buy__product{max-width:none !important;margin:0 !important}
.products-page .shopify-buy__layout-vertical{display:block !important}
.products-page .shopify-buy__product__title{display:block !important;margin:0 0 8px !important;font-size:20px !important;font-weight:700 !important;color:#16304d !important}
.products-page .shopify-buy__product__price{display:block !important;margin:0 0 10px !important;color:#2f6bff !important;font-weight:700 !important}
.products-page .shopify-buy__product-img-wrapper{
  display:block !important;
  max-width:170px;
  margin:0 auto 14px !important;
}
.products-page .shopify-buy__product-img-wrapper img{
  width:170px !important;
  height:170px !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 auto;
  border-radius:12px;
  background:#fff;
}
.products-page .shopify-buy__product__description{
  display:block !important;
  margin:0 0 14px !important;
  color:#5e6f82 !important;
  line-height:1.6 !important;
  font-size:15px !important;
}
.products-page .shopify-buy__product__description p{margin:0 0 10px !important}
.products-page .shopify-buy__quantity-container{display:none !important}
.products-page .shopify-buy__btn{
  border-radius:999px !important;
  padding:14px 22px !important;
  font-weight:700 !important;
  background:#0a2540 !important;
  color:#fff !important;
  box-shadow:none !important
}
.products-page .shopify-buy__btn:hover{opacity:.95}
.products-page .shopify-buy__btn-wrapper{margin-top:8px !important}
.products-page .service-note{
  margin-top:24px;
  background:#fff;
  border:1px solid #d9e3f0;
  border-radius:20px;
  padding:22px;
  box-shadow:0 8px 24px rgba(19,39,67,.05)
}
.products-page .service-note ul{padding-left:18px;color:#5e6f82;line-height:1.7}
@media (max-width:900px){
  .products-page .shop-grid{grid-template-columns:1fr}
}


/* hide unwanted shopify toggle arrow */
.products-page .shopify-buy__cart-toggle{display:none !important;}


/* FIX giant dropdown arrow issue */
.products-page select {
  appearance: auto !important;
  -webkit-appearance: menulist !important;
  -moz-appearance: menulist !important;
  background-image: none !important;
}

/* also prevent any svg injection weirdness */
.products-page svg {
  max-width: 100% !important;
  height: auto !important;
}

.products-page .shopify-buy__select-icon, .products-page svg{display:none !important;}


/* Final polish pass */
:root{
  --page-max: 1120px;
}
body{
  line-height:1.5;
}
.container{
  width:min(var(--page-max), 92%);
}
header{
  box-shadow:0 1px 0 rgba(0,0,0,.04);
}
.topbar{
  min-height:74px;
}
.topbar nav a{
  transition:color .18s ease, opacity .18s ease;
}
.topbar nav a:hover{
  opacity:.9;
}
main{
  padding-bottom:56px;
}
h1,h2,h3,h4{
  letter-spacing:-.01em;
}
footer{
  margin-top:20px;
}

/* General card polish */
.card,
.price-card,
.shop-card,
.service-note{
  background:#fff;
  border:1px solid #dde6f2;
  box-shadow:0 10px 28px rgba(19,39,67,.045);
}
.price-card{
  padding:20px 20px 18px;
}
.price-card h4{
  font-size:17px;
  margin-bottom:8px;
}
.price{
  font-size:28px;
  line-height:1;
}
.small{
  font-size:13px;
}

/* Buttons */
.btn,
.products-page .shopify-buy__btn{
  min-height:46px;
}
.products-page .shopify-buy__btn{
  letter-spacing:.01em;
}

/* Nav consistency */
nav a{
  font-size:14px;
}

/* Products page tighten-up */
.products-page .products-wrap{
  padding-top:26px;
  padding-bottom:38px;
}
.products-page .products-intro{
  max-width:880px;
  margin-bottom:18px;
}
.products-page .products-intro h2{
  margin:0 0 8px;
  font-size:36px;
}
.products-page .products-intro p{
  margin:0;
  color:#5e6f82;
  line-height:1.6;
}
.products-page .shop-grid{
  gap:18px;
  margin-top:18px;
  align-items:start;
}
.products-page .shop-card{
  padding:18px 18px 16px;
  border-radius:18px;
}
.products-page .shop-card .product-tag{
  margin-bottom:8px;
  padding:6px 10px;
}
.products-page .shopify-buy__product{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
}
.products-page .shopify-buy__product__title{
  font-size:18px !important;
  line-height:1.25 !important;
  margin:0 0 6px !important;
}
.products-page .shopify-buy__product-img-wrapper{
  max-width:140px;
  margin:4px auto 10px !important;
}
.products-page .shopify-buy__product-img-wrapper img{
  width:140px !important;
  height:140px !important;
  border-radius:10px;
}
.products-page .shopify-buy__product__price{
  font-size:15px !important;
  margin:0 0 8px !important;
}
.products-page .shopify-buy__product__description{
  font-size:14px !important;
  line-height:1.5 !important;
  margin:0 0 10px !important;
}
.products-page .shopify-buy__product__description p{
  margin:0 0 8px !important;
}
.products-page .shopify-buy__option-select-wrapper{
  margin:0 0 10px !important;
}
.products-page .shopify-buy__option-select__select,
.products-page select{
  max-width:100%;
  min-height:38px;
  border:1px solid #cfd8e5 !important;
  border-radius:10px !important;
  padding:8px 10px !important;
  font-size:14px !important;
  background:#fff !important;
}
.products-page .shopify-buy__btn-wrapper{
  margin-top:4px !important;
}
.products-page .shopify-buy__btn{
  width:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:12px 18px !important;
  font-size:14px !important;
}
.products-page .service-note{
  margin-top:18px;
  padding:18px 20px;
  border-radius:18px;
}
.products-page .service-note h3{
  margin:0 0 10px;
  font-size:22px;
}
.products-page .service-note ul{
  margin:0;
}
.products-page .service-note li{
  margin-bottom:4px;
}

@media (max-width: 900px){
  .topbar{
    min-height:auto;
  }
  .topbar nav{
    gap:14px;
  }
  .products-page .products-wrap{
    padding-top:18px;
  }
  .products-page .products-intro h2{
    font-size:30px;
  }
  .products-page .shop-card{
    padding:16px 16px 14px;
  }
  .products-page .shopify-buy__product-img-wrapper{
    max-width:124px;
  }
  .products-page .shopify-buy__product-img-wrapper img{
    width:124px !important;
    height:124px !important;
  }
}

@media (max-width: 640px){
  .topbar nav{
    row-gap:10px;
  }
  .products-page .shop-grid{
    gap:14px;
  }
  .products-page .products-intro h2{
    font-size:28px;
  }
}


/* Requested final edits */
.brand-combo{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}
.brand-combo .brand-circle{
  height:36px;
  width:36px;
  object-fit:contain;
  display:block;
}
.brand-combo .brand-wordmark{
  height:40px;
  width:auto;
  display:block;
}
footer{
  text-align:right;
}
.products-page footer p,
.products-page footer .container{
  text-align:right !important;
  width:min(var(--page-max), 92%);
  margin:0 auto;
}
.hero-art{
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
}


/* Header + hero sizing updates */
.topbar{
  min-height:96px !important;
  padding-top:20px !important;
  padding-bottom:20px !important;
}
.topbar nav{
  gap:28px !important;
}
.topbar nav a,
nav a{
  font-size:16px !important;
  font-weight:700 !important;
}
.brand-combo{
  display:flex;
  align-items:center;
  gap:14px !important;
  text-decoration:none;
}
.brand-combo .brand-circle{
  height:46px !important;
  width:46px !important;
  object-fit:contain;
  display:block;
}
.brand-combo .brand-wordmark{
  height:52px !important;
  width:auto;
  display:block;
}

/* Homepage hero polish */
.hero .badge,
.badge{
  font-size:13px;
}
.hero h1,
.hero h2{
  font-size:clamp(42px, 6vw, 68px) !important;
  line-height:1.05 !important;
}
.hero p{
  font-size:19px !important;
  line-height:1.7 !important;
}
@media (max-width:900px){
  .topbar{
    min-height:auto !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
  .topbar nav{
    gap:16px !important;
  }
  .brand-combo .brand-circle{
    height:40px !important;
    width:40px !important;
  }
  .brand-combo .brand-wordmark{
    height:44px !important;
  }
}

/* Larger logo + wordmark */
.brand-combo .brand-circle{
  height:56px !important;
  width:56px !important;
}
.brand-combo .brand-wordmark{
  height:64px !important;
}

/* precise headline enlargement */
.hero-subheadline{
  font-size:48px !important;
  font-weight:700;
  line-height:1.2;
  display:block;
}
