.badge,
.badge--category,
.best-intro__eyebrow,
.best-list__label,
.best-method__intro,
.best-method__item h3,
.collection-hero__kicker,
.comparison-badge,
.comparison-kicker,
.comparison-table th,
.home-kicker,
.home-stat__label,
.rich-text table:not(.comparison-table) th {
    text-transform: uppercase;
}
html,
body {
    font-size: 16px;
}
body,h1{
    margin:0
}
.calendar-card__offer-row,.calendar-card__offers-list,.site-footer,.site-footer__bottom{
    border-top:1px solid var(--border)
}
.brand-row__badge-link,.brand-row__cta,.brand-row__title-link,.chip,.chip-button,a{
    text-decoration:none
}
:root{
    --bg:#fcfbf8;
    --body-bg:#FEFDFC;
    --bg-warm:#F5F3EE;
    --surface:#ffffff;
    --surface-soft:#f7efe7;
    --surface-muted:#f8f6f2;
    --border:#F0EDE8;
    --border-light:#F0EDE8;
    --text:#171717;
    --text-muted:#9A9A9A;
    --text-secondary:#6B6B6B;
    --accent:#b3261e;
    --accent-hover:#981f18;
    --accent-soft:#f7efe7;
    --chip-bg:#ffffff;
    --shadow-soft:0 10px 30px rgba(0, 0, 0, 0.04);
    --shadow-card:0 14px 30px rgba(0, 0, 0, 0.06);
    --radius-xl:28px;
    --radius-lg:22px;
    --radius-md:18px;
    --radius-sm:999px;
    --sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif
}
*,::after,::before{
    box-sizing:border-box
}
body{
    padding:0;
    font-family:var(--sans);
    line-height:1.7;
    letter-spacing:-.01em;
    color:var(--text);
    background:var(--body-bg)
}
h1,h2{
    font-family:'Playfair Display',serif;
    font-weight:600
}
.cookie-content h3,h3{
    font-family:var(--sans)
}
h1{
    font-size:clamp(2.4rem, 5vw, 3rem);
    line-height:1.05;
    letter-spacing:-.035em
}
h2{
    margin:2.5rem 0 .9rem;
    font-size:clamp(1.8rem, 3vw, 2rem);
    line-height:1.15
}
h3{
    margin:0 0 .5rem;
    font-size:1.25rem;
    font-weight:600;
    line-height:1.3;
    letter-spacing:-.015em
}
h4{
    margin:0 0 .4rem;
    font-size:1.05rem;
    font-weight:600;
    line-height:1.4
}
p{
    margin:0 0 1rem;
    font-size:15px;
    line-height:1.75;
    color:var(--text-secondary)
}
.small-text{
    font-size:.875rem;
    color:var(--text-muted)
}
.badge{
    letter-spacing:.02em
}
.empty-state,.rich-text h2{
    margin-top:2rem
}
.brand-featured-card__actions,.collection-hero__actions,.empty-state__button,.rich-text h3{
    margin-top:1.5rem
}
.calendar-card__title{
    font-family:'DM Sans',sans-serif;
    letter-spacing:-.015em;
    color:#1f1b18;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
.calendar-card__text{
    font-size:.9rem
}
.calendar-card__meta{
    display:grid;
    gap:.35rem
}
.calendar-card__price{
    color:#1f1b18;
    font-size:14px;
    font-weight:600
}
.calendar-card__shops{
    color:#8a8178;
    font-size:.82rem;
    font-weight:500
}
.calendar-card__offers{
    border:1px solid var(--border);
    border-radius:14px;
    background:#fff
}
.calendar-card__offers summary{
    cursor:pointer;
    list-style:none;
    padding:.75rem .9rem;
    color:#5f5246;
    font-size:.86rem;
    font-weight:600
}
.calendar-card__offers summary::-webkit-details-marker{
    display:none
}
.calendar-card__offers summary::after{
    content:"+";
    float:right;
    color:#a09587;
    font-weight:600
}
.calendar-card__offers[open] summary::after{
    content:"−"
}
.calendar-card__offer-row{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:.65rem;
    align-items:center;
    padding:.7rem .9rem;
    color:#6a6158;
    font-size:.84rem
}
.calendar-card__offer-row:first-child{
    border-top:0
}
.calendar-card__offer-row:hover,.comparison-table tbody tr:nth-child(2n),.rich-text table:not(.comparison-table) tbody tr:nth-child(2n){
    background:#fcfaf7
}
.calendar-card__offer-row strong{
    color:#1f1b18;
    font-weight:700;
    white-space:nowrap
}
.calendar-card__offer-row span:last-child{
    color:var(--accent);
    font-weight:600;
    white-space:nowrap
}
img{
    max-width:100%;
    display:block
}
a{
    color:inherit
}
button,input{
    font:inherit
}
.container{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:32px 20px 80px
}
.collection-hero--simple .hero,.hero{
    max-width:56rem;
    margin:0 auto;
    text-align:center
}
.hero h1{
    margin:0;
    font-weight:500;
    line-height:1.05;
    letter-spacing:-.03em
}
.hero p{
    max-width:42rem;
    margin:1.25rem auto 0;
    font-size:clamp(1rem, 2vw, 1rem);
    line-height:1.8;
    color:var(--text-muted)
}
.section-top{
    max-width:80rem;
    margin:2.5rem auto 0
}
.search-shell{
    position:relative;
    width:100%;
    max-width:700px;
    margin:0 auto;
    padding:.25rem;
    border:1px solid #e6ded4;
    border-radius:32px
}
.search-inner{
    display:flex;
    align-items:center;
    gap:.75rem;
    padding:1rem 1.25rem;
    border-radius:24px;
    background:var(--surface)
}
.search-icon{
    width:20px;
    height:20px;
    flex-shrink:0;
    color:#9ca3af
}
.article-page .rich-text h2,.article-page .rich-text h3,.breadcrumb a:hover,.search-input,.site-nav a:hover,.toolbar-summary strong{
    color:var(--text)
}
.search-input{
    width:100%;
    border:0;
    outline:0;
    background:0 0;
    font-size:15px;
    font-weight:500
}
.chip,.chip-button,.search-count{
    border-radius:999px;
    font-weight:500
}
.search-input::placeholder{
    color:#9ca3af;
    font-weight:400
}
.search-count{
    position:absolute;
    top:50%;
    right:12px;
    flex-shrink:0;
    transform:translateY(-50%);
    padding:6px 12px;
    background:#f3efe8;
    color:var(--text-muted);
    font-size:.8rem
}
.search-shell:focus-within{
    background:#fff;
    box-shadow:0 0 0 1px rgba(179,38,30,.18),0 4px 10px rgba(179,38,30,.05)
}
.chips{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin-top:16px
}
.chip,
.chip-button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 10px 16px;
    border: 1.5px solid #e9e2d8;
    border-radius: 999px;
    background: #f8f5f1;
    color: #3f3a34;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;

    
}
.chip span:first-child,.chip-button span:first-child{
    display:inline-flex;
    align-items:center;
    gap:6px
}
.chip-count{
    margin-left:4px;
    font-size:13px;
    font-weight:500;
    color:#a39a90
}
.chip-button:hover,.chip:hover{
    background:#f3efea;
    border-color:#ded6cb
}
.chip-button.is-active,.chip.is-active{
    background:#111;
    color:#fff;
    border-color:#111
}
.chip-button.is-active:hover,.chip.is-active:hover{
    background:#111;
}
.chip-button.is-active .chip-count,.chip.is-active .chip-count{
    color:rgba(255,255,255,.7)
}

