:root{--navy:#173d56;--ink:#263747;--muted:#576674;--cream:#f8f4ec}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif}
    h1,h2,h3,.brand{font-family:'Fraunces',serif}
    .app-shell{width:100%;overflow:hidden}
    .page-wrap{width:100%;max-width:1320px;margin-inline:auto;padding-inline:clamp(22px,5vw,72px)}
    .eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:700}
    .hero-photo,.hero-photo img{min-height:590px;height:100%}
    .hero-photo img{width:100%;object-fit:cover;display:block}
    .primary-action{transition:transform .2s ease,filter .2s ease}
    .primary-action:hover{transform:translateY(-2px);filter:brightness(1.12)}
    .product-card{transition:transform .25s ease,box-shadow .25s ease}
    .product-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #173d5614}
    .privacy-collapsed {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        overflow: hidden;
        }

        .privacy-expanded {
        display: block;
        }
    .variant-display-img {
      height: 170px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      position: relative;
      background: #e8eef0;
    }

    .variant-display-img img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 70%;
      position: absolute;
      inset: 0;
      z-index: 1;
    }

    .variant-display-img:has(img)::before,
    .variant-display-img:has(img)::after {
      display: none;
    }
    .variant-display{height:170px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;background:#e8eef0}
    .variant-display::before{content:"";width:122px;height:112px;border-radius:18px 18px 27px 27px;background:var(--variant);box-shadow:inset 0 -14px 0 #0000000d,0 16px 28px #173d562b;transform:rotate(-7deg)}
    .variant-display::after{content:"";position:absolute;width:58px;height:45px;top:22px;border:9px solid var(--variant);border-bottom:0;border-radius:45px 45px 0 0;transform:rotate(-7deg)}
    .swatch{width:24px;height:24px;border-radius:50%;background:var(--variant);border:2px solid #173d5626;flex:none}
    .field{width:100%;padding:14px 16px;border:1px solid #b7c5c9;border-radius:12px;background:#fff;outline:none;color:var(--ink)}
    .field:focus{border-color:var(--navy);box-shadow:0 0 0 3px #173d5626}
    a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b46c79;outline-offset:3px}
    .reveal{animation:rise .7s both}.reveal-later{animation-delay:.16s}
    @keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
    @media(max-width:767px){.hero-photo,.hero-photo img{min-height:340px;height:360px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}.product-card,.primary-action{transition:none}}

