/* PC Resale shared stylesheet. Page-specific rules are scoped to each page body class. */

/* ===== index.php ===== */
body.home-page{
      --green: #4ea72e;
      --green-dark: #2f7d24;
      --ink: #17212b;
      --muted: #63707c;
      --bg: #f6f8f5;
      --card: #ffffff;
      --line: #dde5dc;
    }
    body.home-page *{ box-sizing: border-box; }
    body.home-page html{ scroll-behavior: smooth; }
    body.home-page{
      margin: 0;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--ink);
      background: var(--bg);
      line-height: 1.6;
    }
    body.home-page a{ color: inherit; }
    body.home-page .wrap{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
    body.home-page header{
      position: sticky;
      top: 0;
      z-index: 10;
      background: rgba(255,255,255,.92);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid rgba(221,229,220,.9);
    }
    body.home-page nav{ display: flex; align-items: center; justify-content: space-between; min-height: 78px; gap: 24px; }
    body.home-page .brand{ display: flex; align-items: center; gap: 12px; text-decoration: none; font-weight: 800; }
    .brand img{ height: 100px; object-fit: contain; border-radius: 10px; }
    body.home-page .nav-links{ display: flex; align-items: center; gap: 24px; }
    body.home-page .nav-links a{ text-decoration: none; font-weight: 700; font-size: .96rem; }
    body.home-page .btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 0 22px;
      border-radius: 12px;
      text-decoration: none;
      font-weight: 800;
      transition: .2s ease;
      border: 1px solid transparent;
    }
    body.home-page .btn:hover{ transform: translateY(-1px); }
    body.home-page .btn-primary{ background: var(--green); color: #fff; box-shadow: 0 10px 28px rgba(78,167,46,.22); }
    body.home-page .btn-primary:hover{ background: var(--green-dark); }
    body.home-page .btn-secondary{ background: #fff; border-color: var(--line); }

    body.home-page .hero{
      padding: 86px 0 72px;
      background:
        radial-gradient(circle at 80% 15%, rgba(78,167,46,.15), transparent 30%),
        linear-gradient(180deg, #ffffff 0%, #f6f8f5 100%);
      overflow: hidden;
    }
    body.home-page .hero-grid{ display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 64px; }
    body.home-page .eyebrow{
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #eaf5e5;
      color: var(--green-dark);
      border: 1px solid #cee5c5;
      border-radius: 999px;
      padding: 7px 12px;
      font-weight: 800;
      font-size: .84rem;
      letter-spacing: .02em;
    }
    body.home-page h1{ font-size: clamp(2.8rem, 6vw, 5.4rem); line-height: .98; margin: 18px 0 22px; letter-spacing: -.05em; }
    body.home-page h1 span{ color: var(--green); }
    body.home-page .hero p{ font-size: 1.18rem; color: var(--muted); max-width: 640px; margin: 0 0 30px; }
    body.home-page .cta-row{ display: flex; flex-wrap: wrap; gap: 12px; }
    body.home-page .trust-row{ display: flex; flex-wrap: wrap; gap: 18px; margin-top: 28px; color: #46515a; font-weight: 700; font-size: .94rem; }
    body.home-page .trust-row span::before{ content: "✓"; color: var(--green); margin-right: 7px; }
    body.home-page .hero-card{
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 28px;
      padding: 34px;
      box-shadow: 0 26px 70px rgba(31,50,36,.12);
      transform: rotate(1.5deg);
    }
    body.home-page .hero-card img{ display: block; width: 100%; height: auto; border-radius: 18px; }

    body.home-page .section{ padding: 84px 0; }
    body.home-page .section h2{ font-size: clamp(2rem, 4vw, 3rem); margin: 0 0 12px; letter-spacing: -.03em; }
    body.home-page .section-intro{ color: var(--muted); max-width: 720px; margin: 0 0 34px; }
    body.home-page .cards{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
    body.home-page .card{ background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 28px; }
    body.home-page .icon{
      width: 46px; height: 46px; display: grid; place-items: center; border-radius: 12px;
      background: #edf7e9; color: var(--green-dark); font-size: 1.35rem; font-weight: 900;
    }
    body.home-page .card h3{ margin: 18px 0 8px; font-size: 1.2rem; }
    body.home-page .card p{ margin: 0; color: var(--muted); }

    body.home-page .feature-band{ background: #17212b; color: #fff; }
    body.home-page .feature-band .section-intro{ color: #c8d0d7; }
    body.home-page .steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    body.home-page .step{ border: 1px solid #35414b; border-radius: 18px; padding: 28px; background: #1d2934; }
    body.home-page .step b{ color: #8bcf6e; font-size: .85rem; letter-spacing: .08em; }
    body.home-page .step h3{ margin: 8px 0; }
    body.home-page .step p{ margin: 0; color: #c8d0d7; }

    body.home-page .cta-panel{
      background: linear-gradient(135deg, #edf7e9 0%, #ffffff 75%);
      border: 1px solid #cfe6c5;
      border-radius: 26px;
      padding: 44px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 30px;
    }
    body.home-page .cta-panel h2{ margin-bottom: 8px; }
    body.home-page .cta-panel p{ color: var(--muted); margin: 0; }

    body.home-page footer{ border-top: 1px solid var(--line); background: #fff; padding: 28px 0; color: #69737b; }
    body.home-page .footer-row{ display: flex; align-items: center; justify-content: space-between; gap: 18px; }
    body.home-page .mini-brand{ display: flex; align-items: center; gap: 10px; font-weight: 800; color: var(--ink); }
    .mini-brand img{height: 50px; object-fit: contain; }

    @media (max-width: 860px) {
      body.home-page .nav-links a:not(.btn){ display: none; }
      body.home-page .hero{ padding-top: 52px; }
      body.home-page .hero-grid{ grid-template-columns: 1fr; gap: 36px; }
      body.home-page .hero-card{ transform: none; max-width: 600px; }
      body.home-page .cards, body.home-page .steps{ grid-template-columns: 1fr; }
      body.home-page .cta-panel{ align-items: flex-start; flex-direction: column; }
    }
    @media (max-width: 520px) {
      body.home-page .wrap{ width: min(100% - 26px, 1180px); }
      body.home-page nav{ min-height: 68px; }
      body.home-page .brand span{ display: none; }
      body.home-page .hero{ padding-bottom: 54px; }
      body.home-page .section{ padding: 64px 0; }
      body.home-page .hero-card{ padding: 20px; border-radius: 20px; }
      body.home-page .cta-panel{ padding: 28px; }
      body.home-page .footer-row{ align-items: flex-start; flex-direction: column; }
    }

/* ===== shop.php ===== */
body.shop-page{--green:#4ea72e;--green-dark:#2f7d24;--ink:#17212b;--muted:#63707c;--bg:#f6f8f5;--card:#fff;--line:#dde5dc;--shadow:0 16px 42px rgba(31,50,36,.10)}
    body.shop-page *{box-sizing:border-box}body.shop-page html{scroll-behavior:smooth}body.shop-page{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}body.shop-page a{color:inherit}body.shop-page .wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
    body.shop-page header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}body.shop-page nav{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:20px}body.shop-page .brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:850}body.shop-page .nav-actions{display:flex;align-items:center;gap:18px}body.shop-page .nav-actions a{text-decoration:none;font-weight:750}body.shop-page .nav-link{text-decoration:none;font-weight:750;color:#44515b}
    body.shop-page .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:12px;text-decoration:none;font-weight:850;border:1px solid transparent;cursor:pointer;font:inherit}body.shop-page .btn-primary{background:var(--green);color:#fff;box-shadow:0 8px 24px rgba(78,167,46,.20)}body.shop-page .btn-primary:hover{background:var(--green-dark)}body.shop-page .btn-secondary{background:#fff;border-color:var(--line)}
    body.shop-page .hero{padding:60px 0 38px;background:radial-gradient(circle at 80% 10%,rgba(78,167,46,.15),transparent 34%),linear-gradient(#fff,#f6f8f5)}body.shop-page .eyebrow{display:inline-block;padding:7px 12px;border-radius:999px;background:#eaf5e5;color:var(--green-dark);font-weight:850;font-size:.84rem;border:1px solid #cee5c5}body.shop-page .hero h1{font-size:clamp(2.5rem,6vw,4.7rem);line-height:1;margin:16px 0 16px;letter-spacing:-.045em}body.shop-page .hero h1 span{color:var(--green)}body.shop-page .hero p{max-width:760px;color:var(--muted);font-size:1.1rem;margin:0}body.shop-page .trust{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px;color:#48545e;font-weight:750;font-size:.93rem}body.shop-page .trust span:before{content:"✓";color:var(--green);margin-right:7px}
    body.shop-page .toolbar{padding:24px 0;position:sticky;top:79px;z-index:8;background:rgba(246,248,245,.93);backdrop-filter:blur(10px);border-bottom:1px solid rgba(221,229,220,.8)}body.shop-page .toolbar-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}body.shop-page .search{width:100%;height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 16px;font:inherit;outline:none}body.shop-page .search:focus{border-color:#93c981;box-shadow:0 0 0 3px rgba(78,167,46,.12)}body.shop-page select{height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 34px 0 14px;font:inherit;color:var(--ink)}
    body.shop-page .inventory{padding:32px 0 76px}body.shop-page .inventory-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}body.shop-page .inventory-head h2{margin:0;font-size:1.65rem}body.shop-page .inventory-meta{color:var(--muted);font-size:.92rem}body.shop-page .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}body.shop-page .product{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 18px rgba(31,50,36,.04);transition:.2s ease}body.shop-page .product:hover{transform:translateY(-3px);box-shadow:var(--shadow)}body.shop-page .image-wrap{aspect-ratio:1/1;background:#fff;display:grid;place-items:center;border-bottom:1px solid #edf0ec;overflow:hidden}body.shop-page .image-wrap img{width:100%;height:100%;object-fit:contain}body.shop-page .placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#f7faf6,#eef4ec);color:#88948d;font-weight:800;text-align:center;padding:20px}body.shop-page .product-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1}body.shop-page .product h3{font-size:1rem;line-height:1.38;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}body.shop-page .price{font-weight:900;font-size:1.22rem;color:var(--ink);margin-top:auto}body.shop-page .ebay-note{font-size:.78rem;color:var(--muted)}body.shop-page .product .btn{width:100%;margin-top:2px}body.shop-page .product .btn:after{content:" ↗"}
    body.shop-page .status{grid-column:1/-1;background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px;text-align:center;color:var(--muted)}body.shop-page .status strong{display:block;color:var(--ink);font-size:1.1rem;margin-bottom:6px}body.shop-page .loader{width:32px;height:32px;border:3px solid #dce6d9;border-top-color:var(--green);border-radius:50%;animation:spin .75s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(360deg)}}
    body.shop-page .notice{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;color:var(--muted);font-size:.88rem}body.shop-page .notice b{color:var(--ink)}body.shop-page footer{border-top:1px solid var(--line);background:#fff;padding:28px 0;color:#69737b}body.shop-page .footer-row{display:flex;align-items:center;justify-content:space-between;gap:18px}body.shop-page .mini-brand{display:flex;align-items:center;gap:10px;font-weight:850;color:var(--ink)}body.shop-page 
    @media(max-width:980px){body.shop-page .grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){body.shop-page .nav-link{display:none}body.shop-page .grid{grid-template-columns:repeat(2,1fr)}body.shop-page .toolbar{top:69px}body.shop-page .toolbar-row{grid-template-columns:1fr 1fr}body.shop-page .toolbar-row .search{grid-column:1/-1}body.shop-page nav{min-height:68px}body.shop-page .hero{padding-top:42px}}@media(max-width:520px){body.shop-page .wrap{width:min(100% - 26px,1180px)}body.shop-page .brand span{display:none}body.shop-page .grid{grid-template-columns:1fr}body.shop-page .toolbar-row{grid-template-columns:1fr}body.shop-page .toolbar-row .search{grid-column:auto}body.shop-page .inventory-head{align-items:flex-start;flex-direction:column}body.shop-page .hero h1{font-size:2.7rem}body.shop-page .footer-row{flex-direction:column;align-items:flex-start}}

/* ===== contact.php ===== */
body.contact-page{--green:#4ea72e;--green-dark:#2f7d24;--ink:#17212b;--muted:#63707c;--bg:#f6f8f5;--card:#fff;--line:#dde5dc;--soft:#edf7e9}
    body.contact-page *{box-sizing:border-box}body.contact-page{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}body.contact-page a{color:inherit}body.contact-page .wrap{width:min(1120px,calc(100% - 40px));margin:auto}
    body.contact-page header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}body.contact-page nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}body.contact-page .brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:850}body.contact-page  .nav-actions{display:flex;align-items:center;gap:18px}body.contact-page .nav-actions a{text-decoration:none;font-weight:750}body.contact-page .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:12px;border:1px solid transparent;text-decoration:none;font-weight:850;cursor:pointer;font:inherit}body.contact-page .btn-primary{background:var(--green);color:#fff;box-shadow:0 9px 26px rgba(78,167,46,.2)}body.contact-page .btn-primary:hover{background:var(--green-dark)}
    body.contact-page .hero{padding:64px 0 40px;background:radial-gradient(circle at 80% 12%,rgba(78,167,46,.15),transparent 34%),linear-gradient(#fff,#f6f8f5)}body.contact-page .eyebrow{display:inline-block;padding:7px 12px;border-radius:999px;background:#eaf5e5;color:var(--green-dark);border:1px solid #cee5c5;font-weight:850;font-size:.84rem}body.contact-page .hero h1{font-size:clamp(2.6rem,6vw,4.9rem);letter-spacing:-.045em;line-height:1;margin:16px 0}body.contact-page .hero h1 span{color:var(--green)}body.contact-page .hero p{color:var(--muted);font-size:1.08rem;max-width:720px;margin:0}
    body.contact-page .content{padding:34px 0 80px}body.contact-page .layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.7fr);gap:26px;align-items:start}body.contact-page .panel{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 45px rgba(31,50,36,.07)}body.contact-page .form-panel{padding:30px}body.contact-page .form-panel h2{margin:0 0 5px;font-size:1.55rem}body.contact-page .form-panel>p{margin:0 0 24px;color:var(--muted)}
    body.contact-page .grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}body.contact-page .field{display:flex;flex-direction:column;gap:7px}body.contact-page .full{grid-column:1/-1}body.contact-page label{font-size:.9rem;font-weight:800}body.contact-page .optional{font-weight:600;color:var(--muted);font-size:.8rem}body.contact-page .req{color:var(--green-dark)}body.contact-page input, body.contact-page select, body.contact-page textarea{width:100%;border:1px solid #d6ded5;background:#fff;color:var(--ink);border-radius:11px;padding:12px 13px;font:inherit;outline:none}body.contact-page input, body.contact-page select{height:48px}body.contact-page textarea{min-height:145px;resize:vertical}body.contact-page input:focus, body.contact-page select:focus, body.contact-page textarea:focus{border-color:#83bf6d;box-shadow:0 0 0 3px rgba(78,167,46,.11)}body.contact-page .form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}body.contact-page .privacy{font-size:.82rem;color:var(--muted);max-width:500px}body.contact-page .hidden-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
    body.contact-page .side{padding:26px}body.contact-page .side h3{margin:0 0 10px}body.contact-page .side p{color:var(--muted);margin:0 0 18px}body.contact-page .checklist{display:grid;gap:14px;margin:22px 0}body.contact-page .check{display:flex;gap:11px;align-items:flex-start}body.contact-page .check i{font-style:normal;width:27px;height:27px;flex:0 0 27px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--green-dark);font-weight:900}body.contact-page .check b{display:block;font-size:.94rem}body.contact-page .check span{display:block;color:var(--muted);font-size:.85rem;margin-top:2px}body.contact-page .side-cta{border-top:1px solid var(--line);padding-top:20px}body.contact-page .side-cta a{color:var(--green-dark);font-weight:850;text-decoration:none}
    body.contact-page .alert{padding:15px 17px;border-radius:12px;margin-bottom:20px;font-weight:700}body.contact-page .success{background:#e9f6e4;border:1px solid #bfe0b2;color:#25611c}body.contact-page .error{background:#fff0ef;border:1px solid #efc4c0;color:#8e3027}body.contact-page .warning{background:#fff8df;border:1px solid #eadb9a;color:#6f5711}body.contact-page .error ul{margin:0;padding-left:20px}body.contact-page .error li+li{margin-top:4px}
    body.contact-page footer{border-top:1px solid var(--line);background:#fff;padding:28px 0;color:#69737b}body.contact-page .footer-row{display:flex;align-items:center;justify-content:space-between;gap:18px}body.contact-page .mini-brand{display:flex;align-items:center;gap:10px;font-weight:850;color:var(--ink)}body.contact-page 
    @media(max-width:800px){body.contact-page .layout{grid-template-columns:1fr}body.contact-page .nav-actions>a:not(.btn){display:none}}@media(max-width:590px){body.contact-page .wrap{width:min(100% - 26px,1120px)}body.contact-page .grid{grid-template-columns:1fr}body.contact-page .full{grid-column:auto}body.contact-page .form-panel{padding:22px}body.contact-page .form-footer{align-items:stretch;flex-direction:column}body.contact-page .form-footer .btn{width:100%}body.contact-page .brand span{display:none}body.contact-page .hero{padding-top:44px}body.contact-page .footer-row{align-items:flex-start;flex-direction:column}}

/* ===== Shared responsive navigation & mobile improvements ===== */
.site-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  padding:10px;
  border:1px solid #dde5dc;
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  flex:0 0 auto;
}
.site-menu-toggle span{
  display:block;
  width:22px;
  height:2px;
  border-radius:999px;
  background:#17212b;
  transition:transform .2s ease, opacity .2s ease;
}
.site-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.site-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.site-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:760px){
  body.home-page .wrap,
  body.shop-page .wrap,
  body.contact-page .wrap{width:min(100% - 28px,1180px)}

  body.home-page nav,
  body.shop-page nav,
  body.contact-page nav,
  .site-nav{
    position:relative;
    min-height:68px;
    gap:14px;
  }

  .brand img,
  body.home-page .brand img,
  body.shop-page .brand img,
  body.contact-page .brand img{
    height:62px;
    max-width:min(220px,60vw);
    width:auto;
  }

  .site-menu-toggle{display:flex}

  body.home-page .nav-actions,
  body.home-page .nav-links,
  body.shop-page .nav-actions,
  body.shop-page .nav-links,
  body.contact-page .nav-actions,
  body.contact-page .nav-links{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 1px);
    z-index:100;
    background:#fff;
    border:1px solid #dde5dc;
    border-radius:0 0 16px 16px;
    box-shadow:0 18px 38px rgba(23,33,43,.14);
    padding:12px;
    gap:6px;
    flex-direction:column;
    align-items:stretch;
  }

  body.home-page .nav-actions.is-open,
  body.home-page .nav-links.is-open,
  body.shop-page .nav-actions.is-open,
  body.shop-page .nav-links.is-open,
  body.contact-page .nav-actions.is-open,
  body.contact-page .nav-links.is-open{display:flex}

  body.home-page .nav-links a:not(.btn),
  body.shop-page .nav-actions>a:not(.btn),
  body.shop-page .nav-link,
  body.contact-page .nav-actions>a:not(.btn){display:flex}

  #site-menu a{
    min-height:48px;
    width:100%;
    padding:11px 14px;
    border-radius:10px;
    align-items:center;
    text-decoration:none;
  }
  #site-menu a:not(.btn):hover{background:#f2f6f0}
  #site-menu .btn{min-height:48px}

  body.home-page .hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  body.home-page .hero-card{max-width:100%}
  body.home-page .hero-card img{max-width:100%}
  body.home-page .cta-row .btn{flex:1 1 210px}

  body.shop-page .toolbar{position:static}
  body.shop-page .toolbar-row{grid-template-columns:1fr}
  body.shop-page .toolbar-row .search{grid-column:auto}
  body.shop-page .grid{grid-template-columns:repeat(2,minmax(0,1fr))}

  body.contact-page .layout{grid-template-columns:minmax(0,1fr)}
  body.contact-page .grid{grid-template-columns:1fr}
  body.contact-page .full{grid-column:auto}
}

@media (max-width:520px){
  body.home-page .wrap,
  body.shop-page .wrap,
  body.contact-page .wrap{width:min(100% - 22px,1180px)}

  .brand img,
  body.home-page .brand img,
  body.shop-page .brand img,
  body.contact-page .brand img{height:54px;max-width:58vw}

  body.home-page h1,
  body.shop-page .hero h1,
  body.contact-page .hero h1{overflow-wrap:anywhere}

  body.home-page .hero{padding:40px 0 48px}
  body.home-page .hero p,
  body.shop-page .hero p,
  body.contact-page .hero p{font-size:1rem}
  body.home-page .hero-card{padding:14px}
  body.home-page .cta-row{flex-direction:column}
  body.home-page .cta-row .btn{width:100%;flex:auto}
  body.home-page .trust-row{gap:10px 16px}
  body.home-page .cta-panel{padding:24px}

  body.shop-page .grid{grid-template-columns:1fr}
  body.shop-page .product h3{-webkit-line-clamp:4}
  body.shop-page .hero{padding:38px 0 30px}

  body.contact-page .form-panel,
  body.contact-page .side{padding:20px}
  body.contact-page .hero{padding:38px 0 30px}
  body.contact-page .form-footer{flex-direction:column;align-items:stretch}
  body.contact-page .form-footer .btn{width:100%}

  input, select, textarea{font-size:16px}
}