.toolbar{
    display:flex;
    flex-direction:column;
    gap:1rem;
    margin-top:3rem
}
.toolbar-summary{
    margin:0;
    font-size:14px;
    color:var(--text-muted)
}
.sort-toggle{
    display:inline-flex;
    width:fit-content;
    gap:4px;
    padding:4px;
    border-radius:10px;
    background:#f5f2ec
}
.sort-toggle button{
    cursor:pointer;
    padding:6px 14px;
    border:0;
    border-radius:8px;
    background:0 0;
    color:var(--text-secondary);
    font-size:13px;
    font-weight:500;
        box-shadow: none;
        transform: none;
    transition: none;
}
.calendar-card,.faq-item{
    border:1px solid var(--border)
}
.sort-toggle button.is-active{
    background:var(--surface);
    color:var(--text);
    box-shadow:0 1px 2px rgba(0,0,0,.05)
}
.calendar-grid{
    display:grid;
    gap:1.5rem;
    margin-top:2rem
}
.calendar-card{
    overflow:hidden;
    border-radius:var(--radius-xl);
    background:var(--surface);
    transition:opacity .25s,transform .25s,box-shadow .2s
}
.calendar-card:hover{
    box-shadow:var(--shadow-card)
}
.calendar-card.is-hidden{
    display:none;
    opacity:0;
    transform:translateY(10px);
    pointer-events:none
}
.calendar-card.is-visible{
    display:block;
    opacity:1;
    transform:translateY(0)
}
.calendar-card__body{
    padding:1.5rem
}
.calendar-card__image-wrap{
    overflow:hidden;
    border-radius:var(--radius-lg);
    background:var(--surface-muted)
}
.calendar-card__image-link {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.calendar-card__image {
    display: block;
    width: 100%;
    height: 240px;
    object-fit: cover;
    object-position: center;
    transform-origin: 50% 50%;
    transition: transform .25s ease;
    will-change: transform;
}

.calendar-card__image-link:hover .calendar-card__image {
    transform: scale(1.02);
}
.calendar-card__badges {
    margin-top: 1rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .45rem;
}
.badge,.badge--category{
    display:inline-flex
}
.badge{
    align-items:center;
    gap:.4rem;
    padding:.44rem .7rem;
    border:1px solid rgba(0,0,0,.06);
    border-radius:999px;
    background:rgba(248,245,241,.7);
    color:#6a6158;
    font-size:10px;
    font-weight:600;
    line-height:1;
    letter-spacing:.04em;
    white-space:nowrap;
    backdrop-filter:blur(6px);
    transition:.2s
}
.badge--featured{
    background:#fff7ed;
    border-color:#fed7aa;
    color:#9a3412
}
.badge--audience:hover{
    background:#eee8e0;
    border-color:#ddd2c4;
    color:#5e554d
}
.badge--favorite{
    order:-1;
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    padding:.44rem .76rem;
    border:1px solid #f4bcc8;
    border-radius:999px;
    background:#fff1f3;
    color:#9f1239;
    font-size:10px;
    font-weight:600;
    line-height:1;
    letter-spacing:.01em;
    white-space:nowrap
}
.badge--favorite > span:first-child{
    color:inherit;
    font-size:12px;
    line-height:1
}
.badge--top-favorite{
    background:#fff8e7;
    border-color:#e7c878;
    color:#8a6412
}
.badge--category{
    align-items:center;
    gap:.35rem;
    cursor:pointer;
    background:var(--accent-soft);
    border-color:#f0dccf;
    color:#b24e1d;
}
.badge--category[data-category=beauty]{
    background:#fff0f5;
    border-color:#fbcfe8;
    color:#be185d
}
.badge--category[data-category=slik]{
    background:#fff7ed;
    border-color:#fed7aa;
    color:#c2410c
}
.badge--category[data-category=erotisk]{
    background:#fee2e2;
    border-color:#fecaca;
    color:#b91c1c
}
.badge--category[data-category=legetoej]{
    background:#ecfeff;
    border-color:#a5f3fc;
    color:#0e7490
}
.badge--category[data-category=foto]{
    background:#f1f5f9;
    border-color:#cbd5f5;
    color:#334155
}
.badge--category[data-category=smykker]{
    background:#f6f2f7;
    border-color:#e3d9e8;
    color:#6e4a7e
}
.badge--category[data-category="drikke"],.badge--category[data-category=drickbara]{
    background:#f0fdf4;
    border-color:#bbf7d0;
    color:#166534
}
.badge--category[data-category=beauty]:hover{
    background:#ffe4ee;
    border-color:#f9a8d4;
    color:#a01455
}
.badge--category[data-category=slik]:hover{
    background:#ffedd5;
    border-color:#fdba74;
    color:#9a3412
}
.badge--category[data-category=erotisk]:hover{
    background:#fecaca;
    border-color:#fca5a5;
    color:#991b1b
}
.badge--category[data-category=legetoej]:hover{
    background:#cffafe;
    border-color:#67e8f9;
    color:#155e75
}
.badge--category[data-category=foto]:hover{
    background:#e2e8f0;
    border-color:#c7d2fe;
    color:#1e293b
}
.badge--category[data-category=smykker]:hover{
    background:#efe7f2;
    border-color:#d6c7dc;
    color:#5b3f6b
}
.badge--category[data-category="drikke"]:hover,.badge--category[data-category=drickbara]:hover{
    background:#dcfce7;
    border-color:#86efac;
    color:#14532d
}
.calendar-card__title{
    margin:1rem 0 0;
    font-size:1.2rem;
    line-height:1.2;
    letter-spacing:-.02em;
    font-weight:600
}
.calendar-card__text{
    margin:.8rem 0 0;
    color:var(--text-secondary);
    line-height:1.65
}
.calendar-card__footer{
    border-top:1px solid var(--border);
    padding:1.25rem 1.5rem;
    display:flex;
    flex-direction:column;
    gap:.75rem
}
.calendar-card__date{
    font-size:.75rem;
    color:#9ca3af
}
.calendar-card__actions{
    display:flex;
    flex-direction:column;
    gap:.75rem
}
.button,.related-links a{
    display:inline-flex;
    align-items:center
}
.button{
    justify-content:center;
    gap:.4rem;
    padding:.72rem 1.15rem;
    border-radius:999px;
    font-size:14px;
    font-weight:600;
    letter-spacing:-.01em;
    cursor:pointer;
    border:1px solid transparent;
    transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .15s
}
.button--secondary:hover{
    border-color:#ded6cb
}
.load-more{
    margin-top:2.5rem;
    display:flex;
    justify-content:center
}
.load-more .button{
    background:#171717;
    color:#fff;
    border:0;
    min-width:180px;
    cursor:pointer
}
.load-more .button:hover{
    background:#262626
}
.breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:.5rem;
    margin-bottom:1.5rem;
    color:var(--text-muted);
    font-size:13px
}
.breadcrumb-sep{
    color:#c4c4c4
}
.content-section{
    max-width:960px;
    margin:2rem auto 0
}

