* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Header with back button */
.header {
    width: 100%;
    height: 54px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.header-inner {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 160px;
}

.back-button {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border-radius: 40px;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
    flex-shrink: 0;
}

.back-button:hover {
    background-color: #f5f5f5;
}

.back-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.back-text {
    font-family: 'Noto Sans', sans-serif;
    font-weight: 640;
    font-size: 20px;
    color: #363635;
    letter-spacing: 0.2px;
    white-space: nowrap;
}

/* Main content area */
.main-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    position: relative;
}

.main-content-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 120px;
    align-items: center;
    width: 100%;
}

.text-section {
    display: flex;
    flex-direction: column;
    gap: 52px;
    align-items: center;
    width: 100%;
}

.text-content {
    display: flex;
    flex-direction: column;
    gap: 36px;
    align-items: center;
    text-align: center;
    color: #363635;
    width: 100%;
}

.main-heading {
    font-family: 'Noto Sans', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 44px;
    letter-spacing: -0.14px;
    text-transform: capitalize;
    max-width: 804px;
    margin: 0;
    width: 100%;
}

.description {
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 36px;
    letter-spacing: 0.52px;
    margin: 0;
    width: 100%;
    min-width: fit-content;
}

.start-shopping-button {
    background-color: #30a67f;
    color: #e6f4ef;
    border: none;
    border-radius: 20px;
    padding: 17px 32px;
    width: 280px;
    height: 58px;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 640;
    font-size: 18px;
    letter-spacing: 0.2px;
    cursor: pointer;
    transition: background-color 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.start-shopping-button:hover {
    background-color: #2a9670;
}

/* Illustration */
.illustration {
    width: 608px;
    height: 611px;
    position: relative;
    flex-shrink: 0;
}

.illustration svg {
    width: 100%;
    height: 100%;
    display: block;
}




/* Responsive design - Large tablets and small desktops */
@media (max-width: 1200px) {
    .header-inner,
    .main-content-inner {
        padding: 0 80px;
    }
    
    .illustration {
        width: 500px;
        height: 503px;
    }
}

/* Tablets */
@media (max-width: 768px) {
    .header-inner,
    .main-content-inner {
        padding: 0 40px;
    }
    
    .content-wrapper {
        gap: 80px;
    }
    
    .text-section {
        gap: 40px;
    }
    
    .main-heading {
        font-size: 28px;
        line-height: 38px;
        max-width: 600px;
    }
    
    .description {
        font-size: 20px;
        line-height: 32px;
    }
    
    .start-shopping-button {
        width: 240px;
        font-size: 16px;
        height: 52px;
    }
    
    .illustration {
        width: 400px;
        height: 402px;
    }
}

/* Mobile landscape and small tablets */
@media (max-width: 640px) {
    .header-inner,
    .main-content-inner {
        padding: 0 24px;
    }
    
    .back-text {
        font-size: 18px;
    }
    
    .back-icon {
        width: 36px;
        height: 36px;
    }
    
    .content-wrapper {
        gap: 60px;
    }
    
    .main-heading {
        font-size: 24px;
        line-height: 32px;
        max-width: 500px;
    }
    
    .description {
        font-size: 18px;
        line-height: 28px;
    }
    
    .start-shopping-button {
        width: 220px;
        font-size: 16px;
        height: 50px;
        padding: 15px 24px;
    }
    
    .illustration {
        width: 320px;
        height: 322px;
    }
}

/* Mobile portrait */
@media (max-width: 480px) {
    .header-inner,
    .main-content-inner {
        padding: 0 16px;
    }
    
    .back-button {
        gap: 8px;
        padding: 10px;
    }
    
    .back-text {
        font-size: 16px;
    }
    
    .back-icon {
        width: 32px;
        height: 32px;
    }
    
    .content-wrapper {
        gap: 50px;
    }
    
    .text-section {
        gap: 32px;
    }
    
    .text-content {
        gap: 28px;
    }
    
    .main-heading {
        font-size: 22px;
        line-height: 30px;
        max-width: 400px;
    }
    
    .description {
        font-size: 16px;
        line-height: 26px;
    }
    
    .start-shopping-button {
        width: 200px;
        padding: 14px 20px;
        height: 48px;
        font-size: 15px;
    }
    
    .illustration {
        width: 280px;
        height: 282px;
    }
}

/* Very small mobile devices */
@media (max-width: 360px) {
    .header-inner,
    .main-content-inner {
        padding: 0 12px;
    }
    
    .content-wrapper {
        gap: 40px;
    }
    
    .main-heading {
        font-size: 20px;
        line-height: 28px;
        max-width: 320px;
    }
    
    .description {
        font-size: 15px;
        line-height: 24px;
    }
    
    .start-shopping-button {
        width: 180px;
        font-size: 14px;
        height: 44px;
    }
    
    .illustration {
        width: 240px;
        height: 242px;
    }
}

/* Accessibility and interaction improvements */
.back-button:focus {
    outline: 2px solid #30a67f;
    outline-offset: 2px;
}

.start-shopping-button:focus {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}

.start-shopping-button:active {
    transform: translateY(1px);
}

.back-button:active {
    transform: scale(0.98);
}

/* Print styles */
@media print {
    .header-inner,
    .main-content-inner {
        padding: 0 20px;
    }
    
    .illustration {
        width: 400px;
        height: 400px;
    }
}

/* ====== Product Compare Page Styles (migrated from inline CSS) ====== */
:root {
    --primary-green: #30a67f;
    --light-green: #e6f4ef;
    --hover-green: #1f8462;
    --border-green: #30a67f;
    --text-primary: #363635;
    --text-secondary: #444441;
    --text-muted: #b4b4b3;
    --text-light: #7c7c7a;
    --border-color: #b4b4b3;
    --border-light: rgba(180, 180, 179, 0.4);
    --border-subtle: #ebebea;
    --red-color: #ff3b30;
    --white: #ffffff;
    --background: #f8f9fa;
}


/* ===== Scoped overrides for compare page ===== */
.compare-page h1.section-title {
color: #B4B4B3;
font-family: "Noto Sans";
font-size: 24px;
font-style: normal;
font-weight: 600;
line-height: 28px; 
letter-spacing: -0.12px;
text-transform: capitalize;	
margin-bottom:40px;	
	
}

/* Center layout and constrain width similar to reference */
.compare-page .container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

.compare-page .categories-container { display: flex; gap: 12px; height: 54px; align-items: center; margin-bottom: 24px; overflow-x: auto; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
.compare-page .categories-container::-webkit-scrollbar { display: none; }

.compare-page .category-item { 
	display: flex;
	padding: 20px;
	align-items: center;
	gap: 10px;
	align-self: stretch;
	border-radius: 20px;
	border: 1px solid #EBEBEA;
	color: #363635;
	text-align: center;
	font-family:"Noto Sans";
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 28px; 
	letter-spacing: 0.2px;	
}
.compare-page .category-item.active {
border-radius: 20px;
border: 1px solid #363635;
background: #E6F4EF;	
}
.compare-page .category-item:hover { background:#e0f9f0; }

.compare-page .product-grid { display: flex; gap: 20px; overflow-x: auto; padding-bottom: 20px; margin-bottom: 80px; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; }
.compare-page .product-card {
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-start;
gap: 16px;
border-radius: 20px;
border: 1px solid #B4B4B3;	
width: 226px;	
}
.compare-page .product-card-inactive { display: none !important; }
.compare-page .product-card { box-shadow: 0 2px 10px rgba(0,0,0,0.04); }
.compare-page .product-image { width: 201px; height: 150px; border-radius: 10px; border: 1px solid var(--border-light); overflow: hidden; position: relative; }
.compare-page .product-image img { width: 100%; height: 100%; object-fit: cover; display: block; }

.compare-page .product-name {
	color: #000;
	font-family: Lato;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px; 
	letter-spacing: 0.2px;
	opacity:0.6;
}

.compare-page .price-container { display: flex; flex-direction: column; gap: 12px; }
.compare-page .discount-badge { border: 1px solid var(--hover-green); color: var(--hover-green); padding: 2px 6px; border-radius: 6px; font-family: 'Lato', sans-serif; font-weight: 700; font-size: 11px; width: fit-content; }
.compare-page .price {
	color: #000;
	font-family: "Noto Sans";
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
	line-height: 32px; 
	letter-spacing: 0.22px;	
}
.compare-page .price-unit { font-size: 14px; color: var(--text-light); margin-left: 4px; }
.compare-page .color-chips { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.compare-page .color-chip img { width: 28px; height: 28px; border-radius: 50%; border: 1px solid rgba(54, 54, 53, 0.5); }
.compare-page .color-more a { color: #444441; font-family: Lato; font-size: 12px; font-style: normal; font-weight: 400; line-height: 20px; letter-spacing: 0.12px; opacity: 0.6; text-decoration: none; }
.compare-page .action-buttons { display: grid; grid-template-columns: 40px 1fr; column-gap: 10px; width: 100%; align-items: center; }
.compare-page .action-buttons .btn { width: 100%; }
.compare-page .btn { border-radius: 20px; padding: 13px 32px; font-size: 18px; font-weight: 640; cursor: pointer; border: 1px solid; text-decoration: none; text-align: center; transition: all 0.2s; display: flex; align-items: center; justify-content: center; }
.compare-page .btn-view { flex: 1; background: white; color: var(--primary-green); border-color: var(--primary-green); }
.compare-page .btn-view:hover { background: var(--light-green); }
.compare-page .btn-delete { 
	display: flex;
	width: 48px;
	height: 40px;
	padding: 13px 32px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border-radius: 20px;
	border: 1px solid #FF3B30;	
}
.compare-page .btn-delete svg { width: 20px; height: 20px; display: block; }
.compare-page .btn-delete:hover { background: #e0f9f0; }

.compare-page .separator { height: 1px; background: repeating-linear-gradient(90deg, var(--border-color) 0, var(--border-color) 12px, transparent 12px, transparent 24px); opacity: 0.4; margin: 80px 0; }

.compare-page .filters-container { display: flex; gap: 12px; height: 54px; align-items: center; margin-bottom: 24px; flex-wrap: wrap; }
.compare-page .filter-item { padding: 12px; border-radius: 20px; border: 1px solid rgba(54, 54, 53, 0.5); background: white; color: var(--text-primary); font-size: 16px; cursor: pointer; transition: all 0.2s; display: flex; align-items: center; gap: 4px; }
.compare-page .filter-item svg { width: 16px; height: 16px; }
.compare-page .filter-item.active { background: #e0f9f0; color: var(--hover-green); border-color: var(--hover-green); }
.compare-page .filter-divider { width: 0px; height: 40px; border-left: 1px solid var(--border-light); opacity: 0.4; }

.compare-page .comparison-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; background: transparent; border-radius: 20px; overflow-x: auto; min-height: fit-content; }
.compare-page .comparison-card { padding: 20px; border: none; display: flex; flex-direction: column; gap: 24px; min-width: 0; background: transparent; }
.compare-page .comparison-card-header { display: flex; flex-direction: column; gap: 12px; }
.compare-page .comparison-image { width: 160px; height: 119px; border-radius: 10px; border: 1px solid var(--border-light); overflow: hidden; }
.compare-page .comparison-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.compare-page .color-grid { display: grid; grid-template-columns: repeat(4, 28px); gap: 16px; width: 160px; height: 72px; }
.compare-page .features { display: flex; flex-direction: column; gap: 8px; }
.compare-page .feature-item { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 20px; font-family: 'Lato', sans-serif; font-size: 12px; color: var(--text-primary); }
.compare-page .feature-item-wide { width: 166px; }
.compare-page .best-for { display: flex; flex-wrap: wrap; gap: 12px; }
.compare-page .best-for-item { padding: 12px; border-radius: 20px; background: #e0f9f0; color: var(--hover-green); border: 1px solid var(--hover-green); font-size: 16px; }

.compare-page .calculator-box {
	display: flex;
	padding: 16px;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	align-self: stretch; 
	border-top: 1px solid rgba(180, 180, 179, 0.40);
}
.compare-page .calculator-content { display: flex; flex-direction: column; gap: 16px; }
.compare-page .dimension-header { display: flex; justify-content: space-between; align-items: center; }
.compare-page .dimension-label {
color: #363635;
font-family: Lato;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 24px; 
letter-spacing: 0.2px;	
}
.compare-page .helper-text{
color: #7C7C7A;
font-family: Lato;
font-size: 12px;
font-style: normal;
font-weight: 400;
line-height: 20px; /* 166.667% */
letter-spacing: 0.12px;
}
.compare-page .widthtype{
color: #B4B4B3;
font-family: Lato;
font-size: 10px;
font-style: normal;
font-weight: 400;
line-height: 20px;
letter-spacing: 0.4px;
}
.compare-page .w2w-fieldset{
display: flex;
height: 48px;
align-items: center;
gap: 4px;
align-self: stretch;
}
.compare-page .w2w-chip{
display: flex;
padding: 16px 12px;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 10px;
flex: 1 0 0;
align-self: stretch;
border-radius: 10px;
border: 1px solid #363635;
background: rgba(255, 255, 255, 0.50);
color:#363635;
font-family: Lato;
font-size:12px;
font-style: normal;
font-weight: 400;
line-height: 20px; /* 166.667% */
letter-spacing: 0.12px;	
}
.compare-page .w2w-chip:hover{
border-radius: 10px;
border: 1px solid #30A67F;
background: #E6F4EF;
color:#30A67F;	
}

.compare-page .w2w-chip.active{
border-radius:10px;
border: 1px solid #30A67F;
background: #E6F4EF;	
color:#30A67F;	
}
.calbox{
	display:flex;
	flex-direction:column;
}
.compare-page .w2w-input{
	display: flex;
	padding: 12px;
	align-items: center;
	gap: 8px;
	align-self: stretch;
	border-radius: 10px;
	border: 1px solid rgba(54, 54, 53, 0.50);
	background: rgba(255, 255, 255, 0.50);	
	color: #B4B4B3;
	font-family: Lato;
	font-size: 12px;
	font-style: normal;
	font-weight:400;
	line-height: 20px; /* 166.667% */
	letter-spacing: 0.12px;	
}
.compare-page .w2w-select{
	display: flex;
	padding: 12px 10px;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 8px;
	border-radius: 10px;
    border: 1px solid #B4B4B3;
    background: rgba(255, 255, 255, 0.50);
	color: #363635;
	font-family: Lato;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px; 
	letter-spacing: 0.12px;	
	width: 68px;
}
.compare-page .qty-label{
	color: #7C7C7A;
	font-family: Lato;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px;
	letter-spacing: 0.12px;
}
.compare-page .w2w-qty{
	display:flex; 
	flex-direction:column;
	align-items: start;
	margin-top:16px;
}
.qty-box{
	width: 100%;
    display: inline-flex;
}
.compare-page .w2w-price{
	display:flex; 
	flex-direction:column;
	gap:8px;
}
.compare-page .w2w-price .value{
color: #363635;
font-family: "Noto Sans";
font-size: 24px;
font-style: normal;
font-weight: 600;
line-height: 28px; /* 116.667% */
letter-spacing: -0.12px;
text-transform: capitalize;	
}

.compare-page .input-field { background: rgba(255, 255, 255, 0.5); border: 1px solid rgba(54, 54, 53, 0.5); border-radius: 10px; padding: 12px; font-family: 'Lato', sans-serif; font-size: 12px; color: var(--text-muted); width: 100%; }
.compare-page .input-field.active { background: var(--light-green); border-color: var(--primary-green); color: var(--primary-green); }
.compare-page .unit-selector { background: rgba(255, 255, 255, 0.5); border: 1px solid var(--border-color); border-radius: 10px; padding: 12px 10px; display: flex; align-items: center; gap: 5px; font-family: 'Lato', sans-serif; font-size: 12px; color: var(--text-primary); }
.compare-page .unit-selector-spaced { margin-top: 8px; }
.compare-page .quantity-controls { display: flex; align-items: center; gap: 8px; }
.compare-page .quantity-btn { width: 24px; height: 24px; border: none; background: none; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.compare-page .quantity-display { padding: 6px 8px; font-size: 24px; font-weight: 600; color: var(--text-primary); width: 36px; text-align: center; }
.compare-page .price-display { font-size: 24px; font-weight: 600; color: var(--text-primary); }
.compare-page .btn-add-basket { background: var(--primary-green); color: var(--light-green); border: none; border-radius: 20px; height: 44px; padding: 0 24px; font-size: 16px; font-weight: 640; cursor: pointer; width: 100%; margin-bottom: 12px; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
.compare-page .btn-add-basket:hover { background: var(--hover-green); }
.compare-page .btn-remove { background: white; color: var(--red-color); border: 1px solid var(--red-color); border-radius: 20px; height: 44px; padding: 0 24px; font-size: 16px; font-weight: 640; cursor: pointer; width: 100%; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
.compare-page .btn-remove:hover { background: #ffebea; }

@media (max-width: 768px) {
  .compare-page .categories-container { flex-wrap: wrap; height: auto; gap: 8px; }
  .compare-page .category-item { padding: 12px 16px; font-size: 16px; }
  .compare-page .product-grid { flex-direction: column; gap: 15px; }
  .compare-page .product-card { min-width: 100%; max-width: none; }
  .compare-page .product-image { width: 100%; height: 200px; }
  .compare-page .comparison-grid { grid-template-columns: 1fr; overflow-x: visible; display: grid; gap: 0; }
  .compare-page .comparison-card { border-right: none; border-bottom: 1px solid var(--border-light); padding: 15px; }
  .compare-page .comparison-card:last-child { border-bottom: none; }
  .compare-page .comparison-image { width: 100%; height: 150px; }
  .compare-page .color-grid { width: 100%; grid-template-columns: repeat(4, 1fr); }
  .compare-page .filters-container { flex-wrap: wrap; gap: 8px; height: auto; }
  .compare-page .filter-item { font-size: 14px; padding: 10px; }
}

