:root{
    /* ===== 色彩系統：取自 turnhouse-farm.com 原始 screen.css ===== */
    --cream:#fff0ea;
    --white:#ffffff;
    --ink-dark:#322c11;
    --olive:#635127;
    --terracotta:#d6895b;
    --brown-body:#7b634c;
    --link-brown:#6d5c32;
    --gold:#ffb500;
    --tan:#ab977a;
    --blue:#095395;
    --line:rgba(50,44,17,0.14);
    --maxw:1180px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;background:var(--cream);color:var(--brown-body);
    font-family:"Century Gothic",STHeiti,Candara,AppleGothic,Verdana,"Microsoft JhengHei",Tahoma,Helvetica,Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{margin:0;font-weight:bold;}
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  ul{list-style:none;margin:0;padding:0;}
  button{font-family:inherit;cursor:pointer;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
  section{position:relative;}

  /* ============ HEADER ============ */
  header{position:fixed;top:0;left:0;right:0;z-index:100;padding:16px 32px;
    display:flex;align-items:center;justify-content:space-between;
    transition:background .35s ease, box-shadow .35s ease, padding .35s ease;}
  header.scrolled{background:rgba(255,240,234,.96);backdrop-filter:blur(6px);box-shadow:0 1px 0 var(--line);padding:10px 32px;}
  .brand-logo{height:52px;transition:height .3s ease;}
  header.scrolled .brand-logo{height:42px;}
  nav.primary-nav{display:flex;align-items:center;gap:30px;}
  nav.primary-nav a{font-size:13.5px;color:var(--terracotta);letter-spacing:.03em;position:relative;padding-bottom:4px;transition:color .2s ease;}
  nav.primary-nav a:hover{color:var(--blue);}
  .nav-cta{border:1px solid var(--terracotta);padding:8px 18px;border-radius:2px;color:var(--terracotta)!important;font-size:12.5px;white-space:nowrap;}
  .nav-cta:hover{background:var(--terracotta);color:#fff!important;}
  .burger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:6px;cursor:pointer;}
  .burger span{width:22px;height:2px;background:var(--ink-dark);}

  .mobile-nav{position:fixed;inset:0;background:var(--cream);z-index:200;display:none;
    flex-direction:column;align-items:center;justify-content:center;gap:26px;}
  .mobile-nav.open{display:flex;}
  .mobile-nav a{font-size:22px;color:var(--terracotta);font-weight:bold;}
  .mobile-nav a:hover{color:var(--blue);}
  .mobile-close{position:absolute;top:22px;right:28px;font-size:30px;background:none;border:0;color:var(--ink-dark);}

  /* ============ HERO CAROUSEL ============ */
  .hero-carousel{position:relative;overflow:hidden;}
  .hc-track{display:flex;transition:transform .07s cubic-bezier(.65,0,.35,1);}
  .hc-slide{min-width:100%;height:100svh;min-height:600px;position:relative;display:flex;align-items:center;justify-content:center;}
  .hc-slide .photofirst{position:absolute;inset:0;background-size:80%;background-position:50% 40%; background-repeat: no-repeat;}
  .hc-slide .photo{position:absolute;inset:0;background-size:cover;background-position:center 35%;}
  .hc-slide .scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,240,234,0) 0%, rgba(255,240,234,0) 82%);}
  .hc-contentfirst{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;padding:0px 0 60px;}
  .hc-content{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;padding:120px 0 60px;}
  .hero-wordmark{margin-bottom:8px;}
  .hero-sub{font-size:16px;color:var(--brown-body);font-style:italic;letter-spacing:.05em;margin-bottom:28px;}
  .hc-tag{font-size:12px;letter-spacing:.22em;color:var(--terracotta);text-transform:uppercase;font-weight:bold;margin-bottom:16px;display:block;}
  .hc-content h1{font-size:clamp(26px,3.4vw,38px);line-height:1.5;color:#f4efd8;margin-bottom:16px;}
  .hc-content p{font-size:15px;line-height:2;color:var(--olive);max-width:480px;margin:0 auto 30px;}
  .hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
  .btn-primary{background:var(--terracotta);color:#fff;padding:14px 30px;font-size:13px;letter-spacing:.06em;border-radius:2px;transition:background .25s ease;}
  .btn-primary:hover{background:var(--ink-dark);}
  .btn-ghost{color:var(--link-brown);border-bottom:1px solid var(--link-brown);padding-bottom:4px;font-size:13.5px;}
  .scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--brown-body);font-size:10px;letter-spacing:.3em;z-index:5;}
  .scroll-cue .line{width:1px;height:34px;background:var(--brown-body);position:relative;overflow:hidden;opacity:.5;}
  .scroll-cue .line::after{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--terracotta);animation:scrollLine 2.2s ease-in-out infinite;}
  @keyframes scrollLine{0%{top:-100%;}60%{top:100%;}100%{top:100%;}}
  .hc-dots{position:absolute;bottom:26px;right:32px;display:flex;gap:8px;z-index:5;}
  .hc-dots button{width:20px;height:3px;background:rgba(50,44,17,.2);border:0;padding:0;border-radius:2px;}
  .hc-dots button.active{background:var(--terracotta);}
  .hc-arrows{position:absolute;top:46%;left:0;right:0;display:flex;justify-content:space-between;padding:0 22px;z-index:5;}
  .hc-arrow{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.8);border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;}
  .hc-arrow svg{width:16px;height:16px;stroke:var(--ink-dark);fill:none;stroke-width:1.8;}

  /* ============ SECTION HEADS ============ */
  .section-head{display:grid;grid-template-columns:120px 1fr;gap:20px;margin-bottom:52px;align-items:end;}
  .section-num{font-size:13px;letter-spacing:.08em;color:var(--tan);border-bottom:1px solid var(--line);padding-bottom:12px;}
  .section-head h2{font-size:clamp(24px,2.8vw,34px);color:var(--ink-dark);}
  .eyebrow{font-size:11px;letter-spacing:.22em;color:var(--terracotta);text-transform:uppercase;font-weight:bold;}

  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
  .reveal.in{opacity:1;transform:none;}

  /* ============ ORIGIN ============ */
  .origin{padding:130px 0 100px;}
  .origin-grid{display:grid;grid-template-columns:120px 1fr;gap:20px;}
  .origin-copy h2{font-size:clamp(24px,2.8vw,32px);color:var(--ink-dark);margin-bottom:14px;line-height:1.5;}
  .origin-copy h3{font-size:17px;color:var(--olive);margin-bottom:26px;font-weight:normal;}
  .origin-copy p{font-size:14.5px;line-height:2.1;color:var(--brown-body);max-width:700px;margin-bottom:18px;}
  .origin-copy strong{color:var(--ink-dark);font-weight:bold;}

  .feature-row{margin-top:70px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .feature-card{background:var(--white);padding:36px 30px;}
  .feature-card .num{font-size:30px;color:var(--terracotta);opacity:.9;margin-bottom:16px;display:block;font-weight:bold;}
  .feature-card h4{font-size:16.5px;margin-bottom:12px;color:var(--ink-dark);}
  .feature-card p{font-size:13px;line-height:1.85;color:var(--brown-body);margin:0;}

  /* ============ FLAVOR SCIENCE ============ */
  .flavor-science{padding:120px 0;background:#f1eeeb;background-image: url(../../img/IMG_6442b.jpg);background-position: 0px 0px; height:100vh; background-size: 72% auto;}
  .fs-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
  .fs-quote{font-weight:bold;font-size:clamp(20px,2.4vw,28px);line-height:1.75;color:var(--ink-dark);}
  .fs-quote::before{content:"「";color:var(--terracotta);}
  .fs-quote::after{content:"」";color:var(--terracotta);}
  .fs-side p{font-size:18px;line-height:2;color:var(--brown-body);margin-bottom:22px;}
  .fs-credit{font-size:12px;letter-spacing:.03em;color:var(--tan);border-top:1px solid var(--line);padding-top:16px;}

  /* ============ FAT & FLAVOR STORY ============ */
  .fat-story{height:100vh;min-height:720px;overflow:hidden;}
  .flavor-science.fat-story{padding:120px 0;background-color:#f1eeeb;background-image:url(../../img/IMG_6442b.jpg);background-repeat:no-repeat;background-position:right bottom;background-size:72% auto;}
  .fat-story-shell{position:relative;height:100%;}
  .fat-story-nav{position:absolute;top:0;right:32px;z-index:4;display:flex;align-items:center;justify-content:flex-end;}
  .fat-story-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;}
  .fat-story-head h2{margin:10px 0 4px;color:var(--ink-dark);font-size:clamp(28px,4vw,48px);line-height:1.25;}
  .fat-story-head p{margin:0;color:var(--terracotta);font-size:15px;letter-spacing:.08em;}
  .fat-story-controls{display:flex;align-items:center;gap:14px;color:var(--olive);font-size:13px;}
  .fat-story-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink-dark);font-size:20px;}
  .fat-story-viewport{height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;}
  .fat-story-viewport::-webkit-scrollbar{display:none;}
  .fat-story-track{height:100%;display:flex;}
  .fat-story-slide{flex:0 0 100%;height:100%;scroll-snap-align:start;display:grid;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);gap:clamp(32px,6vw,84px);align-items:center;padding:26px clamp(20px,4vw,56px);border:1px solid var(--line);background:var(--white);overflow-y:auto;}
  .fat-story-slide:nth-child(2){background:var(--white);}
  .fat-story-slide:nth-child(3){background:#f9f4ec;}
  .fat-story-slide:nth-child(4){background:var(--ink-dark);}
  .fat-story-slide:nth-child(4) .fat-story-copy,.fat-story-slide:nth-child(4) .fat-story-copy h3,.fat-story-slide:nth-child(4) .fat-story-index{color:#fff;}
  .fat-story-flavor{display:block;padding:0;border:0;background:transparent;}
  .fat-story-flavor-inner{height:100%;}
  .fat-story-flavor .section-head h2 span{font-size:15px;font-weight:normal;color:var(--brown-body);}
  .fat-story-flavor .fs-grid{display:block;max-width:620px;}
  .fat-story-flavor .fs-quote{margin:0 0 24px;}
  .fat-story-flavor .fs-side{max-width:600px;}
  .fat-story-flavor .fs-side p{margin:0 0 16px;font-size:14px;line-height:1.85;}
  .fat-story-book{align-self:center;text-align:center;}
  .fat-story-book img{width:min(246px,100%);max-height:42vh;margin:0 auto 12px;object-fit:contain;box-shadow:0 18px 42px rgba(50,44,17,.16);}
  .fat-story-book small{display:block;color:var(--tan);font-size:11px;line-height:1.5;}
  .fat-story-copy{max-width:760px;color:var(--brown-body);}
  .fat-story-copy-wide{grid-column:1/-1;max-width:850px;margin:auto;}
  .fat-story-index{display:block;margin-bottom:16px;color:var(--terracotta);font-size:13px;font-weight:bold;letter-spacing:.18em;}
  .fat-story-copy h3{margin:0 0 22px;color:var(--ink-dark);font-size:clamp(23px,3vw,38px);line-height:1.35;}
  .fat-story-copy p{margin:0 0 14px;font-size:clamp(13px,1.2vw,16px);line-height:1.9;}
  .fat-story-quote{padding:18px 22px;border-left:3px solid var(--terracotta);color:var(--ink-dark);font-size:clamp(17px,2vw,24px)!important;font-weight:bold;}
  .fat-story-slide:nth-child(4) .fat-story-quote{color:#fff;}
  .fat-story-dots{position:absolute;left:50%;bottom:-48px;z-index:4;display:flex;justify-content:center;gap:9px;transform:translateX(-50%);}
  .fat-story-dots button{width:26px;height:3px;padding:0;border:0;background:rgba(50,44,17,.2);}
  .fat-story-dots button.active{background:var(--terracotta);}

  @media(max-width:700px){
    .fat-story{height:100svh;min-height:640px;}
    .flavor-science.fat-story{padding:76px 0 60px;background-position:0px 0px;background-size:cover;}
    .fat-story-nav{top:-52px;right:18px;}
    .fat-story-head{align-items:flex-start;}
    .fat-story-head h2{font-size:26px;}
    .fat-story-head p{font-size:12px;}
    .fat-story-controls{gap:8px;}
    .fat-story-controls button{width:38px;height:38px;}
    .fat-story-slide{grid-template-columns:1fr;gap:18px;align-content:start;padding:24px 20px;}
    .fat-story-flavor{display:block;padding:0;}
    .fat-story-flavor .fs-grid{display:block;max-width:none;}
    .fat-story-flavor .fs-side p{font-size:13px;line-height:1.72;}
    .fat-story-book{display:grid;grid-template-columns:86px 1fr;align-items:end;gap:14px;text-align:left;}
    .fat-story-book img{width:86px;max-height:120px;margin:0;}
    .fat-story-copy h3{margin-bottom:15px;font-size:22px;}
    .fat-story-copy p{font-size:13px;line-height:1.72;}
    .fat-story-copy-wide{grid-column:auto;}
  }

  /* ============ TIERS ============ */
  .tiers{padding:120px 0;}
  .tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .tier-card{border:1px solid var(--line);padding:36px 30px;background:var(--white);border-radius:4px;
    display:flex;flex-direction:column;gap:16px;transition:transform .3s ease, border-color .3s ease;}
  .tier-card:hover{transform:translateY(-5px);border-color:var(--terracotta);}
  .tier-tag{font-size:11px;letter-spacing:.14em;color:var(--terracotta);text-transform:uppercase;}
  .tier-card h4{font-size:22px;color:var(--tan);}
  .tier-card ul{display:flex;flex-direction:column;gap:8px;}
  .tier-card li{font-size:13px;line-height:1.7;color:var(--link-brown);padding-left:14px;position:relative;}
  .tier-card li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:1px;background:var(--terracotta);}
  .tier-weight{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--terracotta);}

  /* ============ 我們的產品（icon 版）============ */
  .products{padding:120px 0 60px;}
  .product-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);}
  .product-tile{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 20px;
    display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;transition:background .2s ease;font-size: 1.2em;}
  .product-tile:hover{background:var(--white);}
  .product-tile svg{width:36px;height:36px;stroke:var(--link-brown);fill:none;stroke-width:1.3;}
  .product-tile:hover svg{stroke:var(--terracotta);}
  .product-tile span{font-size:14px;color:var(--ink-dark); line-height: 1.8em;}

  /* ============ 商品一覽（電商型錄，插入於「我們的產品」之後）============ */
  .shop{padding:80px 0 40px;}
  .tier-tabs{display:flex;gap:10px;margin-bottom:40px;flex-wrap:wrap;}
  .tier-tabs button{background:var(--white);border:1px solid var(--line);padding:10px 22px;font-size:13px;color:var(--link-brown);
    transition:all .2s ease;border-radius:2px;}
  .tier-tabs button.active{background:var(--terracotta);color:#fff;border-color:var(--terracotta);}
  .p-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .p-tab-panel{display:none;}
  .p-tab-panel.active{display:contents;}
  .p-card{background:var(--white);border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;position:relative;}
  .p-thumb{aspect-ratio:1/1;position:relative;overflow:hidden;background:#f3efe8;}
  .p-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
  .p-badge{position:absolute;top:10px;left:10px;background:var(--terracotta);color:#fff;font-size:10px;padding:4px 9px;border-radius:2px;}
  .p-body{padding:16px;flex:1;position:relative;z-index:1;}
  .p-rating{font-size:11px;color:var(--gold);margin-bottom:6px;display:block;}
  .p-name{font-size:14px;color:var(--ink-dark);margin-bottom:6px;display:block;font-weight:bold;}
  .p-desc{font-size:12.5px;line-height:1.75;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .p-price{font-size:14.5px;color:var(--terracotta);margin-bottom:14px;display:block;font-weight:bold;}
  .p-price .from{font-size:11px;color:var(--brown-body);font-weight:normal;margin-right:4px;}
  .p-temp{display:inline-block;margin-left:8px;font-size:10px;border:1px solid var(--line);padding:2px 6px;border-radius:99px;}
  .card-detail-overlay{position:absolute;inset:0 0 62px;z-index:2;background:rgba(50,44,17,.72);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.2s;}
  .card-detail-overlay span{border:1px solid rgba(255,255,255,.85);color:#fff;padding:11px 20px;font-size:13px;letter-spacing:.06em;background:rgba(50,44,17,.2);}
  .p-card:hover .card-detail-overlay{opacity:1;visibility:visible;}
  .card-purchase{height:62px;border-top:1px solid var(--line);padding:10px;display:grid;grid-template-columns:112px 1fr;gap:8px;position:relative;z-index:5;background:#fff;}
  .card-qty{display:grid;grid-template-columns:36px 1fr 36px;border:1px solid var(--line);height:40px;}
  .card-qty button{border:0;background:#fff;color:var(--link-brown);font-size:17px;}
  .card-qty span{display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--ink-dark);}
  .card-add,.card-stock{height:40px;border:1px solid var(--link-brown);background:var(--link-brown);color:#fff;font-size:12px;cursor:pointer;}
  .card-add:hover,.card-stock:hover{background:var(--ink-dark);}
  .card-purchase-stock{grid-template-columns:112px 1fr;}
  .card-stock-status{height:40px;display:flex;align-items:center;justify-content:center;background:#f3f0ea;color:#9a8e80;border:1px solid var(--line);font-size:12px;}
  .card-variant-row{position:relative;z-index:5;background:#fff;padding:10px 10px 0;border-top:1px solid var(--line);}
  .card-variant-label{display:block;font-size:11px;color:var(--tan);}
  .card-variant-select{display:block;width:100%;margin-top:5px;height:38px;border:1px solid var(--line);background:#fff;color:var(--ink-dark);padding:0 10px;font-size:12px;border-radius:2px;}
  .view-all-link{font-size:12.5px;color:var(--link-brown);border-bottom:1px solid var(--link-brown);padding-bottom:3px;}

  /* ============ WHERE TO BUY / EAT ============ */
  .directory{padding:120px 0;background:var(--white);}
  .tabs{display:flex;gap:8px;margin-bottom:44px;flex-wrap:wrap;}
  .tab-btn{font-size:12.5px;letter-spacing:.05em;padding:10px 20px;border:1px solid var(--line);color:var(--link-brown);
    background:var(--cream);cursor:pointer;transition:all .25s ease;border-radius:2px;}
  .tab-btn.active,.tab-btn:hover{color:#fff;border-color:var(--terracotta);background:var(--terracotta);}
  .tab-panel{display:none;}
  .tab-panel.active{display:block;}
  .list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
  #buy-online .list-grid{background:transparent;border:0;}
  #buy-online .list-item{border:1px solid var(--line);}
  .list-item{background:var(--cream);padding:24px 26px;display:flex;flex-direction:column;gap:8px;}
  .list-item .name{font-size:14.5px;color:var(--ink-dark);font-weight:bold;}
  .list-item .addr{font-size:13px;color:var(--brown-body);display:flex;gap:8px;align-items:flex-start;line-height:1.7;}
  .list-item .addr svg{width:14px;height:14px;flex-shrink:0;margin-top:3px;stroke:var(--terracotta);fill:none;stroke-width:1.5;}
  .list-item .tel{font-size:12.5px;color:var(--tan);}
  .list-note{margin-top:18px;font-size:12px;color:var(--brown-body);opacity:.75;}

  /* ============ CONTACT ============ */
  .contact{padding:120px 0 100px;}
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
  .contact-info p{font-size:14px;line-height:2;color:var(--brown-body);margin-bottom:8px;}
  .contact-info .label{font-size:11px;letter-spacing:.14em;color:var(--terracotta);text-transform:uppercase;display:block;margin:24px 0 8px;}
  .contact-info .label:first-child{margin-top:0;}
  .contact-info a.value{color:var(--ink-dark);font-size:15.5px;border-bottom:1px solid var(--line);}
  .line-btn{margin-top:30px;display:inline-flex;align-items:center;gap:10px;background:#06C755;color:#fff;padding:12px 22px;
    font-size:13.5px;font-weight:bold;border-radius:2px;}
  .line-btn svg{width:17px;height:17px;fill:#fff;}
  .map-box{background:var(--white);border:1px solid var(--line);min-width:0;
    display:grid;grid-template-rows:minmax(320px,1fr) auto;overflow:hidden;border-radius:4px;}
  .contact-map-area{position:relative;min-height:320px;}
  .contact-map-canvas{position:absolute;inset:0;}
  .contact-map-area > [hidden]{display:none;}
  .contact-map-area > iframe{display:block;width:100%;height:100%;min-height:320px;border:0;}
  .map-open{justify-self:end;margin:12px 16px;font-size:11.5px;letter-spacing:.06em;color:var(--link-brown);
    border:1px solid var(--line);padding:8px 14px;border-radius:2px;background:var(--cream);}
  .map-open:hover{border-color:var(--terracotta);color:var(--terracotta);}

  /* ============ FOOTER ============ */
  footer{background:var(--cream);padding:60px 0 26px;border-top:1px solid var(--line);}
  .footer-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
  .footer-logo{height:40px;}
  .footer-nav{display:flex;gap:20px;flex-wrap:wrap;font-size:12.5px;color:var(--link-brown);}
  .footer-nav a:hover{color:var(--gold);}
  .footer-copy{font-size:11.5px;margin-top:20px;color:var(--brown-body);opacity:.7;}
@media (max-width:1480px){
    .hc-slide .photofirst{position:absolute;inset:0;background-size:cover;background-position:60% 40%; background-repeat: no-repeat;}
  }
  @media (max-width:1024px){
    .product-grid{grid-template-columns:repeat(1,1fr);}
    .p-grid{grid-template-columns:repeat(1,1fr);}
    .hc-slide .photofirst{position:absolute;inset:0;background-size:cover;background-position:50% 40%; background-repeat: no-repeat;}
  }
  @media (max-width:920px){
    nav.primary-nav{display:none;}
    .burger{display:flex;}
    .fs-grid,.contact-grid{grid-template-columns:1fr;gap:36px;}
    .feature-row{grid-template-columns:1fr;}
    .tier-grid{grid-template-columns:1fr;}
    .list-grid{grid-template-columns:1fr;}
    .section-head,.origin-grid{grid-template-columns:1fr;gap:8px;}
    .hc-slide .photofirst{position:absolute;inset:0;background-size:cover;background-position:50% 40%; background-repeat: no-repeat;}
  }
  @media (max-width:560px){
    .card-purchase{grid-template-columns:108px 1fr;}
    .card-detail-overlay{display:flex;opacity:0;visibility:hidden;pointer-events:none;}
    .p-card.mobile-detail-open .card-detail-overlay{opacity:1;visibility:visible;pointer-events:auto;}
    .hc-slide .photofirst{position:absolute;inset:0;background-size:cover;background-position:50% 65%; background-repeat: no-repeat;}
  }

.header-cart{border:0;background:none;color:var(--terracotta);font-size:13.5px;padding:8px 0}
.cart-count{display:inline-flex;min-width:20px;height:20px;border-radius:10px;background:var(--terracotta);color:#fff;align-items:center;justify-content:center;font-size:11px;padding:0 5px}
.cart-overlay{position:fixed;inset:0;background:rgba(30,25,12,.36);opacity:0;visibility:hidden;transition:.22s;z-index:250}
.cart-overlay.open{opacity:1;visibility:visible}
.cart-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(520px,92vw);background:#fff;z-index:260;transform:translateX(100%);transition:transform .28s ease;box-shadow:-16px 0 46px rgba(50,44,17,.16);display:grid;grid-template-rows:auto 1fr auto}
.cart-drawer.open{transform:translateX(0)}
.cart-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.cart-head h2{font-size:17px;color:var(--ink-dark);margin:0}
.cart-close{width:36px;height:36px;border:0;border-radius:50%;background:#f4f1eb;color:var(--ink-dark);font-size:22px}
.cart-items{padding:8px 22px 22px;overflow:auto}
.cart-empty,.cart-sync-note{padding:60px 0;text-align:center;color:var(--tan)}
.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.cart-item img{width:72px;height:72px;object-fit:cover;background:#f3efe8}
.cart-item-name{color:var(--ink-dark);font-size:13px;font-weight:bold}
.cart-item-unit{font-size:11px;color:var(--tan);margin-top:4px}
.qty-control{margin-top:8px;width:112px;height:34px;display:grid;grid-template-columns:34px 1fr 34px;border:1px solid var(--line)}
.qty-control button{border:0;background:#fff}
.qty-control span{display:flex;align-items:center;justify-content:center;font-size:12px}
.remove-item{margin-top:7px;border:0;background:none;padding:0;color:var(--tan);font-size:11px;text-decoration:underline}
.cart-item-price{font-size:12px;color:var(--ink-dark);font-weight:bold;white-space:nowrap}
.cart-temp-group{margin:8px 0 22px;border:1px solid var(--line)}
.cart-temp-title{display:flex;justify-content:space-between;padding:12px 14px;background:#f7f4ee;color:var(--ink-dark);font-size:14px;font-weight:bold}
.cart-temp-group .cart-item{margin:0 14px}
.cart-temp-summary{padding:12px 14px;background:#fbfaf7}
.cart-temp-summary>div:not(.cart-temp-progress){display:flex;justify-content:space-between;gap:16px;padding:4px 0;font-size:12px;color:var(--tan)}
.cart-temp-summary strong{color:var(--ink-dark)}
.cart-temp-progress{font-size:11px;color:var(--tan);padding:3px 0 7px}
.cart-temp-total{margin-top:6px;padding-top:10px!important;border-top:1px solid var(--line);font-size:14px!important;color:var(--ink-dark)!important}
.cart-foot{padding:20px 22px;border-top:1px solid var(--line)}
.cart-total{display:flex;justify-content:space-between;color:var(--ink-dark);font-size:18px;font-weight:bold;margin-bottom:14px}
.checkout-btn{width:100%;height:50px;border:0;background:var(--link-brown);color:#fff;font-size:14px}
.checkout-note{font-size:11px;color:var(--tan);text-align:center;margin-top:10px}
.cart-preorder-notice{margin:8px 0 14px;padding:12px 14px;border:1px solid #d77b55;background:#fff5ef;color:#9b4f33;display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:1.55}
.cart-preorder-notice strong{font-size:13px;color:#8f4329}
.cart-preorder-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:2px 7px;border:1px solid #e1704c;color:#d95d36;background:#fff7f3;font-size:10px;font-weight:700;line-height:1.3;vertical-align:1px;white-space:nowrap}