.content-section.article-content {
    margin-top: 2.25rem;
}
.content-section__title{
    margin:0 0 1.25rem;
    color:var(--text);
    font-size:1.75rem;
    font-weight:600;
    line-height:1.2;
    letter-spacing:-.02em
}
.content-section h1{
    margin-bottom:36px
}
.rich-text{
    color:#525252;
    font-size:1rem;
    line-height:1.9
}
.rich-text p{
    margin:0 0 1rem
}
.faq-list,.home-grid{
    display:grid;
    gap:1rem
}
.faq-item{
    padding:1.25rem 1.25rem 1.1rem;
    border-radius:22px;
    background:var(--surface)
}
.faq-question{
    margin:0 0 .65rem;
    color:var(--text);
    font-size:1.05rem;
    font-weight:600
}
.faq-answer{
    margin:0;
    color:var(--text-muted);
    line-height:1.85
}
.related-links{
    display:flex;
    flex-wrap:wrap;
    gap:.75rem
}
.related-links a{
    padding:.75rem 1rem;
    border:1px solid var(--border);
    border-radius:999px;
    background:var(--surface);
    color:#262626;
    font-size:.95rem;
    font-weight:500;
    transition:background .2s,border-color .2s
}
.site-header__cta,.site-nav a{
    font-size:14px;
    font-weight:500
}
.related-links a:hover{
    background:#fafafa
}
.badge--category:hover{
    background:#f3e5da
}
.site-header{
    position:sticky;
    top:0;
    z-index:100;
    background:rgba(254,253,252,.85);
    border-bottom:1px solid var(--border-light);
    backdrop-filter:blur(12px)
}
.site-header.is-scrolled{
    box-shadow:0 1px 20px rgba(0,0,0,.06)
}
.site-header__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    max-width:1280px;
    min-height:72px;
    margin:0 auto;
    padding:1rem 1.25rem
}
.site-logo{
    display:inline-flex;
    align-items:center;
    flex-shrink:0;
    line-height:1
}
.site-logo img{
    display:block;
    width:auto;
    height:60px;
    object-fit:contain
}
.site-nav{
    display:flex;
    align-items:center;
    gap:1.4rem
}
.site-nav a{
    color:var(--text-secondary);
    transition:color .2s,opacity .2s
}
.site-header__cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:.8rem 1.1rem;
    border-radius:999px;
    background:#111;
    color:#fff;
    white-space:nowrap;
    transition:background .2s,transform .2s
}
.site-header__cta:hover{
    background:#222;
    transform:translateY(-1px)
}
.site-nav a.is-active{
    color:var(--text);
    font-weight:600;
    position:relative
}
.site-nav a.is-active::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-10px;
    height:2px;
    border-radius:999px;
    background:var(--accent)
}
.mobile-menu-nav a.is-active{
    color:var(--accent)
}
.mobile-menu-toggle{
    display:none;
    width:46px;
    height:46px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#fff;
    align-items:center;
    justify-content:center;
    position:relative;
    cursor:pointer;
    flex-shrink:0
}
.mobile-menu-toggle span{
    position:absolute;
    width:18px;
    height:2px;
    background:#111;
    border-radius:999px;
    transition:transform .22s,opacity .22s
}
.mobile-menu-toggle span:first-child{
    transform:translateY(-6px)
}
.mobile-menu-toggle span:nth-child(2){
    transform:translateY(0)
}
.mobile-menu-toggle span:nth-child(3){
    transform:translateY(6px)
}
.mobile-menu-toggle.is-active span:first-child{
    transform:rotate(45deg)
}
.mobile-menu-toggle.is-active span:nth-child(2){
    opacity:0
}
.mobile-menu-toggle.is-active span:nth-child(3){
    transform:rotate(-45deg)
}
.mobile-menu-overlay{
    position:fixed;
    inset:0;
    z-index:9999;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(14px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s,visibility .22s
}
.mobile-menu-overlay.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
.home-hero::after,.home-hero::before{
    pointer-events:none;
    z-index:0;
    content:"";
    position:absolute
}
.mobile-menu-panel{
    height:100dvh;
    display:flex;
    flex-direction:column;
    padding:0 1.25rem 2rem
}
.mobile-menu-top{
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-left:-1.25rem;
    margin-right:-1.25rem;
    padding:1rem 1.25rem
}
.mobile-menu-close{
    width:46px;
    height:46px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#fff;
    position:relative;
    cursor:pointer;
    flex-shrink:0
}
.mobile-menu-close span{
    position:absolute;
    top:50%;
    left:50%;
    width:18px;
    height:2px;
    background:#111;
    border-radius:999px
}
.mobile-menu-close span:first-child{
    transform:translate(-50%,-50%) rotate(45deg)
}
.mobile-menu-close span:nth-child(2){
    transform:translate(-50%,-50%) rotate(-45deg)
}
.mobile-menu-nav{
    display:flex;
    flex-direction:column;
    padding-top:1rem
}
.mobile-menu-nav a{
    display:block;
    padding:.9rem .25rem;
    font-size:clamp(1.2rem, 3vw, 1.6rem);
    line-height:1.2;
    font-weight:600;
    letter-spacing:-.02em;
    color:var(--text);
    border-bottom:1px solid rgba(0,0,0,.06)
}
.mobile-menu-bottom{
    margin-top:auto;
    padding-top:1rem
}
.mobile-menu__cta{
    display:inline-flex;
    width:100%;
    min-height:56px;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#111;
    color:#fff;
    font-size:1rem;
    font-weight:600
}
body.menu-open{
    overflow:hidden
}
.site-footer{
    margin-top:5rem;
    background:#faf7f2
}
.site-footer__inner{
    display:grid;
    grid-template-columns:1.35fr 1fr 1fr 1fr;
    gap:2rem;
    max-width:1280px;
    margin:0 auto;
    padding:3.5rem 1.25rem 2.25rem
}
.site-footer__col--brand{
    max-width:360px
}
.site-footer__logo{
    display:inline-block;
    margin-bottom:1rem;
    color:var(--text);
    font-size:1rem;
    font-weight:700;
    letter-spacing:-.02em
}
.site-footer__title{
    margin:0 0 1rem;
    color:var(--text);
    font-size:1rem;
    font-weight:600;
    line-height:1.2
}
.site-footer__text{
    margin:0 0 1rem;
    color:var(--text-secondary);
    font-size:.95rem;
    line-height:1.8
}
.site-footer__disclaimer{
    margin:0;
    color:var(--text-muted);
    font-size:.875rem;
    line-height:1.7
}
.site-footer__links{
    display:grid;
    gap:.8rem;
    margin:0;
    padding:0;
    list-style:none
}
.site-footer__links a{
    color:var(--text-secondary);
    font-size:14px;
    transition:color .2s,transform .2s
}
.site-footer__links a:hover{
    color:var(--text);
    transform:translateX(2px)
}
.site-footer__bottom{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:.75rem 1.5rem;
    max-width:1280px;
    margin:0 auto;
    padding:1.25rem
}
.site-footer__bottom p{
    margin:0;
    color:var(--text-muted);
    font-size:.875rem;
    line-height:1.6
}
.cookie-consent{
    position:fixed;
    left:18px;
    right:18px;
    bottom:18px;
    z-index:9999;
    background:0 0;
    padding:0
}
.brands-search,.collection-search,.cookie-switch,.home-hero,.home-hero>*,.home-hero__card,.home-panel{
    position:relative
}
.cookie-modal{
    max-width:920px;
    margin:auto;
    background:rgba(254,253,252,.96);
    backdrop-filter:blur(18px);
    border:1px solid #e9e2d8;
    border-radius:22px;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
    overflow:hidden
}
.button--primary,.cookie-switch input:checked+span{
    background:#a52828
}
.cookie-content{
    padding:28px 32px 18px
}
.cookie-content h3{
    margin:0 0 14px;
    font-size:1.25rem;
    font-weight:600;
    line-height:1.2;
    letter-spacing:-.02em;
    color:#1f1b18
}
.cookie-content p{
    margin:0;
    max-width:760px;
    font-size:14px;
    line-height:1.8;
    color:var(--text-secondary)
}
.cookie-options-panel{
    display:none;
    margin-top:22px;
    padding-top:8px
}
.cookie-options-panel.open{
    display:block
}
.cookie-option{
    padding:14px 0;
    border-top:1px solid #f0eae3
}
.cookie-option__head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px
}
.cookie-option strong{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:4px;
    font-size:14px;
    font-weight:700
}
.cookie-option strong span{
    padding:2px 7px;
    border-radius:999px;
    background:#f3eee8;
    border:1px solid #e7ddd1;
    font-size:10px;
    font-weight:700;
    color:#7a7066
}
.cookie-option p{
    font-size:13px;
    line-height:1.7;
    max-width:650px
}
.cookie-switch{
    width:48px;
    height:28px;
    flex-shrink:0;
    cursor:pointer
}
.brand-row.is-hidden,.collection-search__count.is-hidden,.cookie-settings-button,.cookie-switch input,.empty-state.is-hidden,.load-more.is-hidden{
    display:none
}
.cookie-settings-button.is-visible {
    display: inline-flex;
}
.cookie-switch span{
    position:absolute;
    inset:0;
    background:#d8d3cc;
    border-radius:999px;
    transition:.2s
}
.cookie-switch span:before{
    content:"";
    position:absolute;
    width:20px;
    height:20px;
    top:4px;
    left:4px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 2px 4px rgba(0,0,0,.12);
    transition:.2s
}
.cookie-switch input:checked+span:before{
    transform:translateX(20px)
}
.cookie-switch.is-disabled{
    opacity:.55
}
.cookie-footer{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:0 32px 28px
}
.cookie-footer .button{
    min-height:42px;
    padding:.72rem 1rem;
    font-size:13px;
    font-weight:600
}
.button--primary{
    color:#fff
}
.button--primary:hover{
    background:#7a1919
}
.button--secondary{
    background:#fff;
    color:#3f3a34;
    border:1.5px solid #e9e2d8
}
.button--secondary:hover{
    background:#f3efea
}
.button--with-arrow{
    display:inline-flex;
    align-items:center;
    gap:8px
}
.hidden{
    display:none!important
}
@media(max-width:760px){
    .cookie-consent{
        left:10px;
        right:10px;
        bottom:10px
    }
    .cookie-modal{
        border-radius:18px
    }
    .cookie-content{
        padding:22px 18px 14px
    }
    .cookie-content h3{
        font-size:1.08rem
    }
    .cookie-footer{
        padding:0 18px 18px;
        display:grid;
        grid-template-columns:1fr 1fr
    }
    #acceptAll{
        grid-column:1/-1
    }
    .cookie-option__head{
        gap:12px
    }
}
.empty-state__inner{
    max-width:720px;
    margin:0 auto;
    padding:2.5rem 1.5rem;
    text-align:center
}
.empty-state__icon{
    font-size:2rem;
    line-height:1;
    margin-bottom:1rem
}
.empty-state__image{
    width:100px;
    max-width:100%;
    height:auto;
    margin:0 auto 1.5rem;
    display:block;
    opacity:.52;
    filter:saturate(.85)
}
.empty-state__title{
    margin:0;
    font-size:1.5rem;
    line-height:1.15;
    letter-spacing:-.02em;
    font-weight:600;
    color:#3f3a34;
    opacity:.6
}
.home-kicker,.home-stat__label{
    font-weight:600;
    letter-spacing:.08em
}
.empty-state__text{
    max-width:32rem;
    margin:1rem auto 0;
    font-size:1rem;
    line-height:1.8;
    color:var(--text-secondary);
    opacity:.6
}

