:root {
    --cream:      #FDFBF7;
    --paper:      #F4F1EA;
    --linen:      #EDE8DE;
    --white:      #FFFFFF;
    --ink:        #2A1B0F;
    --ink-soft:   #3A3530;
    --charcoal:   #2D2A26;
    --stone:      #6B6560;
    --mist:       #A09A93;
    --gold:       #D4A574;
    --gold-dim:   rgba(212,165,116,0.22);
    --gold-faint: rgba(212,165,116,0.06);
    --rule:       rgba(0,0,0,0.06);
    --rule-dark:  rgba(255,255,255,0.06);
    --ease:       cubic-bezier(0.22, 0.61, 0.36, 1);
  }

  *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior: smooth; }
  body {
    font-family: 'Inter', 'PingFang SC', 'Microsoft YaHei', sans-serif;
    color: var(--ink-soft); background: var(--cream);
    line-height: 1.8; -webkit-font-smoothing: antialiased; font-weight: 400;
    font-size: 15px; letter-spacing: 0.01em;
  }
  .serif { font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; }

  .container { max-width: 1200px; margin: 0 auto; padding: 0 60px; }
  .container-narrow { max-width: 860px; }

  /* ═══ NAV ═══ */
  nav {
    position: sticky; top: 0; z-index: 100; padding: 24px 0;
    background: rgba(249,246,240,0.94); backdrop-filter: blur(20px);
    border-bottom: 1px solid var(--rule); transition: padding 0.3s var(--ease);
  }
  nav .container { display:flex; align-items:center; justify-content:space-between; }
  .nav-right { display:flex; align-items:center; gap:28px; }
  nav .logo { line-height: 1; }
  .logo {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 26px; font-weight: 600;
    letter-spacing: 2px; color: var(--ink);
  }
  .logo em { font-style: italic; font-weight: 400; color: var(--gold); }
  .nav-links { display:flex; gap: 48px; align-items:center; }
  .nav-links a {
    text-decoration:none; color: var(--mist); font-size:11px; font-weight:500;
    letter-spacing:1.8px; text-transform:uppercase; transition:color 0.3s; position: relative;
  }
  .nav-links a::after {
    content:''; position:absolute; bottom:-4px; left:0; width:0; height:1px;
    background:var(--gold); transition:width 0.3s var(--ease);
  }
  .nav-links a:hover { color: var(--ink); }
  .nav-links a:hover::after { width:100%; }
  .cart-icon { position:relative; cursor:pointer; display:flex; align-items:center; color:var(--ink); transition:color 0.2s; padding:4px; }
  .cart-icon:hover { color:var(--gold); }
  .cart-icon svg { width:20px; height:20px; }
  .cart-badge { position:absolute; top:-2px; right:-8px; min-width:18px; height:18px; border-radius:9px; background:var(--gold); color:#fff; font-size:10px; font-weight:500; display:flex; align-items:center; justify-content:center; padding:0 5px; transition:transform 0.1s; }
  .cart-badge:empty, .cart-badge[data-count="0"] { display:none; }

  /* ═══ HERO ═══ */
  .hero {
    text-align: center; padding: 160px 0 140px;
    background:
      radial-gradient(ellipse 80% 60% at 50% 30%, var(--gold-faint) 0%, transparent 70%),
      linear-gradient(175deg, var(--paper) 0%, var(--cream) 40%, var(--linen) 100%);
    position: relative; overflow: hidden;
  }
  .hero .container { position:relative; z-index:2; }
  .hero .overline {
    font-size: 10px; font-weight: 600; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); margin-bottom: 40px; display: inline-block;
  }
  .hero h1 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
    font-size: clamp(50px, 8vw, 96px); font-weight: 400; color: var(--ink);
    line-height: 0.94; letter-spacing: -2px; margin-bottom: 32px;
  }
  .hero h1 i { font-style: italic; color: var(--gold); font-weight: 300; }
  .hero .sub {
    font-size: 18px; line-height: 2; color: var(--stone);
    max-width: 560px; margin: 0 auto 56px; font-weight: 350;
  }
  .btn {
    display: inline-block; padding: 19px 56px; font-size: 12px; font-weight: 600;
    letter-spacing: 2px; text-transform: uppercase; text-decoration: none;
    transition: all 0.35s var(--ease); cursor: pointer; border: none; line-height:1;
  }
  .btn-primary { background: #E89B84; color: #FFFFFF; }
  .btn-primary:hover { background: #D4A574; color: #2A1B0F; }
  .btn-underline {
    background: transparent; color: var(--ink); padding:0 0 8px 0; border-radius:0;
    font-size:11px; letter-spacing:2.5px; border-bottom:1px solid var(--gold-dim); margin-left: 40px;
  }
  .btn-underline:hover { border-color: var(--gold); color: var(--gold); }

  /* ═══ SECTION HEADER ═══ */
  .section { padding: 140px 0; }
  .section-dark { background: var(--charcoal); color: rgba(255,255,255,0.60); }
  .section-dark .section-title { color: #FFFFFF; }
  .section-dark .section-sub { color: rgba(255,255,255,0.28); }
  .section-dark .tag-line { color: var(--gold); }
  .section-header { text-align: center; margin-bottom: 88px; }
  .tag-line {
    font-size: 10px; font-weight: 600; letter-spacing: 4px; text-transform: uppercase;
    color: var(--gold); display: inline-block; margin-bottom: 14px;
  }
  .section-title {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
    font-size: clamp(34px, 5vw, 56px); font-weight: 400; color: var(--ink);
    line-height: 1.06; letter-spacing: -0.6px; margin-bottom: 20px;
  }
  .section-sub {
    font-size: 16px; color: var(--mist); max-width: 540px;
    margin: 0 auto; line-height: 1.9; font-weight: 350;
  }

  /* ═══ STORY ═══ */
  .story-grid { display:grid; grid-template-columns:5fr 7fr; gap:88px; align-items:center; }
  .story-img {
    aspect-ratio:3/4;
    background:linear-gradient(155deg, #EDE7DA, #E0D8C8);
    display:flex; align-items:center; justify-content:center;
    font-size:64px; color:rgba(212,165,116,0.28);
  }
  .story-text p {
    font-size:15px; line-height:2; color:rgba(255,255,255,0.45);
    margin-bottom:24px; font-weight: 350;
  }
  .story-text .quote {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:26px; font-weight:350;
    font-style:italic; color:#FFFFFF; line-height:1.45;
    border-left:2px solid var(--gold);
    padding:8px 0 8px 32px; margin:36px 0; letter-spacing: -0.2px;
  }
  .stat-row { display:flex; gap:56px; margin-top:38px; }
  .stat-row .num {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:44px;
    font-weight:400; color:var(--gold); line-height:1; font-style:italic;
  }
  .stat-row .lbl {
    font-size:10px; color:rgba(255,255,255,0.22); letter-spacing:2px;
    text-transform:uppercase; margin-top:8px; font-weight:500;
  }

  /* ═══ KILNS (12) ═══ */
  .kiln-grid { display:grid; grid-template-columns:repeat(4,1fr); }
  .kiln-card {
    padding: 56px 36px; text-align: center; position: relative;
    border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
    transition: background 0.4s var(--ease);
  }
  .kiln-card:nth-child(4n) { border-right: none; }
  .kiln-card:nth-child(n+9) { border-bottom: none; }
  .kiln-card:hover { background: var(--gold-faint); }
  .kiln-card .num {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 13px; font-weight: 400;
    color: var(--gold); margin-bottom: 18px; font-style: italic;
  }
  .kiln-card h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 21px; font-weight: 500;
    color: var(--ink); margin-bottom: 4px; letter-spacing: 0.2px;
  }
  .kiln-card .loc {
    font-size: 9px; color: var(--gold); letter-spacing: 2px;
    text-transform: uppercase; margin-bottom: 14px; font-weight: 500; line-height: 1.5;
  }
  .kiln-card p {
    font-size: 12px; line-height: 1.85; color: var(--mist); max-width: 240px; margin:0 auto; font-weight: 350;
  }

  /* ═══ TIMELINE (alternating) ═══ */
  .timeline { position: relative; max-width: 860px; margin: 0 auto; }
  .timeline::before {
    content:''; position:absolute; left:50%; top:0; bottom:0; width:1px;
    background: var(--gold-dim); transform: translateX(-50%);
  }
  .tl-row { display:flex; align-items:flex-start; margin-bottom: 56px; position:relative; }
  .tl-row:last-child { margin-bottom:0; }

  /* Odd: year left, body right */
  .tl-row:nth-child(odd) { flex-direction:row; }
  .tl-row:nth-child(odd) .tl-year { text-align:right; padding-right:60px; }
  .tl-row:nth-child(odd) .tl-body { padding-left:60px; text-align:left; }

  /* Even: body left, year right */
  .tl-row:nth-child(even) { flex-direction:row; }
  .tl-row:nth-child(even) .tl-year { order:2; text-align:left; padding-left:60px; }
  .tl-row:nth-child(even) .tl-body { order:1; padding-right:60px; text-align:right; }

  .tl-year {
    width:50%;
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 42px; font-weight: 300;
    color: var(--gold); line-height:1; font-style: italic;
  }
  .tl-body { width:50%; padding-top: 4px; }
  .tl-body h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 17px; font-weight: 500;
    color: var(--ink); margin-bottom: 6px;
  }
  .tl-body p { font-size: 13px; line-height: 1.8; color: var(--stone); font-weight: 350; }
  .tl-dot {
    position:absolute; left:50%; top:12px; transform: translateX(-50%);
    width:10px; height:10px; border-radius:50%; background: var(--gold); z-index:1;
  }

  /* ═══ PROCESS ═══ */
  .process-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 52px 40px;
    counter-reset: step; }
  .process-step { text-align: center; position: relative; padding-top: 52px; }
  .process-step::before {
    counter-increment: step; content: counter(step, decimal-leading-zero);
    position: absolute; top: 0; left: 50%; transform: translateX(-50%);
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 13px; font-weight: 400;
    color: var(--gold); font-style: italic; letter-spacing: 1px;
  }
  .process-step h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 19px; font-weight: 500;
    color: var(--ink); margin-bottom: 8px;
  }
  .process-step p { font-size: 13px; line-height: 1.75; color: var(--mist); font-weight: 350; }

  /* ═══ MANIFESTO ═══ */
  .manifesto { text-align: center; }
  .manifesto .section-title { font-size: clamp(28px, 4.5vw, 44px); }
  .manifesto-body {
    max-width: 680px; margin: 0 auto;
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 20px; line-height: 1.9;
    color: var(--stone); font-weight: 350; font-style: italic;
  }
  .manifesto-body em { font-style: normal; color: var(--gold); }

  /* ═══ COLLECTION ═══ */
  .products-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:80px 48px; }
  .product-card { display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
  .product-card .img-cell {
    aspect-ratio: 3/4;
    background: linear-gradient(155deg, #EDE7DA, #E0D8C8);
    display:flex; align-items:center; justify-content:center;
    font-size: 56px; color: rgba(212,165,116,0.35);
    position: relative; overflow: hidden;
  }
  .product-card .img-cell::after {
    content:''; position:absolute; inset:0;
    background: linear-gradient(0deg, rgba(0,0,0,0.02) 0%, transparent 50%);
    pointer-events:none;
  }
  .product-card .img-cell .wishlist {
    position:absolute; top:18px; right:18px; width:42px; height:42px; border-radius:50%;
    background:rgba(255,255,255,0.80); border:1px solid rgba(0,0,0,0.04);
    cursor:pointer; font-size:18px; color: var(--mist); display:flex; align-items:center;
    justify-content:center; transition:all .25s var(--ease); z-index:2;
  }
  .product-card .img-cell .wishlist:hover { color: var(--gold); border-color: var(--gold-dim); }
  .product-card .info { padding: 0; }
  .product-card .tag {
    font-size: 9px; font-weight: 600; letter-spacing: 3px;
    text-transform: uppercase; color: var(--gold); margin-bottom: 12px;
  }
  .product-card h3 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 28px; font-weight: 500;
    color: var(--ink); line-height: 1.10; margin-bottom: 6px; letter-spacing:-0.2px;
  }
  .product-card .subtitle {
    font-size: 12px; color: var(--stone); margin-bottom: 18px;
    font-style: italic; font-weight: 350;
  }
  .product-card .desc {
    font-size: 14px; line-height: 1.85; color: var(--stone); margin-bottom: 22px; font-weight: 350;
  }
  .product-card .rating { font-size: 12px; color: var(--gold); margin-bottom: 20px; }
  .product-card .rating .count { color: var(--mist); font-weight: 400; }
  .product-card .price {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 32px; font-weight: 500;
    color: var(--ink); margin-bottom: 24px; line-height:1;
  }
  .product-card .price .was {
    font-size: 17px; font-weight: 400; color: var(--mist);
    text-decoration:line-through; margin-left:12px;
  }
  .btn-sm {
    display: inline-block; padding: 16px 40px; font-size: 11px; font-weight: 600;
    letter-spacing: 2px; text-transform: uppercase; text-decoration: none;
    background: var(--ink); color: var(--cream); border: none;
    cursor: pointer; transition: background 0.35s var(--ease); line-height:1;
  }
  .btn-sm:hover { background: var(--gold); color: var(--ink); }

  /* ═══ MASTERS ═══ */
  .masters-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; }
  .master-card { text-align:center; }
  .master-card .master-photo {
    width:100%; aspect-ratio:1/1; margin-bottom: 32px;
    background:linear-gradient(150deg, #EDE7DA, #E0D8C8);
    display:flex; align-items:center; justify-content:center;
    font-size: 48px; color: rgba(212,165,116,0.32);
  }
  .master-card h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size: 21px; font-weight: 500;
    color: var(--ink); margin-bottom: 4px; letter-spacing:0.2px;
  }
  .master-card .master-title {
    font-size: 10px; color: var(--gold); letter-spacing: 2px;
    text-transform: uppercase; margin-bottom: 6px; font-weight: 500;
  }
  .master-card .master-years {
    font-size: 11px; color: var(--mist); margin-bottom: 14px; font-style: italic;
  }
  .master-card p {
    font-size:13px; line-height:1.8; color:var(--mist); max-width:280px; margin:0 auto; font-weight: 350;
  }

  /* ═══ REVIEWS ═══ */
  .reviews-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }
  .review-card {
    background:var(--white); padding:52px 40px; border: 1px solid var(--rule);
  }
  .review-card .stars { color:var(--gold); font-size:13px; letter-spacing:2px; margin-bottom:24px; }
  .review-card .text {
    font-size:14px; line-height:1.9; color: var(--stone);
    font-style:italic; margin-bottom:32px; font-weight: 350;
  }
  .review-card .name { font-size:13px; font-weight:500; color:var(--ink); letter-spacing:0.2px; }
  .review-card .loc { font-size:11px; color:var(--mist); margin-top:2px; font-weight:400; }

  /* ═══ GIFT ═══ */
  .gift-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--rule); }
  .gift-card {
    text-align:center; padding:64px 40px; background:var(--cream);
    transition:background 0.4s var(--ease);
  }
  .gift-card:hover { background:var(--paper); }
  .gift-card .icon { font-size:32px; color:var(--gold); margin-bottom:22px; }
  .gift-card h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:19px; font-weight:500;
    color:var(--ink); margin-bottom:10px;
  }
  .gift-card p { font-size:13px; line-height:1.8; color:var(--mist); font-weight:350; }

  /* ═══ CARE ═══ */
  .care-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }
  .care-card { text-align:center; padding:48px 32px; }
  .care-card .icon { font-size:28px; color:var(--gold); margin-bottom:18px; }
  .care-card h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:18px; font-weight:500;
    color:var(--ink); margin-bottom:10px;
  }
  .care-card p { font-size:13px; line-height:1.75; color:var(--mist); font-weight:350; }

  /* ═══ FAQ ═══ */
  .faq-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px;
    max-width:960px; margin:0 auto; background:var(--rule); }
  .faq-card { padding:44px 40px; background:var(--white); transition:background 0.3s var(--ease); }
  .faq-card:hover { background:var(--cream); }
  .faq-card h4 {
    font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:18px; font-weight:500;
    color:var(--ink); margin-bottom:10px; letter-spacing:0.1px;
  }
  .faq-card p { font-size:13px; line-height:1.8; color:var(--stone); font-weight:350; }

  /* ═══ NEWSLETTER ═══ */
  .newsletter { text-align:center; background: var(--paper); }
  .newsletter p {
    max-width:440px; margin:0 auto 36px; font-size:15px;
    color:var(--mist); line-height:1.9;
  }
  .newsletter-form { display:flex; gap:10px; justify-content:center; max-width:500px; margin:0 auto; }
  .newsletter-form input {
    flex:1; padding:18px 24px; border:1px solid var(--rule); border-radius:0;
    font-size:14px; font-family:inherit; outline:none; background:var(--white);
    transition:border-color .25s; color:var(--ink-soft); font-weight:400;
  }
  .newsletter-form input::placeholder { color:var(--mist); }
  .newsletter-form input:focus { border-color:var(--gold); }

  /* ═══ FOOTER ═══ */
  footer {
    background: var(--ink); color: rgba(255,255,255,0.30);
    padding: 96px 0 32px; font-size: 13px; line-height: 2.5;
  }
  footer .logo { font-size:24px; color:rgba(255,255,255,0.60); margin-bottom:12px; }
  footer .logo em { color:var(--gold); }
  .footer-grid { display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr; gap:64px; margin-bottom:64px; }
  .footer-grid h4 {
    font-size:9px; font-weight:600; letter-spacing:3px;
    text-transform:uppercase; color:rgba(255,255,255,0.38); margin-bottom:26px;
  }
  .footer-grid a {
    display:block; color:rgba(255,255,255,0.22); text-decoration:none;
    font-size:12px; transition:color .25s; font-weight:350;
  }
  .footer-grid a:hover { color:var(--gold); }
  .footer-brand p {
    font-size:12px; line-height:1.9; margin-top:12px;
    max-width:260px; color:rgba(255,255,255,0.20);
  }
  .footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.06); padding-top: 32px;
    display: flex; justify-content: space-between; align-items: center;
    font-size: 11px; color: rgba(255,255,255,0.16); font-weight:350;
  }
  .footer-social { display: flex; gap: 28px; }
  .footer-social a {
    color: rgba(255,255,255,0.20); text-decoration: none;
    font-size: 11px; letter-spacing: 0.6px; transition: color .25s;
  }
  .footer-social a:hover { color: var(--gold); }


  /* ═══ CART SIDEBAR ═══ */
  .cart-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.25); z-index:200; opacity:0; pointer-events:none; transition:opacity 0.3s; }
  .cart-overlay.open { opacity:1; pointer-events:auto; }
  .cart-sidebar { position:fixed; top:0; right:0; width:420px; height:100vh; background:var(--white); z-index:201; display:flex; flex-direction:column; transform:translateX(100%); transition:transform 0.35s cubic-bezier(0.22,0.61,0.36,1); box-shadow:-4px 0 40px rgba(0,0,0,0.06); }
  .cart-sidebar.open { transform:translateX(0); }
  .cart-header { padding:20px 28px; border-bottom:1px solid var(--rule); display:flex; align-items:center; justify-content:space-between; }
  .cart-header h2 { font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:1.5rem; font-weight:400; letter-spacing:0.5px; color:var(--ink); }
  .cart-close { font-size:22px; color:var(--stone); cursor:pointer; line-height:1; transition:color 0.2s; }
  .cart-close:hover { color:var(--ink); }
  .cart-items { flex:1; overflow-y:auto; padding:16px 28px; }
  .cart-empty { text-align:center; padding:60px 0; color:var(--stone); font-size:13px; font-style:italic; }
  .cart-item { display:flex; gap:16px; padding:16px 0; border-bottom:1px solid var(--rule); align-items:flex-start; }
  .cart-item-img { width:72px; height:72px; flex-shrink:0; background:var(--gold-faint); display:flex; align-items:center; justify-content:center; }
  .cart-item-img img { width:100%; height:100%; object-fit:contain; }
  .cart-item-info { flex:1; min-width:0; }
  .cart-item-name { font-size:13px; font-weight:500; color:var(--ink); margin-bottom:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .cart-item-price { font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:17px; color:var(--ink); }
  .cart-item-qty { display:flex; align-items:center; gap:8px; margin-top:6px; }
  .qty-btn { width:24px; height:24px; border:1px solid var(--rule); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; color:var(--stone); cursor:pointer; transition:all 0.2s; line-height:1; }
  .qty-btn:hover { border-color:var(--ink); color:var(--ink); }
  .qty-val { font-size:12px; color:var(--ink); min-width:16px; text-align:center; }
  .cart-item-remove { margin-left:auto; font-size:10px; color:var(--stone); cursor:pointer; text-transform:uppercase; letter-spacing:0.8px; padding-top:6px; transition:color 0.2s; }
  .cart-item-remove:hover { color:#c44; }
  .cart-footer { border-top:1px solid var(--rule); padding:20px 28px; }
  .cart-subtotal { display:flex; justify-content:space-between; margin-bottom:16px; font-size:14px; }
  .cart-subtotal-label { color:var(--stone); }
  .cart-subtotal-val { font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif; font-size:20px; color:var(--ink); }
  .btn-checkout { display:block; width:100%; padding:12px; background: #E89B84; color: #fff; font-family:'Inter',sans-serif; font-size:12px; text-transform:uppercase; letter-spacing:1.5px; cursor:pointer; transition:background 0.25s; text-align:center; border-radius:4px; text-decoration:none; }
  .btn-checkout:hover { background: #D4A574; }

  /* ═══ TOAST ═══ */
  .toast { position:fixed; bottom:32px; left:50%; transform:translateX(-50%); background: #E89B84; color: #fff; padding:10px 28px; border-radius:30px; font-size:12px; letter-spacing:0.5px; z-index:300; opacity:0; transition:opacity 0.3s; pointer-events:none; }
  .toast.show { opacity:1; }

  /* ═══ RWD ═══ */
  @media (max-width:768px) {
    .container { padding:0 24px; }
    .nav-links { display:none; }
    .nav-links.open { display:flex; flex-direction:column; gap:16px; position:absolute; top:100%; left:0; right:0; background:rgba(249,246,240,0.98); backdrop-filter:blur(12px); padding:20px 24px; border-bottom:1px solid var(--rule); z-index:1000; }
    .hamburger { display:flex!important; flex-direction:column; justify-content:center; gap:5px; width:36px; height:36px; background:none; border:none; cursor:pointer; padding:6px; }
    .hamburger span { display:block; width:100%; height:2px; background:var(--ink); transition:all 0.3s var(--ease); }
    .hamburger.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
    .hamburger.open span:nth-child(2) { opacity:0; }
    .hamburger.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
    .hero { padding:96px 0 72px; }
    .hero h1 { font-size:40px; letter-spacing:-1px; }
    .hero .sub { font-size:15px; }
    .section { padding:80px 0; }
    .story-grid { grid-template-columns:1fr; gap:40px; }
    .kiln-grid { grid-template-columns:repeat(2,1fr); }
    .kiln-card:nth-child(2n) { border-right:none; }
    .kiln-card:nth-child(n+9) { border-bottom:1px solid var(--rule); }
    /* Timeline mobile: all single-column */
    .timeline::before { left:20px; }
    .tl-row { flex-direction:column !important; padding-left:44px; margin-bottom:44px; }
    .tl-row:nth-child(even) .tl-year,
    .tl-row:nth-child(odd) .tl-year { order:1; width:100%; text-align:left; padding:0; font-size:32px; }
    .tl-row:nth-child(even) .tl-body,
    .tl-row:nth-child(odd) .tl-body { order:2; width:100%; text-align:left; padding:0; margin-top:6px; }
    .tl-dot { left:20px; }
    .process-steps { grid-template-columns: 1fr; gap: 36px; }
    .products-grid { grid-template-columns:1fr; gap:72px; }
    .product-card { grid-template-columns:1fr; gap:28px; }
    .masters-grid { grid-template-columns:1fr; gap:40px; }
    .reviews-grid { grid-template-columns:1fr; }
    .gift-grid { grid-template-columns:1fr; }
    .faq-grid { grid-template-columns:1fr; }
    .care-grid { grid-template-columns:1fr; }
    .footer-grid { grid-template-columns:1fr 1fr; gap:36px; }
    .newsletter-form { flex-direction:column; }
    .btn-underline { margin-left:20px; }
    .story-text .quote { font-size:21px; }
    .stat-row { flex-wrap:wrap; gap:32px; }
    .manifesto-body { font-size:17px; }
    .timeline::before { left:20px; }
    .tl-row { flex-direction:column !important; padding-left:44px; }
    .tl-row:nth-child(even) .tl-year,
    .tl-row:nth-child(odd) .tl-year { order:1; width:100%; text-align:left; padding:0; font-size:30px; }
    .tl-row:nth-child(even) .tl-body,
    .tl-row:nth-child(odd) .tl-body { order:2; width:100%; text-align:left; padding:0; margin-top:6px; }
    .tl-dot { left:20px; }
    .cart-sidebar { width:100%; }
  }