/* ══ GLOBAL & FONT OPTIMIZATION ══ */
.craftsmanship-section,
.collection-banner,
.breadcrumb,
.product-name,
.product-price,
.craft-btn,
.s1-sub,
.s2-desc {
    font-family: 'Futura-Light', sans-serif !important;
}

html {
    scroll-behavior: smooth;
}

/* ══ SECTION 1: ARTISAN (COMPRESSED) ══ */
#s1 {
    display: grid;
    grid-template-columns: 48% 52%;
    background: #fff;
    min-height: auto; /* Height strictly controlled by content */
}

.s1-left { position: relative; overflow: hidden; max-height: 450px; } /* Height capped */
.s1-left img {
    width: 100%; height: 100%;
    object-fit: cover; object-position: 55% top; display: block;
    filter: sepia(22%) contrast(1.1) brightness(0.92) saturate(1.1);
}

.s1-right {
    display: flex; flex-direction: column; justify-content: center;
    background: #fff;
    padding: 20px 40px !important; /* Reduced padding */
}

.s1-title {
    font-family: 'IM Fell English', serif;
    font-style: italic;
    color: #1a0e05;
    line-height: 1.1;
    font-size: 2.2rem; /* Reduced from 3rem */
    margin-bottom: 10px;
}

.s1-rule {
    width: 100%; height: 1px;
    background: linear-gradient(to right, rgba(135,100,45,0.4), rgba(135,100,45,0.05));
    margin-bottom: 15px;
}

.s1-sub {
    color: #555;
    letter-spacing: 0.01em;
    font-size: 14px;
    line-height: 1.4; /* Compressed */
    margin-bottom: 15px;
}

.artisan-name {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600; color: #1a0e05;
    font-size: 1.2rem;
}

.artisan-meta { color: #666; line-height: 1.4; font-size: 13px; }

.artisan-quote {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic; color: #444;
    font-size: 15px;
    margin: 10px 0;
    line-height: 1.4;
}

.btn-row { display: flex; gap: 8px; margin-top: 10px; }

.btn-watch, .btn-craft {
    padding: 8px 18px; /* Compressed buttons */
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.05em;
    cursor: pointer;
    border-radius: 2px;
    transition: all 0.2s;
}

.btn-watch { background: #7a5c10; color: #fff; border: none; }
.btn-craft { background: transparent; color: #7a5c10; border: 1.5px solid #7a5c10; }

/* ══ SECTION 2: CRAFT PROCESS (COMPRESSED) ══ */
#s2 {
    background: #fff;
    padding: 20px 0 !important; /* Minimal vertical padding */
}

.s2-header { text-align: center; margin-bottom: 15px; }

.s2-title {
    font-family: 'IM Fell English', serif; font-style: italic;
    color: #1a0e05; line-height: 1.06;
    font-size: 2rem;
}

.s2-desc {
    color: #555;
    margin: 0 auto; 
    line-height: 1.4;
    font-size: 14px;
    max-width: 600px;
}

/* Tracker Optimization */
.tracker {
    display: flex; align-items: flex-start; justify-content: center;
    margin: 0 auto 12px auto;
}
.t-node { display: flex; flex-direction: column; align-items: center; cursor: pointer; }
.t-circle {
    border-radius: 50%;
    border: 1.5px solid #9e8035; background: #fff;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600; color: #7a5c10; transition: all 0.26s;
    width: 24px !important; height: 24px !important; font-size: 0.65rem !important;
}
.t-node.active .t-circle {
  background: #7a5c10; border-color: #7a5c10; color: #fff;
  box-shadow: 0 0 0 4px rgba(122,92,16,0.15);
}
.t-lbl { color: #8a6a38; font-weight: 400; white-space: nowrap; font-size: 0.6rem !important; margin-top: 3px; }
.t-node.active .t-lbl { font-weight: 700; color: #5c3d0a; }
.t-line { flex: 1; height: 1px; background: #9e8035; margin-top: 12px; }
.t-line.passed { background: #7a5c10; }

.step-body { 
    display: grid; 
    grid-template-columns: 48% 52%; 
}

.step-photo { position: relative; overflow: hidden; }

.step-panel {
    background: #fff;
}

.sp-title {
  font-family: 'Cormorant Garamond', serif; font-weight: 600;
  color: #1a0e05;
}

.sp-desc { color: #555; line-height: 1.75; }

.sub-th {
  position: relative; overflow: hidden; border-radius: 3px;
  aspect-ratio: 1/1.05; cursor: pointer;
  border: 1px solid rgba(155,120,65,0.28);
  transition: transform 0.22s, box-shadow 0.22s;
}

.sub-th:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(22,12,4,0.22); }

/* ══ COLLECTION BANNER OPTIMIZATION ══ */
.collection-banner {
    padding: 15px 0 !important;
}

.banner-image img {
    max-height: 380px; /* Reduced from 500px */
    object-fit: cover;
    width: 100%;
}

.banner-text h1 { font-size: 2.2rem; margin-bottom: 10px; }
.banner-text p { line-height: 1.4; font-size: 14px; margin-bottom: 15px; }

/* ══ PRODUCT GRID OPTIMIZATION ══ */
.product-card {
    height: 420px; /* Reduced from 500px to fit more in view */
}

.product-info {
    padding: 10px;
}

.product-name { font-size: 0.85rem; }
.product-price { font-size: 0.9rem; }

/* ══ TWO PART SECTION (BUY NOW / ARTISAN) ══ */
.two-part-section {
    width: 100%;
    height: auto;
    display: flex;
}

.two-part-section .part {
    width: 50%;
    height: 300px; /* Reduced from 400px */
}

.buy-now-box::after, .detail-now-box::after {
    font-size: 28px; /* Reduced from 42px */
}

/* ══ RESPONSIVE FIXES ══ */
@media (max-width: 820px) {
    #s1, .step-body { grid-template-columns: 1fr; }
    .s1-left, .step-photo { height: 250px !important; }
    .s1-right, .step-panel { padding: 15px !important; }
    .s1-title { font-size: 1.8rem; }
}