/* /Components/Layout/CoffeeLandingLayout.razor.rz.scp.css */
/* FEATURE-0125 Coffee landing page variant - Scope the white header and wider canvas
   to this layout so the established landing page and pricing routes keep their styling. */
.coffee-landing-shell[b-8jild2rdxj] {
    --coffee-ink: #0e3326;
    --coffee-muted: #46534e;
    --coffee-cream: #f8f7f2;
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    background: var(--coffee-cream);
    color: var(--coffee-ink);
    font-family: "Work Sans", "Segoe UI", sans-serif;
}

.coffee-landing-content[b-8jild2rdxj] {
    flex: 1;
    min-width: 0;
}

.coffee-landing-shell[b-8jild2rdxj]  .site-header {
    background: #fff;
    color: var(--coffee-ink);
    border-bottom: 1px solid #e4e7df;
    box-shadow: none;
}

.coffee-landing-shell[b-8jild2rdxj]  .site-nav {
    max-width: 88rem;
    min-height: 4.5rem;
    padding-block: .6rem;
}

.coffee-landing-shell[b-8jild2rdxj]  .site-brand {
    font-size: 1.375rem;
    font-weight: 750;
    letter-spacing: -.035em;
}

.coffee-landing-shell[b-8jild2rdxj]  .site-brand img {
    border-radius: .5rem;
}

.coffee-landing-shell[b-8jild2rdxj]  .desktop-links a,
.coffee-landing-shell[b-8jild2rdxj]  .mobile-links a {
    color: var(--coffee-ink);
    font-weight: 550;
}

.coffee-landing-shell[b-8jild2rdxj]  .desktop-links a:hover,
.coffee-landing-shell[b-8jild2rdxj]  .mobile-links a:hover,
.coffee-landing-shell[b-8jild2rdxj]  summary:hover,
.coffee-landing-shell[b-8jild2rdxj]  details[open] > summary {
    background: #edf3e9;
}

.coffee-landing-shell[b-8jild2rdxj]  summary {
    border-color: #dbe2d7;
    color: var(--coffee-ink);
}

.coffee-landing-shell[b-8jild2rdxj]  .mobile-links {
    background: #fff;
    border-bottom: 1px solid #e4e7df;
    box-shadow: 0 8px 20px #173e2b10;
}

.coffee-landing-shell[b-8jild2rdxj]  .footer-inner,
.coffee-landing-shell[b-8jild2rdxj]  .footer-bottom,
.coffee-landing-shell[b-8jild2rdxj]  .analytics-preferences {
    max-width: 88rem;
}