.article-page,.collection-page,.home-page{
    padding-top:1rem
}
.home-hero{
    overflow:hidden;
    padding:clamp(2rem,4vw,3.5rem);
    border-radius:34px;
    text-align:center;
    isolation:isolate;
    border:1px solid rgba(255,255,255,.06);
    background:radial-gradient(circle at 18% 12%,rgba(255,225,190,.12),transparent 38%),radial-gradient(circle at 82% 88%,rgba(120,8,8,.3),transparent 50%),linear-gradient(180deg,rgba(10,8,8,.78) 0,rgba(14,11,10,.7) 55%,rgba(18,14,13,.66) 100%),url(/assets/images/home.webp) center/cover no-repeat
}
.home-hero::before{
    inset:0;
    opacity:.14;
    background:radial-gradient(rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:3px 3px
}
.home-hero::after{
    inset:auto -60px -90px auto;
    width:240px;
    height:240px;
    border-radius:50%;
    background:rgba(179,38,30,.12);
    filter:blur(20px)
}
.home-hero>*{
    z-index:1
}
.home-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.45rem;
    min-height:38px;
    padding:.55rem .95rem;
    border-radius:999px;
    background:rgba(122,18,18,.22);
    border:1px solid rgba(255,235,225,.16);
    color:rgba(255,242,236,.92);
    font-size:.76rem;
    backdrop-filter:blur(10px);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06)
}
.home-hero__content{
    margin-top:1.5rem;
    display:grid;
    gap:1.35rem
}
.home-hero__text{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-shadow:0 6px 24px rgba(0,0,0,.42)
}
.home-hero__text h1{
    margin:0;
    color:#fff8f4;
    text-wrap:balance
}
.home-hero__intro{
    max-width:44rem;
    margin-top:1rem;
    font-size:1.02rem;
    line-height:1.85;
    color:rgba(255,240,232,.84);
    text-align:center
}
.home-hero__actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:.8rem;
    margin-top:1.5rem
}
.home-hero__actions .button,.home-hero__actions a{
    min-height:48px
}
.home-hero__card{
    border:1px solid #eee6dd;
    border-radius:28px;
    background:rgba(255,255,255,.82);
    backdrop-filter:blur(8px);
    padding:1.5rem;
    box-shadow:var(--shadow-soft)
}
.home-hero__card h2{
    margin:0;
    font-size:1.55rem;
    line-height:1.1
}
.home-stats{
    display:grid;
    gap:1rem;
    margin-top:1.2rem
}
.home-stat{
    padding-top:1rem;
    border-top:1px solid #f0eae3
}
.home-stat:first-child{
    padding-top:0;
    border-top:0
}
.home-stat__label{
    display:block;
    margin-bottom:.3rem;
    font-size:.72rem;
    color:#a09587
}
.home-stat__value{
    font-size:.98rem;
    line-height:1.7;
    color:var(--text)
}
.section-heading{
    display:flex;
    flex-direction:column;
    gap:.65rem;
    margin-bottom:1.35rem
}
.content-section__lead{
    margin:.45rem 0 0;
    max-width:44rem;
    color:var(--text-secondary);
    font-size:.98rem;
    line-height:1.8
}
.home-grid--2,.home-grid--3{
    grid-template-columns:1fr
}
.home-panel{
    overflow:hidden;
    min-height:100%;
    border:1px solid var(--border-light);
    border-radius:16px;
    padding:1.4rem;
    transition:transform .22s,box-shadow .22s,border-color .22s;
    background-color:#fff
}
.home-panel:hover{
    box-shadow:var(--shadow-card);
    border-color:#e5dbcf
}
.home-panel h3{
    margin-bottom:.55rem;
    color:#1f1b18;
    font-size:18px
}
.home-panel p{
    margin:0;
    color:var(--text-secondary);
    font-size:14px;
    line-height:1.8
}
.home-panel__emoji,.home-panel__icon{
    width:2.65rem;
    height:2.65rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#f8f3ec;
    border:1px solid #ece2d7;
    font-size:1.1rem;
    margin-bottom:1rem;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7)
}
.home-panel__meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:.8rem
}
.home-panel__count,.text-link{
    display:inline-flex;
    align-items:center;
    font-weight:600
}
.home-panel__count{
    min-height:32px;
    padding:.45rem .8rem;
    border-radius:999px;
    background:#f8f5f1;
    border:1px solid #e9e2d8;
    color:#8e8377;
    font-size:.78rem;
    white-space:nowrap
}
.home-panel--category h3{
    margin-top:.15rem
}
.text-link{
    gap:.4rem;
    margin-top:1rem;
    font-size:.92rem;
    color:var(--accent);
    transition:color .2s,transform .2s
}
.text-link::after{
    content:"→";
    transition:transform .2s
}
.text-link:hover{
    color:var(--accent-hover)
}
.text-link:hover::after{
    transform:translateX(2px)
}
.related-links--large{
    gap:.9rem
}
.related-links--large a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    width:100%;
    padding:1rem 1.1rem;
    border:1px solid #ede6dd;
    border-radius:20px;
    background:#f5f3ee
}
.related-links--large a:hover{
    box-shadow:var(--shadow-card);
    border-color:#e2d6c8
}
.related-links--large span{
    font-weight:600;
    color:var(--text)
}
.related-links--large small{
    color:#9c9288;
    font-size:.82rem;
    font-weight:500;
    white-space:nowrap
}
.home-page .calendar-grid,
.home-page .rich-text h2 {
    margin-top: 0;
}
.home-page .rich-text{
    margin:48px 0;
    padding:32px;
    background:var(--bg-warm);
    border-radius:16px
}
.home-page .rich-text h2+p{
    margin-top:.35rem
}
.article-page .rich-text,.home-page .rich-text h3{
    color:#525252
}
.home-page .faq-question{
    color:#211c19
}
.home-page .faq-answer{
    color:var(--text-secondary)
}
.collection-hero{
    display:grid;
    gap:2rem;
    margin-bottom:2rem
}
.collection-page--no-hero .hero h1{
    margin-top:.8rem
}
.collection-hero__media{
    max-width:980px;
    width:100%;
    margin:0 auto
}
.collection-hero__image-wrap{
    overflow:hidden;
    border-radius:32px;
    border:1px solid var(--border);
    background:var(--surface-muted)
}
.collection-hero__image{
    width:100%;
    height:420px;
    object-fit:cover;
    display:block;
    transition:transform .25s
}
.collection-hero__content{
    max-width:760px;
    margin:0 auto;
    text-align:center
}
.collection-hero__kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:.5rem .9rem;
    border-radius:999px;
    border:1px solid #e9e2d8;
    background:#f8f5f1;
    color:#7e6a57;
    font-size:11px;
    font-weight:600;
    letter-spacing:.05em;
    margin-bottom:1rem
}
.collection-hero__meta{
    margin-top:1rem;
    color:var(--text-muted);
    font-size:.82rem;
    opacity:.75
}
.collection-hero__actions .button--primary{
    min-height:50px;
    padding:0 40px;
    font-size:14px;
    font-weight:600;
    border-radius:999px
}
.brand-featured-card__title,.collection-subnav,.collection-subnav--brand{
    margin-top:1.25rem
}
.collection-subnav__intro{
    text-align:center;
    max-width:760px;
    margin:0 auto 1rem;
    color:var(--text-secondary)
}
.brands-section,.collection-related-articles{
    max-width:1280px
}

