@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Playfair+Display:wght@500;700&display=swap');

/* Font size adjustments to match source legibility */
:root {
    --font-body-scale: 1.1; /* Increase body font scale */
    --font-heading-scale: 1.4; /* Increase heading font scale */
}

/* Increase base font sizes */
body {
    font-size: 1.7rem !important; /* Up from 1.5rem */
}

@media screen and (min-width: 750px) {
    body {
        font-size: 1.8rem !important; /* Up from 1.6rem */
    }
}

/* Proper heading hierarchy with clear differentiation */
h1, .h1 { font-size: calc(var(--font-heading-scale) * 4.5rem) !important; }
h2, .h2 { font-size: calc(var(--font-heading-scale) * 2rem) !important; }
h3, .h3 { font-size: calc(var(--font-heading-scale) * 1.8rem) !important; }
h4, .h4 { font-size: calc(var(--font-heading-scale) * 1.4rem) !important; }

/* Hero section specific sizing */
.image-with-text__heading.h1 {
    font-size: 5.5rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

.image-with-text__text.h2,
.image-with-text__heading + p {
    font-size: 2.2rem !important;
    line-height: 1.3 !important;
}

/* Increase paragraph sizes significantly */
p, .rich-text__text p {
    font-size: 1.9rem !important;
    line-height: 1.6 !important;
}

.image-with-text__text p {
    font-size: 1.8rem !important;
}

@media screen and (max-width: 749px) {
    /* Hero H1 on mobile */
    .image-with-text__heading.h1 {
        font-size: 3.2rem !important;
    }
    
    /* Hero H2/subtitle on mobile */
    .image-with-text__text.h2,
    .image-with-text__heading + p {
        font-size: 1.6rem !important;
    }
    
    /* Paragraphs on mobile */
    p {
        font-size: 1.6rem !important;
    }
}

/* Ensure buttons and links are readable */
.button, button, a {
    font-size: 1.6rem !important;
}

/* Rich text sections */
.rich-text__text {
    font-size: 1.8rem !important;
    line-height: 1.6 !important;
}

.rich-text__heading {
    font-size: calc(var(--font-heading-scale) * 2.5rem) !important;
}

/* Product names - these are h2 elements in the product sections */
.image-with-text__heading.h2:not(.h1) {
    font-size: 2.8rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 1.5rem 0 1rem 0 !important;
}

/* Product name links */
.image-with-text__heading.h2 a {
    font-size: inherit !important;
    font-weight: inherit !important;
    text-decoration: none !important;
}

/* Make sure smaller headings like "Pros" and "Cons" don't get too big */
.image-with-text__heading.pros,
.image-with-text__heading.cons {
    font-size: 2rem !important;
}

@media screen and (max-width: 749px) {
    .image-with-text__heading.h2:not(.h1) {
        font-size: 2.2rem !important;
    }
    
    .image-with-text__heading.pros,
    .image-with-text__heading.cons {
        font-size: 1.8rem !important;
    }
}

.totals{display:flex;justify-content:center;align-items:flex-end}.totals>*{font-size:1.6rem;margin:0}.totals>h2{font-size:calc(var(--font-heading-scale) * 1.6rem)}.totals *{line-height:1}.totals>*+*{margin-left:2rem}.totals__total{margin-top:.5rem}.totals__total-value{font-size:1.8rem}.cart__ctas+.totals{margin-top:2rem}@media all and (min-width: 750px){.totals{justify-content:flex-end}}
/*# sourceMappingURL=/cdn/shop/t/6/assets/component-totals.css.map?v=15906652033866631521723818885 */