@media (max-width: 639px) {
    .coffee-landing-shell[b-8jild2rdxj]  .site-nav {
        min-height: 4.25rem;
    }

    .coffee-landing-shell[b-8jild2rdxj]  .site-brand {
        font-size: 1.25rem;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Growing content must not be
   clipped by a viewport-height wrapper when translated text wraps on mobile. */
.landing-shell[b-7aq555qinx] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh; /* Tracks height as mobile browser chrome changes. */
}
.landing-content[b-7aq555qinx] {
    flex: 1;
    width: 100%;
    max-width: 64rem;
    margin-inline: auto;
    padding: clamp(2rem, 6vw, 4rem) var(--landing-gutter) 3rem;
    overflow-wrap: anywhere;
}
/* /Components/Layout/NavigationLinks.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Keep translated links readable
   touch targets in both the mobile disclosure and the desktop row. */
a[b-04ki8g14zg] {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: .625rem .75rem;
    border-radius: .375rem;
    color: #fff;
    font-size: .9375rem;
    text-decoration: none;
}
a:hover[b-04ki8g14zg] { background: #ffffff20; }
a:focus-visible[b-04ki8g14zg] { outline: 3px solid #173e2b; outline-offset: 2px; }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - The compact header reserves
   room for language selection and touch controls without covering page headings. */
.site-header[b-4oo01xa9gq] {
    position: sticky;
    top: 0;
    z-index: 10;
    background: #48956c;
    color: #fff;
    box-shadow: 0 1px 5px #0002;
}
.site-nav[b-4oo01xa9gq] {
    display: flex;
    align-items: center;
    gap: .5rem;
    max-width: 64rem;
    min-height: 4rem;
    margin-inline: auto;
    padding: .5rem var(--landing-gutter);
}
.site-brand[b-4oo01xa9gq] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-height: 44px;
    margin-right: auto;
    color: inherit;
    font-size: 1.125rem;
    font-weight: 600;
    text-decoration: none;
}
.site-brand img[b-4oo01xa9gq] { flex: none; }
.desktop-links[b-4oo01xa9gq] { display: none; }
summary[b-4oo01xa9gq] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-width: 44px;
    min-height: 44px;
    padding: .5rem;
    border: 1px solid #ffffff60;
    border-radius: .5rem;
    cursor: pointer;
    list-style: none;
    font-size: .875rem;
    font-weight: 600;
}
summary[b-4oo01xa9gq]::-webkit-details-marker { display: none; }
summary:hover[b-4oo01xa9gq], details[open] > summary[b-4oo01xa9gq] { background: #ffffff20; }
.site-brand:focus-visible[b-4oo01xa9gq], summary:focus-visible[b-4oo01xa9gq], .language-options a:focus-visible[b-4oo01xa9gq] {
    outline: 3px solid #173e2b;
    outline-offset: 3px;
}
.language-picker[b-4oo01xa9gq] { position: relative; }
.language-options[b-4oo01xa9gq] {
    position: absolute;
    right: 0;
    top: calc(100% + .5rem);
    z-index: 2;
    min-width: 9rem;
    padding: .5rem;
    border: 1px solid #dce7e0;
    border-radius: .5rem;
    background: #fff;
    box-shadow: 0 4px 16px #0002;
}
.language-options a[b-4oo01xa9gq] {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: .5rem .75rem;
    color: #28583e;
    text-decoration: none;
    border-radius: .25rem;
}
.language-options a:hover[b-4oo01xa9gq], .language-options a[aria-current="true"][b-4oo01xa9gq] { background: #edf5ef; }
.menu-icon[b-4oo01xa9gq] { display: flex; flex-direction: column; gap: 4px; }
.menu-icon span[b-4oo01xa9gq] { width: 20px; height: 2px; background: currentColor; }
/* The dropdown belongs to the header, not a fixed-height content wrapper. */
.mobile-links[b-4oo01xa9gq] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: .5rem var(--landing-gutter) 1rem;
    background: #48956c;
    box-shadow: 0 4px 5px #0002;
}
@media (min-width: 640px) {
    .desktop-links[b-4oo01xa9gq] { display: flex; gap: .25rem; }
    .mobile-menu[b-4oo01xa9gq] { display: none; }
}
/* /Components/Layout/SiteFooter.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Footer columns become a padded single column with touch-sized links on mobile. */
.site-footer[b-imjr3qowt0] {
    color: #263b31;
    background: #eef4ef;
    border-top: 1px solid #dce7df;
}

.footer-inner[b-imjr3qowt0] {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 2.5rem;
    max-width: 64rem;
    margin: 0 auto;
    padding: 3rem var(--landing-gutter, 1.25rem) 2rem;
}

.footer-brand[b-imjr3qowt0] {
    color: #2f7550;
    font-size: 1.6rem;
    font-weight: 750;
    text-decoration: none;
}

.footer-intro p[b-imjr3qowt0] {
    max-width: 18rem;
    margin: 0.8rem 0 1.2rem;
    line-height: 1.7;
}

.footer-links[b-imjr3qowt0] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.footer-links h2[b-imjr3qowt0] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.6rem;
}

.footer-links a[b-imjr3qowt0] {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    color: inherit;
    text-decoration: none;
}

.footer-links a:hover[b-imjr3qowt0] {
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.site-footer a:focus-visible[b-imjr3qowt0] {
    outline: 3px solid #48956c;
    outline-offset: 4px;
}

.footer-bottom[b-imjr3qowt0] {
    box-sizing: border-box;
    max-width: 64rem;
    margin: 0 auto;
    padding: 1.5rem var(--landing-gutter, 1.25rem);
    border-top: 1px solid #dce7df;
    font-size: 0.85rem;
}

.footer-bottom p[b-imjr3qowt0] {
    margin: 0;
}

.footer-bottom a[b-imjr3qowt0] {
    color: inherit;
    text-underline-offset: 0.2em;
}

@media (max-width: 48rem) {
    .footer-inner[b-imjr3qowt0] {
        grid-template-columns: 1fr;
        gap: 2rem;
        padding-top: 2rem;
    }

    .footer-intro p[b-imjr3qowt0] {
        max-width: 30rem;
    }
}
/* /Components/Legal/CompanyDetails.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Long contact details remain readable on narrow screens. */
.company-details[b-scah11wvrj] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.3rem;
    margin: 0;
    font-style: normal;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.company-details strong[b-scah11wvrj] {
    font-size: 1.1rem;
    margin-bottom: 0.2rem;
}

.company-details a[b-scah11wvrj] {
    color: inherit;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.2em;
}

.company-details > a[b-scah11wvrj] {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
}

.company-details a:focus-visible[b-scah11wvrj] {
    outline: 3px solid #48956c;
    outline-offset: 4px;
}
/* /Components/Legal/LegalDocument.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Legal pages keep consistent mobile gutters and readable text instead of wide desktop paragraphs. */
.legal-document[b-itph99hf43] {
    box-sizing: border-box;
    width: 100%;
    max-width: 48rem;
    margin: 0 auto;
    color: #263b31;
}

.legal-header[b-itph99hf43] {
    max-width: 46rem;
    margin-bottom: 2.5rem;
}

h1[b-itph99hf43] {
    /* Long Danish legal headings must remain readable at 320px without forced capitals. */
    font-size: clamp(1.625rem, 4.5vw, 2.75rem);
    text-transform: none;
    line-height: 1.15;
    letter-spacing: -0.025em;
    overflow-wrap: anywhere;
    margin: 0 0 1.25rem;
}

.legal-summary[b-itph99hf43] {
    font-size: 1.15rem;
    line-height: 1.7;
    color: #4d6155;
    margin: 0;
}

.legal-content[b-itph99hf43] {
    max-width: 46rem;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.legal-content[b-itph99hf43]  section + section {
    margin-top: 2.3rem;
}

.legal-content[b-itph99hf43]  h2 {
    margin: 0 0 0.75rem;
    font-size: 1.35rem;
    line-height: 1.35;
    font-weight: 700;
}

.legal-content[b-itph99hf43]  p {
    margin: 0 0 1rem;
}

.legal-content[b-itph99hf43]  a {
    color: #286741;
    text-underline-offset: 0.2em;
}

.legal-content[b-itph99hf43]  a:focus-visible {
    outline: 3px solid #48956c;
    outline-offset: 4px;
}

.legal-content[b-itph99hf43]  .legal-note {
    padding: 1.25rem;
    background: #eef6f1;
    border-left: 3px solid #48956c;
    border-radius: 0 0.6rem 0.6rem 0;
}

.legal-updated[b-itph99hf43] {
    margin: 3rem 0 0;
    padding-top: 1.5rem;
    border-top: 1px solid #dce7df;
    color: #5c6b62;
    font-size: 0.9rem;
}
/* /Components/Pages/CoffeeHome.razor.rz.scp.css */
/* FEATURE-0125 Coffee landing page variant - Keep the offer alongside the benefits
   on wide screens and in natural reading order on small screens. */
.coffee-home[b-o49uizmmaj] {
    position: relative;
    isolation: isolate;
    overflow: clip;
    background: var(--coffee-cream, #f8f7f2);
}

.coffee-home-scene[b-o49uizmmaj] {
    position: absolute;
    z-index: -1;
    inset-inline: 0;
    bottom: 0;
    height: 28rem;
    background-image: linear-gradient(to bottom, #f8f7f2 0%, #f8f7f2c7 14%, #f8f7f200 48%), url("/images/coffee-landing-desk.png");
    background-position: center bottom;
    background-size: cover;
    background-repeat: no-repeat;
    pointer-events: none;
}

.coffee-home-inner[b-o49uizmmaj] {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    align-items: start;
    gap: clamp(1.5rem, 3vw, 3rem);
    max-width: 88rem;
    min-height: 49rem;
    margin-inline: auto;
    padding: 2.75rem var(--landing-gutter, 2rem) 2rem;
}

.coffee-home-copy[b-o49uizmmaj] {
    min-width: 0;
    padding-top: 1rem;
    padding-bottom: 12rem;
}

.coffee-home-eyebrow[b-o49uizmmaj] {
    margin: 0 0 1.35rem;
    color: #657f66;
    font-size: .8125rem;
    font-weight: 650;
    line-height: 1.5;
    letter-spacing: .18em;
    text-transform: uppercase;
}

/* Existing public pages use uppercase headings; this variant deliberately uses
   sentence case and responsive sizing to preserve the reference's friendly hierarchy. */
.coffee-home h1[b-o49uizmmaj] {
    margin: 0;
    color: var(--coffee-ink, #0e3326);
    font-family: inherit;
    font-size: clamp(2.5rem, 4.4vw, 4.3rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.055em;
    text-transform: none;
}

.coffee-home h1 > span[b-o49uizmmaj] {
    display: block;
}

.coffee-home h1 > .coffee-home-headline-emphasis[b-o49uizmmaj] {
    position: relative;
    display: table;
    max-width: 100%;
    padding-bottom: .2em;
}

.coffee-home-headline-emphasis[b-o49uizmmaj]::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: .13em;
    border-top: .075em solid #7da577;
    border-radius: 50%;
    transform: rotate(-2deg);
    content: "";
}

.coffee-home-description[b-o49uizmmaj] {
    max-width: 37rem;
    margin: 1.4rem 0 1.7rem;
    color: var(--coffee-muted, #46534e);
    font-size: clamp(1.05rem, 1.5vw, 1.3rem);
    line-height: 1.65;
    text-wrap: pretty;
}

.coffee-home-benefits[b-o49uizmmaj] {
    display: grid;
    gap: .85rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.coffee-home-benefits li[b-o49uizmmaj] {
    display: flex;
    align-items: center;
    gap: .85rem;
    color: var(--coffee-muted, #46534e);
    font-size: 1.075rem;
    line-height: 1.5;
}

.coffee-home-check[b-o49uizmmaj] {
    display: inline-flex;
    flex: 0 0 1.85rem;
    align-items: center;
    justify-content: center;
    width: 1.85rem;
    height: 1.85rem;
    border-radius: 50%;
    background: #d9e8d1;
    color: #245536;
    font-size: 1.05rem;
    font-weight: 700;
}

.coffee-home-note[b-o49uizmmaj] {
    max-width: 12rem;
    margin: 1.65rem 1.25rem 0 auto;
    color: #5d795a;
    font-family: "Segoe Print", "Bradley Hand", cursive;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: center;
    text-wrap: balance;
    transform: rotate(-7deg);
}

.coffee-home-offer[b-o49uizmmaj] {
    width: 100%;
    max-width: 30rem;
    min-width: 0;
    justify-self: end;
}

@media (max-width: 70rem) and (min-width: 60.001rem) {
    .coffee-home-inner[b-o49uizmmaj] {
        grid-template-columns: minmax(0, 1.15fr) minmax(23rem, 1fr);
        gap: 1.5rem;
    }

    .coffee-home h1[b-o49uizmmaj] {
        font-size: 3rem;
    }
}

@media (max-width: 60rem) {
    .coffee-home-inner[b-o49uizmmaj] {
        grid-template-columns: minmax(0, 1fr);
        gap: 2rem;
        max-width: 44rem;
        padding-top: 2.25rem;
        padding-bottom: 18rem;
    }

    .coffee-home-copy[b-o49uizmmaj] {
        padding-top: 0;
        padding-bottom: 0;
    }

    .coffee-home h1[b-o49uizmmaj] {
        font-size: clamp(2.5rem, 7vw, 4rem);
    }

    .coffee-home-offer[b-o49uizmmaj] {
        justify-self: center;
    }

    .coffee-home-note[b-o49uizmmaj] {
        display: none;
    }

    .coffee-home-scene[b-o49uizmmaj] {
        height: 24rem;
        background-position: left bottom;
    }
}

@media (max-width: 30rem) {
    .coffee-home-inner[b-o49uizmmaj] {
        gap: 1.75rem;
        padding-top: 1.75rem;
        padding-bottom: 13rem;
    }

    .coffee-home-eyebrow[b-o49uizmmaj] {
        font-size: .75rem;
        letter-spacing: .13em;
    }

    .coffee-home h1[b-o49uizmmaj] {
        font-size: clamp(2.15rem, 9.4vw, 2.8rem);
        letter-spacing: -.045em;
    }

    .coffee-home-description[b-o49uizmmaj] {
        margin-block: 1.15rem 1.4rem;
        font-size: 1rem;
    }

    .coffee-home-benefits li[b-o49uizmmaj] {
        align-items: start;
        font-size: 1rem;
    }

    .coffee-home-check[b-o49uizmmaj] {
        flex-basis: 1.65rem;
        width: 1.65rem;
        height: 1.65rem;
        margin-top: .05rem;
    }

    .coffee-home-scene[b-o49uizmmaj] {
        height: 18rem;
    }
}
/* /Components/Pages/GetStarted.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Natural hero height leaves room for either language and keeps signup actions inside the shared page gutters. */
.get-started-component[b-nqirpzu5jd] {
    text-align: center;
}

.hero[b-nqirpzu5jd] {
    margin-bottom: 2rem;
}

h1[b-nqirpzu5jd] {
    margin: 0 0 1rem;
}

.teaser[b-nqirpzu5jd] {
    margin: 0;
    font-size: 1.125rem;
}

.signup-actions[b-nqirpzu5jd] {
    display: grid;
    gap: 1rem;
    max-width: 32rem;
    margin-inline: auto;
}

.signup-actions a[b-nqirpzu5jd] {
    padding: 1rem;
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Natural heights keep translated headings and feature copy readable at narrow viewport widths. */
.home-component[b-zs62svv7cy] {
    text-align: center;
}

.hero[b-zs62svv7cy] {
    margin-bottom: 2rem;
}

h1[b-zs62svv7cy] {
    margin: 0 0 1rem;
}

.teaser[b-zs62svv7cy] {
    margin-bottom: 0;
    font-size: 1.125rem;
}

.get-started[b-zs62svv7cy] {
    max-width: 32rem;
    margin: 2rem auto;
    padding: 1rem;
}

.features[b-zs62svv7cy] {
    display: grid;
    gap: 2.5rem;
    max-width: 45rem;
    margin: 3rem auto;
    padding: 0;
    list-style: none;
}

.features h2[b-zs62svv7cy] {
    margin: 0 0 .75rem;
    font-size: 1.25rem;
    font-weight: 700;
}

.features p[b-zs62svv7cy] {
    margin: 0;
    line-height: 1.65;
}
/* /Components/Pages/Pricing.razor.rz.scp.css */
/* FEATURE-0121 Landing page pricing - Flexible cards keep live names, amounts and
   translated inclusions readable without a horizontal pricing table on mobile. */
.pricing-page[b-ywkstkgdu7] { color: #203a2c; }
.pricing-hero[b-ywkstkgdu7] { max-width: 44rem; margin: 0 auto 2rem; text-align: center; }
.pricing-eyebrow[b-ywkstkgdu7] { color: #377654; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; font-size: .85rem; }
h1[b-ywkstkgdu7] { text-transform: none; line-height: 1.15; margin-bottom: 1.25rem; }
.pricing-intro[b-ywkstkgdu7] { color: #52645a; font-size: 1.15rem; line-height: 1.65; }
.pricing-terms[b-ywkstkgdu7] { text-align: center; color: #52645a; font-size: .9rem; margin-bottom: 1.5rem; }
.pricing-plans[b-ywkstkgdu7] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: 1rem; }
.pricing-plan[b-ywkstkgdu7] { display: flex; flex-direction: column; min-width: 0; padding: clamp(1.25rem, 3vw, 1.75rem); border: 1px solid #cdded2; border-top: 4px solid #48956c; border-radius: 1rem; background: #fff; }
.pricing-plan h2[b-ywkstkgdu7] { font-size: 1.5rem; font-weight: 700; overflow-wrap: anywhere; }
.pricing-price[b-ywkstkgdu7] { margin: 1rem 0 1.25rem; }
.pricing-price strong[b-ywkstkgdu7] { display: block; color: #28583e; font-size: clamp(1.75rem, 3.5vw, 2.35rem); line-height: 1.2; overflow-wrap: anywhere; }
.pricing-price span[b-ywkstkgdu7] { color: #52645a; font-size: .9rem; }
.pricing-inclusions[b-ywkstkgdu7] { flex: 1; padding-left: 1.2rem; margin: 0 0 1.75rem; }
.pricing-inclusions li[b-ywkstkgdu7] { padding-left: .25rem; margin-bottom: .8rem; line-height: 1.5; overflow-wrap: anywhere; }
.pricing-inclusions li[b-ywkstkgdu7]::marker { color: #377654; }
.pricing-module-description[b-ywkstkgdu7] { margin: .35rem 0 0; color: #52645a; font-size: .9rem; }
.pricing-benefits-link[b-ywkstkgdu7] { color: #28583e; font-size: .9rem; text-underline-offset: .15em; }
.pricing-page .button[b-ywkstkgdu7] { min-height: 44px; font-size: 1rem; padding: .8rem 1rem; }
.pricing-page .btn-primary[b-ywkstkgdu7] { background: #377654; border: 1px solid #377654; color: #fff; }
.pricing-page .btn-primary:hover[b-ywkstkgdu7] { background: #28583e; }
.pricing-page .btn-secondary[b-ywkstkgdu7] { background: #fff; color: #28583e; border: 1px solid #377654; }
.pricing-page .btn-secondary:hover[b-ywkstkgdu7] { background: #e8f2eb; }
.pricing-page a:focus-visible[b-ywkstkgdu7], summary:focus-visible[b-ywkstkgdu7] { outline: 3px solid #377654; outline-offset: 4px; }
.pricing-trial[b-ywkstkgdu7] { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; margin: 2rem 0 3rem; padding: 1.5rem; background: #edf5ef; border-radius: 1rem; }
.pricing-trial > div[b-ywkstkgdu7] { flex: 1 1 22rem; }
.pricing-trial h2[b-ywkstkgdu7] { font-size: 1.4rem; }
.pricing-trial p[b-ywkstkgdu7] { margin: .5rem 0 0; line-height: 1.6; }
.pricing-trial .button[b-ywkstkgdu7] { flex: 0 1 15rem; }
.pricing-add-ons[b-ywkstkgdu7] { margin-top: 3rem; }
.pricing-add-ons > p[b-ywkstkgdu7] { color: #52645a; max-width: 44rem; line-height: 1.6; }
.pricing-add-on-grid[b-ywkstkgdu7] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1rem; margin-top: 1.5rem; }
.pricing-add-on[b-ywkstkgdu7] { padding: 1.5rem; background: #f6f8f5; border: 1px solid #e0e7df; border-radius: .75rem; overflow-wrap: anywhere; }
.pricing-add-on h3[b-ywkstkgdu7] { font-size: 1.2rem; font-weight: 700; }
.pricing-add-on p:last-child[b-ywkstkgdu7] { margin-bottom: 0; }
.pricing-add-on-price[b-ywkstkgdu7] { color: #28583e; }
.pricing-note[b-ywkstkgdu7] { font-size: .9rem; color: #52645a; }
/* FEATURE-0121 Landing page pricing - Keep detailed Mini-CFO value in one readable
   section rather than repeating long financial definitions inside every offer. */
.pricing-insights-benefits[b-ywkstkgdu7] { margin-top: 3rem; scroll-margin-top: 6rem; }
.pricing-insights-benefits h2[b-ywkstkgdu7] { font-size: 1.6rem; }
.pricing-insights-intro[b-ywkstkgdu7] { color: #52645a; max-width: 44rem; line-height: 1.6; }
.pricing-benefits-grid[b-ywkstkgdu7] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 23rem), 1fr)); gap: 1rem; margin: 1.5rem 0 1rem; }
.pricing-benefits-grid > div[b-ywkstkgdu7] { padding: 1.5rem; background: #edf5ef; border-radius: .75rem; }
.pricing-benefits-grid dt[b-ywkstkgdu7] { margin-bottom: .5rem; font-size: 1.1rem; color: #28583e; }
.pricing-benefits-grid dd[b-ywkstkgdu7] { margin: 0; color: #52645a; line-height: 1.6; }
.pricing-insights-benefits > .pricing-note[b-ywkstkgdu7] { max-width: 52rem; line-height: 1.6; }
.pricing-questions[b-ywkstkgdu7] { max-width: 45rem; margin: 3.5rem auto; }
.pricing-questions h2[b-ywkstkgdu7] { margin-bottom: 1.5rem; }
.pricing-questions details[b-ywkstkgdu7] { border-bottom: 1px solid #dce5de; }
.pricing-questions summary[b-ywkstkgdu7] { padding: 1rem 0; min-height: 44px; font-weight: 600; cursor: pointer; }
.pricing-questions details p[b-ywkstkgdu7] { line-height: 1.65; color: #52645a; }
.pricing-next-step[b-ywkstkgdu7] { text-align: center; margin: 3rem auto 1rem; }
.pricing-next-step .button[b-ywkstkgdu7] { max-width: 20rem; margin: 1.5rem auto; }
.pricing-next-step a:not(.button)[b-ywkstkgdu7] { color: #28583e; }
.pricing-unavailable[b-ywkstkgdu7] { max-width: 38rem; margin: 2rem auto; padding: 2rem; border-radius: 1rem; background: #edf5ef; }
.pricing-unavailable h2[b-ywkstkgdu7] { font-size: 1.4rem; }
.pricing-actions[b-ywkstkgdu7] { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1.5rem; }
.pricing-actions .button[b-ywkstkgdu7] { flex: 1 1 10rem; }
/* /Components/Pages/Support.razor.rz.scp.css */
/* FEATURE-0118 Localized responsive landing page - Support content can wrap within the shared mobile gutters without a fixed hero height. */
.support-component[b-5jf8c5jenb] {
    text-align: center;
}

h1[b-5jf8c5jenb] {
    margin: 0 0 1rem;
}

.teaser[b-5jf8c5jenb] {
    margin-bottom: 1rem;
    font-size: 1.125rem;
}

.support-email[b-5jf8c5jenb] {
    display: inline-block;
    padding-block: .75rem;
    overflow-wrap: anywhere;
}
/* /Components/Shared/CoffeeComparison.razor.rz.scp.css */
/* FEATURE-0124 Subscription price experiments and insights entry - The playful equivalent is secondary to the real renewal price. */
.coffee-comparison[b-uek1ht5bmm] { display: flex; flex-direction: column; gap: .2rem; color: var(--text-muted, #59675f); margin: .25rem 0 1rem; }
.coffee-equivalent[b-uek1ht5bmm] { display: inline-flex; align-items: center; gap: .3rem; font-size: 1.1rem; font-weight: 600; }
.coffee-comparison small[b-uek1ht5bmm] { font-size: .75rem; line-height: 1.4; }
/* /Components/Shared/RotatingPriceCard.razor.rz.scp.css */
/* FEATURE-0125 Coffee landing page variant - Isolated styles keep the comparison
   readable at narrow widths without changing checkout or the existing pricing page. */
.rotating-price-card[b-pw2nhag9n9] { width:100%; padding:clamp(1.2rem,2.4vw,2rem); border:1px solid #dce2dc; border-radius:1rem; background:rgba(255,255,255,.96); box-shadow:0 18px 56px #173c2720; color:#0a3325; }
.price-badge[b-pw2nhag9n9] { display:inline-block; margin:0 0 1.25rem; padding:.5rem 1.1rem; background:#dae8d5; border-radius:.5rem; font-size:.85rem; font-weight:750; letter-spacing:.075em; text-transform:uppercase; }
[hidden][b-pw2nhag9n9] { display:none !important; }
.price-mode-label[b-pw2nhag9n9] { margin:0 0 .5rem; color:#39484c; font-size:.95rem; }
.price-control-row[b-pw2nhag9n9] { display:flex; align-items:center; gap:.8rem; }
.price-modes[b-pw2nhag9n9] { display:flex; flex:1; min-width:0; padding:3px; border:1px solid #c5cfcb; border-radius:2rem; background:#f8f9f7; }
.price-modes button[b-pw2nhag9n9] { display:flex; align-items:center; justify-content:center; gap:.35rem; flex:1; width:auto; min-width:0; min-height:43px; padding:.5rem; background:transparent; border-radius:2rem; color:#233e36; font-size:.95rem; font-weight:650; }
.price-modes button[aria-pressed="true"][b-pw2nhag9n9] { color:#fff; background:#467f45; box-shadow:0 2px 5px #29492c20; }
.price-modes svg[b-pw2nhag9n9] { width:1.5rem; height:1.5rem; flex-shrink:0; }
.rotation-toggle[b-pw2nhag9n9] { display:grid; place-items:center; flex:0 0 47px; width:47px; height:47px; padding:.75rem; background:#fff; color:#243d36; border:1px solid #ced7d1; border-radius:50%; }
.rotation-toggle svg[b-pw2nhag9n9] { width:1.15rem; height:1.15rem; }
button:focus-visible[b-pw2nhag9n9],.price-cta:focus-visible[b-pw2nhag9n9],.pricing-link:focus-visible[b-pw2nhag9n9] { outline:3px solid #0a6546; outline-offset:4px; }
.rotation-status[b-pw2nhag9n9] { display:flex; align-items:center; gap:.8rem; margin:.8rem 0 0; color:#58615e; font-size:.75rem; }
.rotation-track[b-pw2nhag9n9] { display:block; height:6px; flex:1; min-width:35px; overflow:hidden; background:#e5ede3; border-radius:1rem; }
.rotation-track span[b-pw2nhag9n9] { display:block; width:100%; height:100%; background:#538850; transform:scaleX(0); transform-origin:left; }
[data-rotation="running"] .rotation-track span[b-pw2nhag9n9] { animation:rotation-progress-b-pw2nhag9n9 5s linear infinite; }
.price-panels[b-pw2nhag9n9] { display:grid; min-height:245px; align-items:center; margin:.7rem 0 0; }
.price-panel[b-pw2nhag9n9] { text-align:center; }
.price-display[b-pw2nhag9n9] { display:flex; justify-content:center; align-items:baseline; gap:.5rem; margin:1.1rem 0 .2rem; white-space:nowrap; letter-spacing:-.055em; }
.price-display strong[b-pw2nhag9n9] { font-size:clamp(3.4rem,6.3vw,5.7rem); line-height:1.2; font-weight:800; }
.price-display > span[b-pw2nhag9n9] { font-size:1.5rem; letter-spacing:-.025em; }
.price-display > .approximation[b-pw2nhag9n9] { font-size:2.1rem; }
.coffee-display[b-pw2nhag9n9] { align-items:center; gap:.75rem; }
.coffee-display .multiply[b-pw2nhag9n9] { font-size:.65em; margin-left:.1em; }
.coffee-display svg[b-pw2nhag9n9] { width:clamp(70px,8vw,110px); height:110px; overflow:visible; }
.price-period[b-pw2nhag9n9] { margin:0 0 .7rem; font-size:clamp(1.4rem,2.3vw,1.9rem); letter-spacing:-.04em; }
.price-caption[b-pw2nhag9n9] { margin:0; color:#45514e; font-size:.95rem; line-height:1.5; }
.billing-price[b-pw2nhag9n9] { margin:1.35rem 0 1rem; padding-top:1.25rem; border-top:1px solid #e0e6df; text-align:center; color:#36443f; font-size:1rem; }
.billing-price strong[b-pw2nhag9n9] { color:#123e2c; font-size:1.2rem; }
.price-cta[b-pw2nhag9n9] { display:flex; align-items:center; justify-content:center; gap:.5rem; min-height:54px; padding:.85rem 1rem; border-radius:.75rem; color:#fff; background:#467f45; text-decoration:none; text-align:center; font-size:1.05rem; font-weight:700; line-height:1.4; }
.price-cta:hover[b-pw2nhag9n9] { color:#fff; background:#356637; }
.price-terms[b-pw2nhag9n9],.comparison-basis[b-pw2nhag9n9] { margin:.8rem 0 0; text-align:center; color:#57635e; font-size:.78rem; line-height:1.5; }
.comparison-basis[b-pw2nhag9n9] { margin-top:.7rem; font-size:.7rem; }
.price-unavailable[b-pw2nhag9n9] { padding:2rem 0; }
.price-unavailable h3[b-pw2nhag9n9] { font-size:1.8rem; }
.price-unavailable p[b-pw2nhag9n9] { margin:1rem 0 2rem; color:#45514e; line-height:1.6; }
.pricing-link[b-pw2nhag9n9] { display:block; margin:1.2rem auto 0; text-align:center; color:#356637; }
@keyframes rotation-progress-b-pw2nhag9n9 { from {transform:scaleX(0)} to {transform:scaleX(1)} }
@media (max-width:380px) { .price-control-row[b-pw2nhag9n9] { gap:.4rem; } .price-modes button[b-pw2nhag9n9] { font-size:.8rem; padding:.35rem; } .price-modes svg[b-pw2nhag9n9] { width:1.1rem; } .rotation-toggle[b-pw2nhag9n9] { flex-basis:42px; width:42px; height:42px; } .price-display strong[b-pw2nhag9n9] { font-size:3.5rem; } .price-panels[b-pw2nhag9n9] { min-height:225px; } }
@media (prefers-reduced-motion:reduce) { [data-rotation="running"] .rotation-track span[b-pw2nhag9n9] { animation:none; } }