.collection-related-articles .calendar-card__image, .article-index-grid .calendar-card__image{

width:100%;height:18rem;object-fit:cover;
}
.brand-info-card__availability{
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid rgba(120,90,60,.1);
    max-width:760px
}
.brand-info-card__availability-head{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
    padding:6px 12px;
    border-radius:999px;
    background:#f7f9f7;
    border:1px solid #d7e2da;
    color:#4f5d54;
}
.brand-info-card__availability-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    border-radius:999px;
  background:#d9e7dd;
    color:#4d6857;
    font-size:.78rem;
    font-weight:800;
    font-family:Georgia,serif;
    line-height:1
}
.brand-info-card__availability-label{
    color:#5e5145;
    font-size:12px;
    font-weight:700;
    letter-spacing:.01em
}
.brand-info-card__availability-text{
    margin:0;
    color:#9a928a;
    font-size:13px;
    line-height:1.7
}
.brand-info-card__actions{
    margin-top:28px
}
.brand-info-card-wrap{
    max-width:860px;
    margin:2.5rem auto 0
}
.brand-info-card{
    padding:2rem 2.25rem;
    border:1px solid #d8e5dc;
    border-left:3px solid #89a995;
    border-radius:16px;
    background:#f4f8f5;
    color:#59645d;
}
.brand-info-card__title{
    margin:0 0 1rem;
    font-family:var(--sans);
    font-size:1.15rem;
    line-height:1.35;
    font-weight:600;
    letter-spacing:-.02em;
    color:#263c30;
}
.brand-info-card__text{
    color:var(--text-secondary);
    font-size:15px;
    line-height:1.8
}
.brand-info-card__text p{
    margin:0 0 .85rem
}
.brand-info-card__text p:last-child{
    margin-bottom:0
}
.brand-info-card__text ul{
    margin:.75rem 0 0;
    padding-left:1.1rem
}

.brand-info-card__text li::marker{
    color:#789582;
}
.brand-info-card__text li{
    margin-bottom:.45rem;
    color:var(--text-secondary)
}
.brand-info-card__text strong{
    color:#344b3c;
    font-weight:600
}
.brand-featured-card-wrap{
    max-width:860px;
    margin:2rem auto 0
}
.brand-featured-card{
    overflow:visible
}

.article-content,.best-intro{
    max-width:860px
}
.article-index-grid{
    margin-top:2.5rem
}
.article-page .collection-hero__content{
    max-width:760px
}
.article-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.65rem;
    margin-top: 1rem;
    color: var(--text-muted);
    font-size: 0.85rem;
}
.article-meta span {
    display: inline-flex;
    align-items: center;
}
.article-meta span + span::before {
     content: "•";
     margin-right: 0.65rem;
     color: #c4b8aa;
}

.article-image {
    margin: 2.5rem 0;
}

.article-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.08);
}

.article-image figcaption {
    margin-top: 0.65rem;
    font-size: 0.88rem;
    line-height: 1.45;
    color: #6f6f6f;
    text-align: center;
}

/* Left aligned image inside article text */
.article-image.align-left {
    float: left;
    width: min(42%, 360px);
    margin: 0.35rem 1.75rem 1.25rem 0;
}

/* Right aligned image inside article text */
.article-image.align-right {
    float: right;
    width: min(42%, 360px);
    margin: 0.35rem 0 1.25rem 1.75rem;
}

/* Full width option */
.article-image.align-center,
.article-image.full-width {
    float: none;
    width: 100%;
    margin: 2.75rem 0;
}

/* Prevent layout issues after floated images */
.article-content::after,
.article-body::after {
    content: "";
    display: table;
    clear: both;
}

/* Mobile: make floated images full width */
@media (max-width: 768px) {
    .article-image.align-left,
    .article-image.align-right {
        float: none;
        width: 100%;
        margin: 2rem 0;
    }
}

.article-cta-box {
    margin: 2.25rem 0;
    padding: 1.8rem 2rem;
    border: 1px solid var(--border-light);
    border-radius: 22px;
    background: var(--surface-muted);
    box-shadow: none;
}

.article-cta-box h3 {
    margin: 0 0 .75rem;
    color: var(--text-secondary)!important;
    font-family: var(--sans);
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.015em;
}

.article-cta-box p {
    max-width: 720px;
    margin: 0 0 1.25rem;
    color: var(--text-secondary);
    font-size: 15px;
    line-height: 1.8;
}

.article-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 44px;
    padding: .72rem 1.15rem;
    border-radius: 999px;
    background: var(--accent);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: none;
    transition: background .2s ease, transform .15s ease;
}

.article-cta-button::after {
    content: "→";
    font-size: 15px;
    line-height: 1;
    transition: transform .15s ease;
}

.article-cta-button:hover {
    background: var(--accent-hover);
    transform: translateY(-1px);
}

.article-cta-button:hover::after {
    transform: translateX(2px);
}

