
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Cormorant+Garamond:wght@600;700&display=swap');
:root{--ink:#161616;--sub:#757575;--line:#e8e8e8;--bg:#fff;--soft:#f6f6f4;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Manrope,Arial,sans-serif;margin:0;color:var(--ink);background:var(--bg);font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #111;outline-offset:3px}.promo{text-align:center;background:#161616;color:#fff;font-size:10px;font-weight:700;letter-spacing:.07em;padding:9px}.header{position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);z-index:20}.header-in{max-width:1300px;padding:17px 28px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-family:"Cormorant Garamond",serif;font-weight:700;font-size:34px;letter-spacing:-.03em;line-height:1;text-transform:uppercase}.desktopnav{display:flex;gap:28px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.desktopnav a:hover,.textlink:hover{color:#777}.actions{display:flex;align-items:center;gap:12px}.sociallink{display:grid;place-items:center;width:35px;height:35px;border:1px solid #dcdcdc;border-radius:50%;transition:background .2s,border-color .2s}.sociallink:hover{background:#f5f5f5;border-color:#bdbdbd}.sociallink svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.socials{display:flex;gap:10px;align-items:center;margin-top:16px;flex-wrap:wrap}.sociallabel{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#777;font-weight:800;margin-bottom:8px}.about-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.iconbtn{display:flex;align-items:center;gap:4px;background:none;border:0;padding:0;color:var(--ink);font-size:13px}.iconbtn svg{height:21px;width:21px;stroke:currentColor;stroke-width:1.6;fill:none}.count{font-size:10px;border:1px solid #bbb;border-radius:50%;height:17px;min-width:17px;display:grid;place-items:center}.wrap{max-width:1300px;padding:0 28px;margin:auto}.hero{margin-top:22px;background:#eeedea;display:grid;grid-template-columns:1fr 1fr;min-height:390px;overflow:hidden}.hero-copy{padding:65px 8%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:800;color:#777}.hero h1{font-size:clamp(36px,4.3vw,70px);letter-spacing:-.075em;line-height:1.05;margin:20px 0}.hero p{color:#666;line-height:1.6;margin:0 0 24px;max-width:330px}.hero-media{background:#dedbd5;min-height:340px;position:relative}.hero-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.45)}.blackbtn{border:1px solid #161616;padding:14px 21px;color:white;background:#161616;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;display:inline-flex;align-items:center;justify-content:center;gap:10px}.blackbtn:hover{background:#3c3c3c}.outlinebtn{border:1px solid #161616;padding:12px 16px;background:white;font-size:11px;font-weight:800;text-transform:uppercase}.section{margin-top:54px}.heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:21px}.heading h2{font-size:25px;letter-spacing:-.06em;margin:0;font-weight:800}.textlink{font-weight:800;font-size:11px;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px}.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.cat{position:relative;background:#eae9e6;aspect-ratio:4/4.25;overflow:hidden;cursor:pointer}.cat img{width:100%;height:100%;object-fit:cover;filter:saturate(.6);transition:transform .3s}.cat:hover img{transform:scale(1.04)}.cat:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.38));pointer-events:none}.cat span{position:absolute;z-index:1;bottom:18px;left:18px;color:#fff;font-size:19px;font-weight:800;letter-spacing:-.04em}.chips{display:flex;gap:7px;overflow:auto;padding-bottom:4px;margin:16px 0 24px;scrollbar-width:none}.chips button{white-space:nowrap;padding:10px 15px;background:#fff;border:1px solid #ddd;font-size:11px;font-weight:800}.chips .active{background:#111;color:#fff;border-color:#111}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:27px 13px}.product{cursor:pointer;min-width:0}.productpic{aspect-ratio:4/5;background:#f2f1ef;overflow:hidden;position:relative}.productpic img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s;filter:saturate(.65)}.product:hover img{transform:scale(1.035)}.product .tag{position:absolute;top:12px;left:12px;padding:6px 8px;background:#fff;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.productmeta{padding:12px 1px}.productname{font-weight:700;line-height:1.5;font-size:12px}.sku{font-size:10px;color:#888;margin-top:4px}.price{font-size:13px;font-weight:800;margin-top:8px}.trust{margin-top:56px;padding:25px;border:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:15px;text-align:center}.trust strong{display:block;font-size:12px}.trust span{display:block;color:#777;font-size:11px;margin-top:7px}.foot{margin-top:60px;background:#f6f6f4;padding:40px 0 90px}.footin{max-width:1300px;padding:0 28px;margin:auto;display:flex;justify-content:space-between;align-items:start;gap:30px}.foot p{color:#777;font-size:11px;line-height:1.6}.footnav{display:flex;gap:20px;font-size:11px}.hidden{display:none!important}.back{background:none;border:0;font-weight:700;color:#777;padding:20px 0;font-size:12px}.detail{display:grid;grid-template-columns:1.2fr .8fr;gap:5%;padding-top:25px}.detailphoto{background:#f4f3f1;aspect-ratio:4/4.8;overflow:hidden}.detailphoto img{width:100%;height:100%;object-fit:cover;filter:saturate(.65)}.thumbs{display:flex;gap:8px;margin-top:10px}.thumbs button{padding:0;border:1px solid #ddd;width:68px;height:80px;background:#eee}.thumbs button.sel{border:2px solid #111}.thumbs img{width:100%;height:100%;object-fit:cover}.detailinfo{padding:8px 0;max-width:440px}.detailinfo h1{font-size:32px;letter-spacing:-.06em;line-height:1.14;margin:14px 0}.detailprice{font-size:23px;font-weight:800;margin-bottom:30px}.fieldlabel{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:23px 0 10px}.choices{display:flex;flex-wrap:wrap;gap:7px}.choices button{border:1px solid #ddd;background:#fff;min-width:45px;padding:12px;font-size:12px}.choices button.selected{border-color:#111;background:#111;color:white}.smallmuted{color:#777;font-size:11px;line-height:1.6}.desc{border-top:1px solid #ddd;margin-top:28px;padding-top:20px;line-height:1.8;font-size:12px}.drawerbg{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:45}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(440px,100%);background:white;z-index:46;display:flex;flex-direction:column;box-shadow:-12px 0 30px #0001}.drawerhead{padding:20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.drawerhead h2{font-size:20px;margin:0}.close{font-size:25px;background:none;border:0}.drawerbody{overflow:auto;flex:1;padding:20px}.drawerfoot{border-top:1px solid var(--line);padding:20px}.cartrow{display:flex;gap:12px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #eee}.cartrow img{width:83px;height:104px;object-fit:cover;background:#eee}.cartrow .info{flex:1;font-size:12px;line-height:1.7}.cartrow .rem{border:0;background:none;text-decoration:underline;color:#888;font-size:10px;padding:0}.total{display:flex;justify-content:space-between;font-size:16px;font-weight:800;margin-bottom:17px}.field{display:flex;flex-direction:column;gap:7px;margin:14px 0}.field label{font-size:11px;font-weight:800}.field input,.field select,.field textarea{border:1px solid #ddd;background:#fff;padding:13px;outline-offset:2px;border-radius:0;width:100%;min-width:0}.checkouterr{font-size:11px;color:#a00;margin:8px 0}.successbox{background:#f1f6f1;padding:22px;line-height:1.7;font-size:13px}.admin{padding-top:30px}.admin h1{font-size:31px;letter-spacing:-.06em}.adminnav{display:flex;gap:8px;margin:20px 0}.adminnav button{background:#f4f4f4;border:1px solid #ddd;padding:12px 17px}.adminnav .on{background:#111;color:white}.adminpanel{border:1px solid #ddd;padding:24px;max-width:850px}.adminrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}.adminrow .field{margin:0}.adminitem{border-bottom:1px solid #ddd;padding:12px 0;display:flex;gap:12px;align-items:center}.adminitem img{width:50px;height:58px;object-fit:cover;background:#eee}.adminitem b{font-size:12px}.adminitem small{display:block;color:#777;font-size:10px}.adminitem .grow{flex:1}.adminitem button{border:1px solid #ddd;background:white;font-size:11px;padding:8px}.orderbox{border:1px solid #ddd;margin:10px 0;padding:15px;font-size:12px;line-height:1.8}.orderbox h3{margin:0 0 8px}.placeholder{background:#eee;display:grid;place-items:center;color:#aaa;font-weight:700}.bottomnav{display:none}.notice{background:#f7f5ed;border:1px solid #e7e3d4;padding:12px;font-size:11px;line-height:1.6;color:#6e6750;margin-bottom:18px}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.empty{text-align:center;padding:50px 10px;color:#777}.empty h2{color:#111}
@media(max-width:800px){.desktopnav{display:none}.header-in{padding:17px 16px}.wrap{padding:0 14px}.hero{margin-top:10px;grid-template-columns:1fr 1fr;min-height:270px}.hero-copy{padding:25px 8%}.hero h1{font-size:35px;margin:12px 0}.hero p{font-size:11px}.hero-media{min-height:270px}.section{margin-top:36px}.cats{grid-template-columns:repeat(2,1fr);gap:9px}.cat{aspect-ratio:4/3}.grid{grid-template-columns:repeat(2,1fr);gap:20px 9px}.productpic{aspect-ratio:4/5}.trust{padding:16px 6px;gap:6px}.trust strong{font-size:10px}.trust span{font-size:9px}.footin{padding:0 14px}.detail{grid-template-columns:1fr;gap:20px}.detailinfo{max-width:none}.detailinfo h1{font-size:25px}.adminrow{grid-template-columns:1fr}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;border-top:1px solid #ddd;justify-content:space-around;padding:10px 8px max(10px,env(safe-area-inset-bottom))}.bottomnav button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:9px;color:#444}.bottomnav svg{width:19px;height:19px;stroke:#111;fill:none;stroke-width:1.6}.foot{padding-bottom:125px}}
@media(max-width:520px){.logo{font-size:30px}.header-in{gap:8px}.actions{gap:12px}.hero{grid-template-columns:1fr 43%;min-height:265px}.hero h1{font-size:29px}.hero-copy{padding:20px 13px}.hero p{font-size:10px}.hero-media{min-height:265px}.hero .blackbtn{padding:12px 13px;font-size:9px}.heading h2{font-size:22px}.heading .textlink{font-size:10px}.cat span{font-size:16px;left:12px;bottom:12px}.footnav{flex-direction:column}.detailphoto{aspect-ratio:4/4.4}.adminpanel{padding:13px}.adminitem button{padding:6px}.smallhide{display:none}}

/* Simplified three-link store navigation and About page */
#categories,#products{scroll-margin-top:90px}.footnav a:hover{color:#888}.about-teaser{margin-top:56px;padding:35px 36px;background:#f5f5f3;display:flex;justify-content:space-between;align-items:center;gap:20px}.about-teaser h2{font-size:27px;letter-spacing:-.06em;margin:10px 0}.about-teaser p{color:#737373;font-size:12px;line-height:1.8;margin:0;max-width:430px}.about-page{padding-top:20px;min-height:70vh}.about-page>h1{font-size:clamp(48px,7vw,85px);letter-spacing:-.08em;margin:10px 0 38px}.about-layout{border-top:1px solid var(--line);padding:35px 0 60px;display:grid;grid-template-columns:1.15fr .85fr;gap:10%}.about-lead h2{font-size:clamp(27px,3vw,43px);line-height:1.17;letter-spacing:-.06em;max-width:530px;margin:0 0 20px}.about-lead p{max-width:500px;color:#696969;line-height:1.85;font-size:13px}.about-lead .blackbtn{margin-top:20px}.about-points>div{display:grid;grid-template-columns:34px 1fr;column-gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}.about-points>div:first-child{padding-top:4px}.about-points span{color:#999;font-size:11px}.about-points b{font-size:15px}.about-points p{grid-column:2;color:#777;font-size:12px;line-height:1.65;margin:8px 0 0}.about-demo{padding-bottom:25px}@media(max-width:800px){.about-layout{grid-template-columns:1fr;gap:36px}.about-teaser{padding:24px 20px;align-items:flex-start;flex-direction:column}.about-page>h1{margin-bottom:22px}.footnav{flex-wrap:wrap}}

/* TYGO connected storefront */
button{transition:background .2s,color .2s,border-color .2s} .iconbtn{min-width:27px;min-height:36px}
.loading{padding:68px 20px;text-align:center;color:#777;line-height:1.7}.error-panel{border:1px solid #e2b5a6;padding:22px;max-width:600px;margin:48px auto;background:#fff9f6;line-height:1.7}
.loading button,.error-panel button{margin-top:10px}.catalog-head{padding-top:24px}.catalog-head h1{font-size:36px;letter-spacing:-.06em;margin:10px 0 0}
.catalog-description{color:#777;font-size:12px;line-height:1.7}.section .grid:empty{min-height:140px}
.cat{border:1px solid #eee}.cat img{object-fit:cover}.cat.no-photo{background:#f0efec}.cat.no-photo:after{background:linear-gradient(transparent,rgba(0,0,0,.27))}
.cat .cat-illustration{position:absolute;inset:0;display:grid;place-items:center;font:700 120px 'Cormorant Garamond',serif;color:#ddd}.cat span{max-width:calc(100% - 32px)}
.product{display:block;text-align:left;border:0;background:none;padding:0;width:100%;color:inherit}
.product:focus-visible{outline:2px solid #161616}.productpic{display:flex;justify-content:center;align-items:center}.productpic img{height:100%;width:100%}
.productempty{border:1px dashed #dedede;margin:20px 0;padding:45px 16px;text-align:center;color:#777;font-size:13px}.productempty h3{font-size:20px;color:#161616;margin-top:4px}
.gallery-main{aspect-ratio:4/4.8;background:#f4f3f1;overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:cover}.detail .thumbs button{border-radius:0}
.small-size{font-size:11px;color:#888}.choices button:disabled{background:#eee;color:#999;cursor:not-allowed}.selection-error{color:#a93636;font-size:11px;margin-top:10px}
.cartqty{display:flex;align-items:center;gap:12px;margin-top:7px}.cartqty button{border:1px solid #ddd;background:#fff;min-width:26px;height:26px}
.drawer{padding-bottom:env(safe-area-inset-bottom)}
.about-list{padding-left:19px;color:#555;line-height:1.85;font-size:12px}.about-list li{margin:7px 0}.about-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.socials{display:flex;gap:11px;margin-top:16px}.sociallink{height:35px;width:35px;display:grid;place-items:center;border:1px solid #ddd;border-radius:50%}.sociallink svg{width:19px;height:19px;fill:none;stroke:#111;stroke-width:1.7}
.hero .hero-media{background:#e7e6e3}.hero .hero-media .hero-symbol{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:700 clamp(76px,15vw,210px) 'Cormorant Garamond',serif;letter-spacing:-.11em;color:#aaa;opacity:.65}
.categories-note{font-size:11px;color:#888;margin-top:12px}.photo-label{font-size:11px;font-weight:700;letter-spacing:.07em;color:#9f9f9f}
.checkout-note{font-size:11px;line-height:1.65;color:#777;margin-top:12px}.cart-btn[disabled]{cursor:not-allowed;opacity:.5}
@media(min-width:801px){.cats{grid-template-columns:repeat(5,1fr)}.cat{aspect-ratio:4/4.5}}
@media(max-width:800px){.footin{flex-direction:column}.footnav{flex-direction:row;flex-wrap:wrap}.hero .hero-symbol{font-size:60px}}
@media(max-width:520px){.actions{gap:7px}.sociallink{width:30px;height:30px}.sociallink svg{width:16px;height:16px}.header-in{gap:10px}.logo{font-size:29px}.catalog-head h1{font-size:28px}.detail .thumbs button{width:60px;height:72px}.hero .hero-symbol{font-size:57px}}

/* TYGO mobile chrome v2 — stable header, flush bottom navigation, iOS safe-area. */
.header-slot{display:none}
@media(max-width:800px){
  .header{position:relative;top:auto;z-index:35;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
  .header.is-pinned{position:fixed;left:0;right:0;top:0;width:100%;box-shadow:0 -140px 0 0 #fff,0 1px 0 0 var(--line)}
  .header-slot.is-active{display:block}
  .bottomnav{box-sizing:border-box;position:fixed;bottom:0;left:0;right:0;width:100%;height:calc(62px + env(safe-area-inset-bottom, 0px));padding:8px 12px calc(8px + env(safe-area-inset-bottom, 0px));margin:0;border-top:1px solid var(--line);background:#fff;z-index:36;align-items:flex-start;box-shadow:0 -2px 10px rgba(0,0,0,.035)}
  .bottomnav button{flex:1;min-width:0;min-height:43px;justify-content:center}
  .foot{padding-bottom:calc(25px + 62px + env(safe-area-inset-bottom, 0px))}
  #categories,#products{scroll-margin-top:84px}
}

/* TYGO: touch-friendly, color-aware product photo gallery */
.gallery-main{position:relative;touch-action:pan-y;overscroll-behavior-x:contain;user-select:none;-webkit-user-select:none}
.gallery-main img{pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}
.gallery-main:focus-visible{outline:2px solid #171717;outline-offset:3px}
.gallery-count{position:absolute;bottom:13px;right:13px;z-index:2;background:rgba(20,20,20,.72);color:#fff;border-radius:20px;padding:6px 10px;font-size:11px;letter-spacing:.03em;pointer-events:none}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:39px;height:45px;display:grid;place-items:center;background:rgba(255,255,255,.92);border:1px solid #dedede;color:#181818;border-radius:4px;font-size:28px;line-height:1;cursor:pointer}
.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-arrow:disabled{opacity:.25;cursor:default}
.gallery-arrow:focus-visible{outline:2px solid #111;outline-offset:3px}
@media(hover:none) and (pointer:coarse){.gallery-arrow{display:none}}
@media(max-width:800px){.gallery-count{bottom:12px;right:12px}}

/* TYGO v3 — visible, usable desktop gallery controls. On touch phones, swipe instead. */
@media (min-width: 801px) {
  .gallery-main .gallery-arrow {
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    z-index: 8;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(0,0,0,.13);
    border-radius: 50%;
    background: rgba(255,255,255,.96);
    color: #151515;
    box-shadow: 0 3px 14px rgba(0,0,0,.12);
    cursor: pointer;
    pointer-events: auto;
    opacity: 1;
    transition: background .16s, transform .16s;
  }
  .gallery-main .gallery-prev { left: 15px; }
  .gallery-main .gallery-next { right: 15px; }
  .gallery-main .gallery-arrow span { display: block; font: normal 38px/1 Arial,sans-serif; margin-top: -5px; }
  .gallery-main .gallery-arrow:hover { background: #fff; transform: translateY(-50%) scale(1.07); }
  .gallery-main .gallery-arrow:focus-visible { outline: 3px solid #222; outline-offset: 3px; }
}
/* Enter and empty lines entered in the admin description remain visible to buyers. */
.desc .product-description {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.85;
  margin: 13px 0 16px;
  font-size: 12px;
  user-select: text;
  -webkit-user-select: text;
}

/* TYGO v4 – iPhone/mobile gallery controls and opaque Safari top area.
   A translucent Safari URL pill is browser chrome and cannot be moved by the site.
   Extend the pinned header's white canvas upward so underlying photos do not
   show through while the browser toolbar is expanding/collapsing. */
html, body { background-color:#fff; }
@media (max-width: 800px) {
  .header.is-pinned {
    background-color:#fff;
    box-shadow:0 1px 0 var(--line);
  }
  .header.is-pinned::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:100%;
    height:calc(180px + env(safe-area-inset-top, 0px));
    background:#fff;
    pointer-events:none;
  }
  /* Keep both visible for touch and swipe devices (overrides coarse-pointer hide). */
  .gallery-main .gallery-arrow {
    display:flex !important;
    align-items:center;
    justify-content:center;
    top:50%;
    transform:translateY(-50%);
    z-index:8;
    width:44px;
    height:44px;
    min-width:44px;
    padding:0;
    border-radius:50%;
    border:1px solid rgba(0,0,0,.12);
    background:rgba(255,255,255,.95);
    color:#171717;
    box-shadow:0 2px 12px rgba(0,0,0,.10);
    opacity:1;
    pointer-events:auto;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }
  .gallery-main .gallery-prev { left:12px; }
  .gallery-main .gallery-next { right:12px; }
  .gallery-main .gallery-arrow span {
    display:block;
    font:normal 36px/1 Arial,sans-serif;
    margin-top:-4px;
  }
  .gallery-main .gallery-arrow:focus-visible {
    outline:3px solid #171717;
    outline-offset:2px;
  }
}