@media (max-width: 640px) {
    .article-cta-box {
        margin: 2rem 0;
        padding: 1.35rem;
        border-radius: 20px;
    }

    .article-cta-button {
        width: 100%;
        min-height: 48px;
    }
}
.best-intro{
    margin:2.25rem auto 0
}
.best-intro__inner{
    padding:1.5rem 1.5rem 1.4rem;
    border:1px solid #eee6dd;
    border-radius:28px;
    background:linear-gradient(180deg,#fff 0,#fcfaf7 100%);
    box-shadow:var(--shadow-soft);
    text-align:center
}
.best-intro__eyebrow{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:.45rem .85rem;
    border-radius:999px;
    background:#f8f5f1;
    border:1px solid #e9e2d8;
    color:#7e6a57;
    font-size:.74rem;
    font-weight:600;
    letter-spacing:.05em
}
.best-method__intro,.best-method__item h3{
    font-size:.78rem;
    font-weight:600
}
.best-intro__title{
    margin:1rem 0 .65rem
}
.best-intro__text{
    max-width:42rem;
    margin:0 auto
}
.best-method{
    max-width:1100px;
    margin:1rem auto 0
}
.best-method__intro{
    margin:0 0 .85rem;
    text-align:center;
    letter-spacing:.08em;
    color:#9a8f84
}
.best-method__grid{
    display:grid;
    gap:.85rem;
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.best-method__item{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    border:1px solid #eee6dd;
    border-radius:12px;
    background:#f8f5f1;
    padding:1rem .9rem;
    min-height:100%
}
.best-method__icon{
    width:2.4rem;
    height:2.4rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#f3eee8;
    border:1px solid #e7ddd1;
    color:#7a6a5a;
    margin-bottom:.65rem;
    flex-shrink:0
}
.best-method__icon svg{
    width:16px;
    height:16px;
    stroke-width:1.8
}
.best-method__item h3{
    margin:0;
    line-height:1.3;
    letter-spacing:.04em;
    color:#6f655c
}
.best-method__item p{
    margin:.5rem 0 0;
    font-size:.84rem;
    line-height:1.6;
    color:var(--text-muted)
}
.best-list__label{
    display:inline-flex;
    margin-top:.6rem;
    padding:.35rem .6rem;
    border-radius:999px;
    background:rgba(179,38,30,.08);
    color:var(--accent);
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.05em
}

.collection-subnav--brand .collection-subnav__intro{
    text-align:center;
    max-width:760px;
    margin:0 auto 1rem;
    color:var(--text-secondary)
}
.collection-hero__image-link{
    display:block
}
.collection-hero__image-link:hover .collection-hero__image{
    transform:scale(1.02)
}
.comparison-section{
    max-width:1100px;
    margin:2.25rem auto 0
}
.comparison-card{
    overflow:hidden;
    border:1px solid #eee6dd;
    border-radius:12px
}
.comparison-header{
    display:flex;
    justify-content:space-between;
    gap:1.5rem;
    padding:1.6rem 1.6rem 1.25rem;
    border-bottom:1px solid #f0eae3
}
.comparison-kicker{
    margin:0 0 .45rem;
    color:#9a8f84;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.09em
}
.comparison-header h2{
    margin:0;
    font-family:var(--sans);
    font-size:clamp(1.3rem, 2.4vw, 1.65rem);
    line-height:1.2;
    letter-spacing:-.025em;
    color:#1f1b18
}
.brand-row__text,.comparison-header p:not(.comparison-kicker){
    margin:.7rem 0 0;
    color:var(--text-secondary);
    font-size:.95rem;
    line-height:1.75
}
.comparison-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.comparison-table {
    min-width: 900px;
    border-spacing: 0;
    width: 100%;
    border-collapse: collapse;
}
.comparison-table td,.comparison-table th{
    padding:.95rem 1rem;
    text-align:left;
    vertical-align:middle;
    border-bottom:1px solid #f0eae3;
    white-space:nowrap
}
.comparison-table th{
    position:sticky;
    top:0;
    z-index:1;
    background:#f8f5f1;
    color:#7a7066;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.07em
}
.comparison-table td{
    font-size:13px;
    color:var(--text-secondary);
    font-weight:500;
    padding:1.55rem 1rem;
    border-bottom:1px solid var(--border-light)
}
.comparison-table tbody tr{
    background:#fff;
    transition:background .18s
}
.comparison-table tbody tr:last-child td,.rich-text table:not(.comparison-table) tbody tr:last-child td{
    border-bottom:0
}
.comparison-table-wrap::-webkit-scrollbar{
    display:none;
    height:0
}
.comparison-table td:nth-child(5),.comparison-table td:nth-child(6),.comparison-table th:nth-child(5),.comparison-table th:nth-child(6){
    white-space:normal;
    line-height:1.35;
    overflow-wrap:break-word
}
.comparison-table tbody tr:nth-child(odd){
    background:#fff
}
.comparison-table tbody tr:hover,.rich-text table:not(.comparison-table) tbody tr:hover,.rich-text table:not(.comparison-table) thead{
    background:#f8f5f1
}
.comparison-rank{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    height:34px;
    padding:0 .7rem;
    border-radius:999px;
    background:#f6f2ed;
    border:1px solid #e9e2d8;
    color:#7a7066;
    font-size:.78rem;
    font-weight:700
}
.comparison-table tbody tr:first-child .comparison-rank{
    background:#a83e32;
    border-color:#a83e32;
    color:#fff
}
.comparison-product{
    display:flex;
    align-items:center;
    gap:.8rem;
    min-width:260px;
    max-width:320px
}
.comparison-product img{
    width:52px;
    height:52px;
    flex:0 0 52px;
    object-fit:cover;
    border-radius:14px;
    background:#f5f3ee;
    border:1px solid #eee6dd
}
.comparison-product strong{
    display:block;
    color:#1f1b18;
    font-size:.93rem;
    font-weight:600;
    line-height:1.35;
    white-space:normal
}
.comparison-favorite{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    padding:.36rem .66rem;
    border:1px solid #f4bcc8;
    border-radius:999px;
    background:#fff1f3;
    color:#9f1239;
    font-size:12px;
    font-weight:700;
    white-space:nowrap
}
.comparison-favorite--top{
    background:#fff8e7;
    border-color:#e7c878;
    color:#8a6412
}
.button--small{
    min-height:38px;
    padding:.58rem .9rem;
    font-size:12px
}
.comparison-button{
    white-space:nowrap
}
.comparison-note{
    margin:0;
    padding:1rem 1.6rem 1.25rem;
    border-top:1px solid #f0eae3;
    color:#a09587;
    font-size:.82rem;
    line-height:1.7;
    background:#fcfaf7
}
.comparison-product-link{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:inherit;
    font-weight:700
}
.comparison-product-link:hover strong{
    text-decoration:underline
}
.comparison-product-link img{
    transition:transform .18s
}
.comparison-product-name{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap
}
.comparison-badge{
    align-items:center;
    gap:6px;
    padding:2px 8px;
    border-radius:4px;
    background:#f4e7c8;
    color:#8f2d24;
    border:1px solid #dcc08a;
    display:inline-block;
    font-size:10px;
    font-weight:700;
    letter-spacing:.06em;
    margin-left:8px;
    vertical-align:middle
}
.comparison-badge::before{
    content:"🏆"
}
.comparison-product-link:hover img{
    transform:scale(1.03)
}
.brand-hero__badges{
    margin:0 0 1.5rem;
    display:flex;
    flex-wrap:wrap;
    gap:.6rem;
    justify-content:center
}
.badge--subcategory{
    background:#f6f2ed;
    border-color:#e9e2d8;
    color:#7a7066
}
.badge--subcategory:hover{
    background:#f1ebe4;
    border-color:#ddd2c4
}
.brands-grid{
    display:grid;
    gap:1.25rem;
    grid-template-columns:1fr
}
.brand-row{
    height:100%;
    transition:opacity .2s,transform .2s
}
.brand-row__link{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:220px;
    height:100%;
    padding:1.35rem 1.35rem 1.25rem;
    border:1px solid #eee7de;
    border-radius:28px;
    color:inherit;
    overflow:hidden;
    transition:transform .22s,box-shadow .22s,border-color .22s,background .22s
}
.brand-row__link:hover{
    box-shadow:var(--shadow-card);
    border-color:#e3d7c9
}
.brand-row__content{
    display:flex;
    flex-direction:column;
    flex:1
}
.brand-row__meta,.brand-row__monogram{
    align-items:center;
    margin-bottom:1rem
}
.brand-row__meta{
    display:flex;
    justify-content:flex-start;
    gap:.55rem;
    flex-wrap:wrap
}
.brand-row__badge-link{
    transition:.2s
}
.brand-row__badge-link:hover{
    transform:translateY(-1px);
    box-shadow:0 2px 6px rgba(0,0,0,.05)
}
.badge__icon{
    font-size:.95rem;
    line-height:1
}
.brand-row__monogram{
    width:2.75rem;
    height:2.75rem;
    display:inline-flex;
    justify-content:center;
    border-radius:999px;
    background:#f8f3ec;
    border:1px solid #ece2d7;
    color:#8d5a34;
    font-size:.95rem;
    font-weight:700;
    letter-spacing:-.02em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
.brand-row__title{
    margin:0;
    font-family:'DM Sans',sans-serif;
    font-size:1.22rem;
    line-height:1.2;
    letter-spacing:-.02em;
    color:#1f1b18
}
.brand-row__title-link{
    color:inherit
}
.brand-row__title-link:hover{
    color:var(--accent)
}
.brand-row__footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.8rem;
    margin-top:1.25rem;
    padding-top:1rem;
    border-top:1px solid #f0eae3
}
.brand-row__count{
    font-size:.85rem;
    color:var(--text-muted);
    font-weight:500
}
.brand-row__cta{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    font-size:.92rem;
    font-weight:600;
    color:var(--accent);
    transition:color .2s
}
.brand-row__cta::after{
    content:"→";
    transition:transform .2s
}
.brand-row__cta:hover{
    color:var(--accent-hover)
}
.brand-row__cta:hover::after{
    transform:translateX(2px)
}
.back-to-top{
    position:fixed;
    right:1.25rem;
    bottom:1.25rem;
    width:3.35rem;
    height:3.35rem;
    border:1px solid #9a8772;
    border-radius:999px;
    background:#9a8772;
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:1rem;
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:opacity .22s,transform .22s,background .22s,box-shadow .22s;
    z-index:1200
}
.back-to-top:hover{
    background:#6f5f4e;
    box-shadow:0 16px 30px rgba(61,46,33,.22),inset 0 1px 0 rgba(255,255,255,.05);
    transform:translateY(0) scale(1.04)
}
.back-to-top:active{
    transform:translateY(0) scale(.96)
}
.back-to-top.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0)
}
.back-to-top span{
    font-size:1.05rem;
    font-weight:700
}
.rich-text ul{
    list-style:none;
    margin:1.25rem 0 1.75rem;
    padding-left:.5rem;
    display:grid;
    gap:.8rem
}
.rich-text li{
    position:relative;
    padding-left:1.2rem;
    font-size:15px;
    line-height:1.8;
    color:var(--text-secondary)
}
.rich-text li::before{
    content:"";
    position:absolute;
    left:0;
    top:.72em;
    width:6px;
    height:6px;
    border-radius:999px;
    background:var(--accent)
}
.rich-text li strong,.rich-text table:not(.comparison-table) strong,.rich-text table:not(.comparison-table) td:first-child{
    color:var(--text);
    font-weight:600
}
@media (min-width:640px){
    .calendar-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media (min-width:700px){
    .brands-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media (min-width:720px){
    .home-grid--2{
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media (min-width:900px){
    .section-heading,.toolbar{
        flex-direction:row;
        align-items:center;
        justify-content:space-between
    }
}
@media (min-width:960px){
    .home-grid--3{
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media (min-width:1100px){
    .brands-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media (min-width:1200px){
    .calendar-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .home-page .calendar-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media (max-width:960px){
    .site-header__cta,.site-nav{
        display:none
    }
    .mobile-menu-toggle{
        display:inline-flex
    }
    .site-footer__inner{
        grid-template-columns:1fr 1fr
    }
    .site-footer__col--brand{
        max-width:none
    }
}
@media (max-width:640px){
    .calendar-card__offer-row{
        grid-template-columns:1fr auto
    }
    .calendar-card__offer-row span:last-child{
        grid-column:1/-1
    }
    h1{
        font-size:clamp(2rem, 9vw, 2.2rem);
        line-height:1.25
    }
    h2{
        margin:2rem 0 .75rem;
        font-size:clamp(1.45rem, 6vw, 1.75rem);
        line-height:1.35;
        letter-spacing:-.02em
    }
    .site-logo img{
        height:46px;
        max-width:150px
    }
    .site-header{
        background:#fefdfc;
        backdrop-filter:none
    }
    .site-header__inner{
        padding:.2rem 1.15rem
    }
    .mobile-menu-toggle{
        height:40px;
        width:40px
    }
    .toolbar{
        margin-top:2rem
    }
    .collection-hero__actions .button--primary{
        width:100%
    }
    .site-footer{
        margin-top:4rem
    }
    .site-footer__inner{
        grid-template-columns:1fr;
        gap:2rem;
        padding:2.75rem 1.25rem 2rem
    }
    .site-footer__bottom{
        flex-direction:column;
        align-items:flex-start
    }
    .chips{
        flex-wrap:nowrap;
        justify-content:flex-start;
        overflow-x:auto;
        overflow-y:hidden;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        padding:0 1.25rem 6px;
        margin-left:-1.25rem;
        margin-right:-1.25rem
    }
    .chips::-webkit-scrollbar{
        display:none
    }
    .chip,.chip-button{
        flex:0 0 auto;
        white-space:nowrap
    }
    .search-shell{
        padding:.4rem;
        border-radius:999px
    }
    .search-inner{
        gap:.6rem;
        padding:.2rem 1rem
    }
    .search-input{
        font-size:16px;
        line-height:1.2
    }
    .search-input::placeholder{
        font-size:14px
    }
    .search-icon{
        width:18px;
        height:18px
    }
    .search-count{
        padding:.4rem .7rem;
        font-size:.75rem
    }
    .brand-info-card{
        padding:1.35rem;
        border-radius:20px
    }
    .brand-row__link{
        min-height:200px;
        padding:1.15rem 1.1rem 1.05rem;
        border-radius:22px
    }
    .brand-row__title{
        font-size:1.1rem
    }
    .brand-row__text{
        font-size:.92rem;
        max-width:100%
    }
    .brand-row__footer{
        margin-top:1rem;
        padding-top:.9rem
    }
    .back-to-top{
        right:1rem;
        bottom:1rem;
        width:3rem;
        height:3rem
    }
    .rich-text ul{
        padding-left:.35rem
    }
    .rich-text li{
        padding-left:1.15rem;
        font-size:14px
    }
    .calendar-card__badges{
        gap:.42rem;
        margin-top:1rem
    }
    .badge{
        padding:.38rem .58rem;
        font-size:.67rem;
        gap:.3rem;
        letter-spacing:.035em
    }
    .badge__icon{
        font-size:.78rem
    }
    .calendar-card__image {
        width: 100%;
        height:auto;
        object-fit: cover;
}
  .calendar-card__title {
        font-size: 1.15rem;
        line-height: 1.28;
        color: #171717;
    }
    
    
    
}
@media (prefers-reduced-motion:reduce){
    .back-to-top{
        transition:opacity 10ms linear,visibility 10ms linear
    }
}
.rich-text table:not(.comparison-table){
    width:100%;
    margin:1.75rem 0 2rem;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--surface);
    font-size:15px
}
.rich-text table:not(.comparison-table) th{
    padding:.95rem 1rem;
    color:#6f655c;
    font-size:.78rem;
    font-weight:700;
    line-height:1.4;
    letter-spacing:.05em;
    text-align:left;
    border-bottom:1px solid var(--border)
}
.rich-text table:not(.comparison-table) td{
    padding:1rem;
    color:var(--text-secondary);
    font-size:15px;
    line-height:1.65;
    vertical-align:top;
    border-bottom:1px solid var(--border-light)
}
@media (max-width:720px){
    .best-method__item p,.comparison-table td:nth-child(4),.comparison-table th:nth-child(4){
        display:none
    }
    .comparison-section{
        margin-top:1.5rem
    }
    .comparison-card,.home-hero__card,.home-page .faq-item,.home-page .rich-text,.home-panel{
        border-radius:22px
    }
    .comparison-header{
        padding:1.25rem 1.1rem 1rem
    }
    .comparison-header h2{
        font-size:1.25rem
    }
    .comparison-header p:not(.comparison-kicker){
        font-size:.9rem
    }
    .comparison-table td,.comparison-table th{
        padding:16px
    }
    .comparison-note{
        padding:.9rem 1.1rem 1rem;
        font-size:.78rem
    }
    .home-hero__actions .button {
        width: 100%;
	}
    .home-page{
        padding-top:.5rem
    }
    .home-hero{
        padding:1.25rem;
        border-radius:26px
    }
    .home-kicker{
        min-height:34px;
        padding:.45rem .8rem;
        font-size:.72rem
    }
    .home-hero__intro{
        font-size:.98rem;
        line-height:1.85
    }
    .home-hero__actions{
        flex-direction:column;
        align-items:stretch
    }
    .collection-hero__image{
        height:280px
    }
    .collection-hero__image-wrap{
        border-radius:24px
    }
    .best-method{
        margin-top:.85rem
    }
    .best-method__intro{
        margin-bottom:.65rem;
        font-size:.72rem
    }
    .best-method__grid{
        gap:.55rem
    }
    .best-method__item{
        padding:.8rem .45rem;
        border-radius:16px
    }
    .best-method__icon{
        width:2rem;
        height:2rem;
        margin-bottom:.5rem
    }
    .best-method__icon svg{
        width:14px;
        height:14px
    }
    .best-method__item h3{
        font-size:11px;
        line-height:1.25;
        letter-spacing:.03em
    }
    
    .rich-text table:not(.comparison-table){
        display:block;
        width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
        border-radius:16px
    }
    .rich-text table:not(.comparison-table) td,.rich-text table:not(.comparison-table) th{
        min-width:160px;
        padding:.85rem .9rem;
        font-size:14px
    }
    .rich-text table:not(.comparison-table) th{
        font-size:.72rem
    }
     .content-section.article-content {
            margin-top: 1.75rem;
    }
}
 .collection-page--best-index .content-section {
     max-width: 960px;
     margin: 4rem auto 0;
}
 .toplist-grid {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: 1.25rem;
     margin-top: 1.75rem;
}
 .toplist-card {
     position: relative;
     display: grid;
     grid-template-columns: 76px 1fr auto;
     align-items: center;
     gap: 1.25rem;
     min-height: 132px;
     padding: 1.35rem 1.45rem;
     border: 1px solid #eee7de;
     border-radius: 28px;
     background: #fff;
     color: inherit;
     text-decoration: none;
     overflow: hidden;
     transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}
 .toplist-card:hover {
     border-color: #e3d7c9;
     box-shadow: var(--shadow-card);
     background: #fff;
     text-decoration: none;
}
 .toplist-card__icon {
     position: relative;
     z-index: 1;
     width: 80px;
     height: 80px;
     border-radius: 999px;
     background: #f8f3ec;
     border: 1px solid #ece2d7;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75);
     flex-shrink: 0;
}
 .toplist-card__icon img {
     width: 65px;
     height: 65px;
     object-fit: contain;
     display: block;
}
 .toplist-card__icon span {
     font-size: 1.55rem;
     font-weight: 700;
     color: #8d5a34;
}
 .toplist-card__content {
     position: relative;
     z-index: 1;
     min-width: 0;
}
 .toplist-card__content h3 {
     margin: 0;
     font-family: var(--sans);
     font-size: clamp(1.08rem, 1.45vw, 1.12rem);
     line-height: 1.25;
     font-weight: 600;
     letter-spacing: -0.025em;
     color: #1f1b18;
}
 .toplist-card__content p {
     margin: .45rem 0 0;
     color: var(--text-muted);
     font-size: .9rem;
     line-height: 1.5;
     font-weight: 500;
}
 .toplist-card__arrow {
     position: relative;
     z-index: 1;
     width: 38px;
     height: 38px;
     border-radius: 999px;
     background: #f8f5f1;
     border: 1px solid #e9e2d8;
     color: var(--accent);
     display: inline-flex;
     align-items: center;
     justify-content: center;
     font-size: 1.05rem;
     font-weight: 700;
     transition: transform .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
}
 .toplist-card:hover .toplist-card__arrow {
     transform: translateX(3px);
     background: var(--accent);
     border-color: var(--accent);
     color: #fff;
}
/* Empty state */
 .collection-page--best-index .empty-state {
     margin-top: 2rem;
}
 .collection-page--best-index .empty-state__inner {
     max-width: 720px;
     margin: 0 auto;
     padding: 2.5rem 1.5rem;
     text-align: center;
}
 .collection-page--best-index .empty-state__image {
     width: 100px;
     max-width: 100%;
     height: auto;
     margin: 0 auto 1.5rem;
     display: block;
     opacity: .52;
     filter: saturate(.85);
}
 .collection-page--best-index .empty-state__title {
     margin: 0;
     font-size: 1.5rem;
     line-height: 1.15;
     letter-spacing: -0.02em;
     font-weight: 600;
     color: #3f3a34;
     opacity: .6;
}
 .collection-page--best-index .empty-state__text {
     max-width: 32rem;
     margin: 1rem auto 0;
     font-size: 1rem;
     line-height: 1.8;
     color: var(--text-secondary);
     opacity: .6;
}
 .collection-page--best-index .empty-state__button {
     margin-top: 1.5rem;
}
/* Mobile */
 @media (max-width: 820px) {
     .toplist-grid {
         grid-template-columns: 1fr;
    }
     .toplist-card {
         grid-template-columns: 64px 1fr auto;
         min-height: 112px;
         gap: 1rem;
         padding: 1.15rem;
         border-radius: 24px;
    }
     .toplist-card__icon {
         width: 74px;
         height: 74px;
    }
     .toplist-card__icon img {
         width: 55px;
         height: 55px;
    }
     .toplist-card__arrow {
         width: 34px;
         height: 34px;
    }
}
 @media (max-width: 520px) {
     .toplist-card {
         grid-template-columns: 58px 1fr;
    }
     .toplist-card__arrow {
         display: none;
    }
     .toplist-card__icon {
         width: 68px;
         height: 68px;
    }
     .toplist-card__icon img {
         width: 50px;
         height: 50px;
    }
     .toplist-card__content h3 {
         font-size: 1rem;
    }
}
 .best-list__review {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: .85rem;
     margin-top: 1rem;
}
 .best-list__review-group {
     padding: .9rem 1rem;
     border: 1px solid #eee6dd;
     border-radius: 18px;
     background: #fcfaf7;
}
 .best-list__review-title {
     margin-bottom: .55rem;
     color: #6f655c;
     font-size: .72rem;
     font-weight: 700;
     letter-spacing: .07em;
     text-transform: uppercase;
}
 .best-list__review ul {
     display: grid;
     gap: .45rem;
     margin: 0;
     padding: 0;
     list-style: none;
}
 .best-list__review li {
     position: relative;
     padding-left: 1.45rem;
     color: var(--text-secondary);
     font-size: 14px;
     line-height: 1.5;
}
 .best-list__review li::before {
     position: absolute;
     left: 0;
     top: .05rem;
     width: 1rem;
     height: 1rem;
     border-radius: 999px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-size: .75rem;
     font-weight: 700;
     line-height: 1;
}
 .best-list__review li.is-pro::before {
     content: "+";
     background: #138a43;
}
 .best-list__review li.is-con::before {
     content: "−";
     background: #b3261e;
}
 @media (max-width: 720px) {
     .best-list__review {
         grid-template-columns: 1fr;
         text-align: left;
    }
}
 
 
/* =========================================================
   Best list cards
   ========================================================= */

.collection-page--best .best-section {
    max-width: 1180px;
}

.collection-page--best .best-list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Desktop */

.collection-page--best .best-list__item {
    display: grid;
    grid-template-columns: 48px 250px minmax(0, 1fr);
    gap: 1.35rem;
    align-items: start;
    padding: 1.35rem 1.5rem;
    border: 1px solid var(--border);
    border-radius: 30px;
    background: var(--surface);
    box-shadow: var(--shadow-soft);
}

.collection-page--best .best-list__rank {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: 0;
    padding-top: 62px;
}

.collection-page--best .best-list__rank span {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 999px;
    background: #f6f2ed;
    border: 1px solid #e9e2d8;
    color: #7a7066;
    font-size: .82rem;
    font-weight: 700;
}

.collection-page--best .best-list__image-wrap {
    width: 100%;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 24px;
}

.collection-page--best .best-list__image-wrap a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.collection-page--best .best-list__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.collection-page--best .best-list__content {
    min-width: 0;
    width: 100%;
}

.collection-page--best .best-list__badges {
    margin-top: 0;
    justify-content: flex-start;
}

.collection-page--best .best-list__title {
    margin: .9rem 0 0;
    font-size: 1.25rem;
    line-height: 1.25;
    letter-spacing: -0.02em;
    text-align: left;
}

.collection-page--best .best-list__text {
    max-width: 780px;
    margin: .7rem 0 0;
    color: var(--text-secondary);
    font-size: 15px;
    line-height: 1.7;
    text-align: left;
}

.collection-page--best .best-list__review {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-top: .9rem;
    text-align: left;
}

.collection-page--best .best-list__review-group {
    min-width: 0;
    padding: .85rem .95rem;
    border: 1px solid #eee6dd;
    border-radius: 18px;
    background: #fcfaf7;
}

.collection-page--best .best-list__review-title {
    margin-bottom: .55rem;
    color: #6f655c;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.collection-page--best .best-list__review ul {
    display: grid;
    gap: .45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.collection-page--best .best-list__review li {
    position: relative;
    padding-left: 1.45rem;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 1.5;
}

.collection-page--best .best-list__review li::before {
    position: absolute;
    left: 0;
    top: .08rem;
    width: 1rem;
    height: 1rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1;
}

.collection-page--best .best-list__review li.is-pro::before {
    content: "+";
    background: #138a43;
}

.collection-page--best .best-list__review li.is-con::before {
    content: "−";
    background: #b3261e;
}

.collection-page--best .best-list__actions {
    width: 100%;
    max-width: none;
    margin-top: .9rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: .75rem;
}

.collection-page--best .best-list__actions .button {
    width: auto;
    min-width: 200px;
    min-height: 46px;
}

/* Tablet */

@media (max-width: 1024px) and (min-width: 721px) {
    .collection-page--best .best-list__item {
        grid-template-columns: 48px 210px minmax(0, 1fr);
        gap: 1.25rem;
        padding: 1.25rem;
    }

    .collection-page--best .best-list__rank {
        padding-top: 60px;
    }

    .collection-page--best .best-list__image-wrap {
        height: 170px;
    }

    .collection-page--best .best-list__review {
        grid-template-columns: 1fr;
    }

    .collection-page--best .best-list__actions {
        flex-direction: row;
        justify-content: flex-start;
    }

    .collection-page--best .best-list__actions .button {
        width: auto;
        min-width: 190px;
    }
}

/* Mobile */

@media (max-width: 720px) {
    .collection-page--best .best-list__item {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        text-align: left !important;
        gap: 14px !important;
        padding: 18px !important;
        border-radius: 26px;
    }

    .collection-page--best .best-list__rank {
        order: 1 !important;
        width: 100%;
        justify-content: center !important;
        padding-top: 0;
        min-height: auto !important;
    }

    .collection-page--best .best-list__image-wrap {
        order: 2 !important;
        width: 100%;
        height: auto;
        min-height: 220px;
        margin: 0 auto;
    }

    .collection-page--best .best-list__image-wrap a {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .collection-page--best .best-list__image {
        height: auto;
        max-height: 280px;
        padding: 10px;
        object-fit: contain;
    }

    .collection-page--best .best-list__content {
        order: 3 !important;
        width: 100%;
    }

    .collection-page--best .best-list__badges {
        justify-content: center;
    }

    .collection-page--best .best-list__title {
        margin-top: .85rem;
        font-size: 1.15rem;
        line-height: 1.3;
        text-align: left;
    }

    .collection-page--best .best-list__text {
        max-width: none;
        margin-top: .7rem;
        font-size: 15px;
        line-height: 1.65;
        text-align: left;
    }

    .collection-page--best .best-list__review {
        grid-template-columns: 1fr;
        text-align: left;
    }

    .collection-page--best .best-list__actions {
        width: 100% !important;
        max-width: none !important;
        flex-direction: column;
    }

    .collection-page--best .best-list__actions .button {
        width: 100% !important;
        min-width: 0;
    }
}