:root{
    --font-body:"Manrope", Arial, sans-serif;
    --font-display:"Playfair Display", Georgia, serif;
    --primary-blue:#011845;
    --primary-gold:#dda524;
    --ink:#152033;
    --muted:#6b7280;
    --line:#e6eaf0;
    --soft:#f7f8fb;
    --white:#ffffff;
    --container-width:1200px;
    --surface-shadow:0 24px 70px rgba(1, 24, 69, .14);
    --card-shadow:0 12px 30px rgba(1, 24, 69, .09);
}

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    background:#fff;
    color:var(--ink);
    font-family:var(--font-body);
    font-size:15px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.hammond-cart-toast{
    position:fixed;
    top:20px;
    right:20px;
    z-index:9999;
    display:flex;
    align-items:flex-start;
    gap:14px;
    width:min(420px, calc(100vw - 24px));
    padding:16px 16px 16px 18px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:14px;
    background:#fff;
    box-shadow:0 24px 60px rgba(1, 24, 69, .16);
    opacity:0;
    transform:translateY(-12px) scale(.98);
    pointer-events:none;
    transition:opacity .3s ease, transform .3s ease;
}

.hammond-cart-toast.is-visible{
    opacity:1;
    transform:translateY(0) scale(1);
    pointer-events:auto;
}

.hammond-cart-toast.is-hidden{
    opacity:0;
    transform:translateY(-12px) scale(.98);
    pointer-events:none;
}

.hammond-cart-toast__content{
    display:flex;
    gap:12px;
    align-items:flex-start;
    width:100%;
}

.hammond-cart-toast__icon{
    display:inline-grid;
    place-items:center;
    width:34px;
    height:34px;
    flex-shrink:0;
    border-radius:999px;
    background:rgba(221, 165, 36, .16);
    color:var(--primary-blue);
    font-size:18px;
    font-weight:900;
}

.hammond-cart-toast__body{
    display:flex;
    flex-direction:column;
    gap:10px;
    width:100%;
}

.hammond-cart-toast__message{
    margin:0;
    color:var(--primary-blue);
    font-size:15px;
    font-weight:700;
    line-height:1.5;
}

.hammond-cart-toast__action{
    width:fit-content;
    min-height:42px;
    padding:0 16px;
}

.hammond-cart-toast__close{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:var(--muted);
    font-size:18px;
    cursor:pointer;
}

.hammond-cart-toast__close:hover{
    background:#f3f5f8;
    color:var(--primary-blue);
}

.hammond-cart-notice-hidden{
    display:none !important;
}

.woocommerce-message:not(.hammond-woocommerce-notice){
    display:none !important;
}

.hammond-woocommerce-notices{
    display:grid;
    gap:12px;
    width:100%;
    margin:0 0 18px;
    padding:0;
    list-style:none;
}

.hammond-woocommerce-notice{
    display:flex !important;
    align-items:flex-start;
    gap:12px;
    width:100%;
    min-height:58px;
    padding:14px 16px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    box-shadow:0 14px 34px rgba(1, 24, 69, .08);
}

.hammond-woocommerce-notice__mark{
    display:inline-grid;
    place-items:center;
    width:30px;
    height:30px;
    flex:0 0 30px;
    border-radius:8px;
    background:rgba(221, 165, 36, .16);
    color:var(--primary-blue);
    font-size:14px;
    font-weight:900;
    line-height:1;
}

.hammond-woocommerce-notice__content{
    min-width:0;
    color:var(--ink);
    font-size:14px;
    font-weight:700;
    line-height:1.6;
}

.hammond-woocommerce-notice__content a,
.hammond-woocommerce-notice a{
    color:var(--primary-blue);
    font-weight:900;
    text-decoration-color:rgba(221, 165, 36, .7);
}

.hammond-woocommerce-notice--error .hammond-woocommerce-notice__mark{
    background:#fff1f1;
    color:#b3261e;
}

.hammond-woocommerce-notice--info .hammond-woocommerce-notice__mark{
    background:#edf5ff;
    color:#0f3b75;
}

@media (max-width: 640px){
    .hammond-cart-toast{
        top:12px;
        right:12px;
        left:12px;
        width:auto;
        padding:14px;
    }
}

img{
    max-width:100%;
    height:auto;
}

a,
button,
input,
textarea,
select{
    min-width:0;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
button,
span{
    overflow-wrap:break-word;
}

button,
input,
select,
textarea{
    font-family:inherit;
}

h1,
h2{
    font-family:var(--font-display);
    letter-spacing:0;
    text-wrap:balance;
}

.container{
    width:90%;
    max-width:var(--container-width);
    margin:auto;
}

.site-footer{
    margin-top:0;
    padding:34px 0;
    border-top:1px solid var(--line);
    color:var(--muted);
    font-size:14px;
    text-align:center;
}

.section-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--primary-gold);
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em;
    line-height:1.4;
    text-transform:uppercase;
}

.hammond-logo-svg{
    display:block;
    width:100%;
    height:100%;
    color:inherit;
}

.section-logo-label{
    display:inline-flex;
    width:150px;
    height:40px;
    color:var(--primary-gold);
    vertical-align:middle;
}

.section-label--with-logo{
    gap:9px;
}

.inline-brand-logo{
    display:inline-flex;
    width:120px;
    height:32px;
    color:currentColor;
}

.inline-heading-logo{
    display:inline-flex;
    width:154px;
    height:41px;
    color:currentColor;
    vertical-align:-.18em;
}

.button-primary,
.button-secondary{
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 22px;
    border-radius:8px;
    font-size:14px;
    font-weight:800;
    text-decoration:none;
    transition:
        background-color .25s ease,
        color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.button-primary{
    position:relative;
    overflow:hidden;
    border:0;
    background:var(--primary-gold);
    color:#fff;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(221, 165, 36, .22);
}

.button-primary::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:-75%;
    width:45%;
    background:linear-gradient(90deg, transparent, rgba(255, 255, 255, .35), transparent);
    transform:skewX(-20deg);
    transition:left .55s ease;
}

.button-primary:hover{
    background:#c9951f;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 12px 24px rgba(221, 165, 36, .3);
}

.button-primary:hover::before{
    left:130%;
}

.button-secondary{
    border:1px solid rgba(255, 255, 255, .35);
    color:#fff;
}

.button-secondary:hover{
    background:#fff;
    color:var(--primary-blue);
}

.home-page{
    overflow:hidden;
    background:
        linear-gradient(180deg, #061638 0, #071a3e 620px, #f4f6fb 620px, #fff 100%);
}

.home-hero{
    position:relative;
    padding:116px 0 42px;
    isolation:isolate;
}

.home-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:
        radial-gradient(circle at 18% 18%, rgba(221, 165, 36, .22), transparent 28%),
        radial-gradient(circle at 82% 8%, rgba(255, 255, 255, .12), transparent 25%);
    pointer-events:none;
}

.home-hero-card{
    display:grid;
    grid-template-columns:minmax(0, .98fr) minmax(360px, .82fr);
    gap:34px;
    align-items:stretch;
    min-height:620px;
    padding:28px;
    border:1px solid rgba(255, 255, 255, .68);
    border-radius:14px;
    background:linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(247, 249, 253, .94));
    box-shadow:var(--surface-shadow);
}

.home-hero-content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    max-width:610px;
    padding:34px 18px 34px 18px;
}

.home-hero h1{
    margin:14px 0 18px;
    color:var(--primary-blue);
    font-size:clamp(32px, 3.8vw, 48px);
    line-height:1.06;
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
}

.home-hero p{
    max-width:520px;
    margin:0 0 26px;
    color:#475166;
    font-size:18px;
    line-height:1.7;
}

.home-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
}

.button-ghost{
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 20px;
    border:1px solid rgba(1, 24, 69, .12);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:900;
    text-decoration:none;
    box-shadow:0 8px 20px rgba(1, 24, 69, .06);
    transition:
        border-color .22s ease,
        color .22s ease,
        transform .22s ease,
        box-shadow .22s ease;
}

.button-ghost:hover,
.button-ghost:focus-visible{
    border-color:rgba(221, 165, 36, .55);
    color:#b98513;
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(1, 24, 69, .1);
}

.about-button-light,
.about-button-outline{
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 20px;
    border-radius:8px;
    font-size:14px;
    font-weight:900;
    text-decoration:none;
    transition:border-color .22s ease, color .22s ease, background-color .22s ease, transform .22s ease, box-shadow .22s ease;
}

.about-button-light{
    border:1px solid rgba(1, 24, 69, .12);
    background:#fff;
    color:var(--primary-blue);
    box-shadow:0 8px 20px rgba(1, 24, 69, .06);
}

.about-button-outline{
    border:1px solid rgba(1, 24, 69, .14);
    background:transparent;
    color:var(--primary-blue);
}

.about-button-light:hover,
.about-button-light:focus-visible,
.about-button-outline:hover,
.about-button-outline:focus-visible{
    border-color:rgba(221, 165, 36, .55);
    color:#b98513;
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(1, 24, 69, .1);
}

.home-trust-list{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:10px;
    margin-top:34px;
}

.home-trust-list span{
    min-height:74px;
    display:flex;
    align-items:center;
    padding:14px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    font-size:13px;
    font-weight:900;
    line-height:1.35;
    box-shadow:0 10px 24px rgba(1, 24, 69, .07);
}

.home-hero-showcase{
    position:relative;
    min-height:564px;
    overflow:hidden;
    border-radius:12px;
    background:#0d1d38;
    box-shadow:0 18px 40px rgba(1, 24, 69, .16);
}

.home-hero-slider,
.home-hero-slide{
    position:absolute;
    inset:0;
}

.home-hero-slider{
    z-index:0;
}

.home-hero-slider::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(180deg, rgba(1, 24, 69, .03) 35%, rgba(1, 24, 69, .58) 100%);
    pointer-events:none;
}

.home-hero-slide{
    opacity:0;
    transform:scale(1.04);
    transition:opacity .9s ease, transform 6s ease;
}

.home-hero-slide.is-active{
    opacity:1;
    transform:scale(1);
}

.home-hero-slide img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.home-hero-badge{
    position:absolute;
    left:22px;
    right:22px;
    bottom:24px;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:16px 18px;
    border:1px solid rgba(255, 255, 255, .22);
    border-radius:10px;
    background:rgba(1, 24, 69, .72);
    color:#fff;
    backdrop-filter:blur(14px);
}

.home-hero-badge strong{
    display:block;
    font-size:15px;
    line-height:1.2;
}

.home-hero-badge span{
    color:rgba(255, 255, 255, .74);
    font-size:13px;
    font-weight:700;
    text-align:right;
}

.home-hero-dots{
    position:absolute;
    top:22px;
    right:22px;
    z-index:3;
    display:flex;
    gap:8px;
    align-items:center;
    padding:9px;
    border:1px solid rgba(255, 255, 255, .28);
    border-radius:999px;
    background:rgba(1, 24, 69, .42);
    backdrop-filter:blur(16px);
}

.home-hero-dots button{
    width:28px;
    height:6px;
    padding:0;
    border:0;
    border-radius:999px;
    background:rgba(255, 255, 255, .46);
    cursor:pointer;
    transition:width .25s ease, background .25s ease;
}

.home-hero-dots button:hover,
.home-hero-dots button:focus-visible,
.home-hero-dots button.is-active{
    width:46px;
    background:var(--primary-gold);
}

.home-category-strip{
    padding:12px 0 62px;
    background:#f4f6fb;
}

.home-category-strip-inner{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
}

.home-category-strip a{
    min-height:102px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:0 22px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:10px;
    background:#fff;
    color:var(--primary-blue);
    text-decoration:none;
    box-shadow:var(--card-shadow);
    transition:
        border-color .24s ease,
        box-shadow .24s ease,
        transform .24s ease;
}

.home-category-strip a::after{
    content:">";
    flex:0 0 auto;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:8px;
    background:
        linear-gradient(135deg, var(--primary-gold), #f2c75c);
    color:#fff;
    font-size:18px;
    font-weight:900;
    line-height:1;
    box-shadow:0 8px 18px rgba(221, 165, 36, .25);
}

.home-category-strip a:hover,
.home-category-strip a:focus-visible{
    border-color:rgba(221, 165, 36, .48);
    box-shadow:0 18px 38px rgba(1, 24, 69, .12);
    transform:translateY(-3px);
}

.home-category-copy{
    min-width:0;
}

.home-category-copy strong{
    display:block;
    font-size:16px;
    line-height:1.25;
}

.home-category-copy span{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-size:13px;
}

.home-editorial{
    padding:24px 0 78px;
    background:#fff;
}

.home-editorial-panel{
    display:grid;
    grid-template-columns:minmax(0, .85fr) minmax(280px, .78fr) minmax(330px, .9fr);
    gap:28px;
    align-items:center;
    padding:28px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:14px;
    background:#fff;
    box-shadow:var(--surface-shadow);
}

.home-editorial-copy h2,
.section-heading h2{
    margin:10px 0 16px;
    color:var(--primary-blue);
    font-size:clamp(26px, 2.8vw, 36px);
    line-height:1.12;
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
}

.home-editorial-copy p,
.section-heading p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.8;
}

.home-editorial-points{
    display:grid;
    gap:12px;
}


.home-editorial-points div{
    padding:16px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:8px;
    background:#f8f9fc;
}

.home-editorial-points strong{
    color:var(--primary-gold);
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
}

.home-editorial-points h3{
    margin:6px 0 5px;
    color:var(--primary-blue);
    font-size:17px;
    line-height:1.25;
}

.home-editorial-points p{
    margin:0;
    color:var(--muted);
    font-size:13px;
    line-height:1.6;
}

.home-editorial-media{
    display:grid;
    grid-template-columns:1fr .72fr;
    gap:14px;
    align-items:end;
}

.home-editorial-media img{
    width:100%;
    object-fit:cover;
    border-radius:10px;
    box-shadow:0 16px 34px rgba(1, 24, 69, .12);
}

.home-editorial-media img:first-child{
    height:480px;
}

.home-editorial-media img:last-child{
    height:300px;
}

.featured-products{
    padding:78px 0;
    background:#f4f6fb;
    scroll-margin-top:86px;
}

.section-heading{
    max-width:640px;
    margin-bottom:28px;
}

.featured-products > .container{
    position:relative;
}

.featured-products-top{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:20px;
    align-items:end;
    margin-bottom:22px;
}

.featured-products-header{
    display:flex;
    justify-content:flex-end;
}

.featured-products-controls{
    display:flex;
    gap:10px;
}

.featured-products-carousel{
    position:relative;
    padding:0 54px;
}

.featured-products-nav{
    position:absolute;
    top:50%;
    z-index:2;
    width:44px;
    height:44px;
    border:1px solid rgba(1, 24, 69, .1);
    border-radius:999px;
    background:rgba(255, 255, 255, .96);
    color:var(--primary-blue);
    cursor:pointer;
    font-size:24px;
    font-weight:800;
    line-height:1;
    box-shadow:0 10px 24px rgba(1, 24, 69, .12);
    transform:translateY(-50%);
    transition:
        background-color .22s ease,
        border-color .22s ease,
        color .22s ease,
        transform .22s ease;
}

.featured-products-nav--prev{
    left:0;
}

.featured-products-nav--next{
    right:0;
}

.featured-products-nav:hover,
.featured-products-nav:focus-visible{
    border-color:var(--primary-gold);
    background:var(--primary-gold);
    color:#fff;
    transform:translateY(-50%) translateY(-2px);
}

.featured-products-track{
    overflow-x:auto;
    padding:4px 2px 18px;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
}

.featured-products-track::-webkit-scrollbar{
    display:none;
}

.featured-products-track > ul.products{
    --featured-products-per-view:3;
    --featured-products-gap:22px;
    display:flex;
    flex-wrap:nowrap;
    gap:var(--featured-products-gap);
    width:100%;
    min-width:100%;
    margin:0;
    padding:0;
    list-style:none;
}

.featured-products-track > ul.products > li.product{
    flex:0 0 calc((100% - (var(--featured-products-gap) * (var(--featured-products-per-view) - 1))) / var(--featured-products-per-view));
    max-width:calc((100% - (var(--featured-products-gap) * (var(--featured-products-per-view) - 1))) / var(--featured-products-per-view));
    width:calc((100% - (var(--featured-products-gap) * (var(--featured-products-per-view) - 1))) / var(--featured-products-per-view));
    min-width:0;
    margin:0;
    float:none;
    clear:none;
}

@media (max-width: 980px){
    .featured-products-track > ul.products{
        --featured-products-per-view:2;
        display:flex !important;
        flex-wrap:nowrap !important;
        width:100% !important;
    }

    .featured-products-track > ul.products > li.product,
    .home-featured-products .woocommerce ul.products li.product,
    .home-featured-products ul.products li.product{
        flex:0 0 calc((100% - var(--featured-products-gap)) / 2);
        max-width:calc((100% - var(--featured-products-gap)) / 2);
        width:calc((100% - var(--featured-products-gap)) / 2);
    }
}

@media (max-width: 680px){
    .featured-products-track > ul.products,
    .home-featured-products .woocommerce ul.products,
    .home-featured-products ul.products{
        --featured-products-per-view:1;
        display:flex !important;
        flex-wrap:nowrap !important;
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
    }

    .featured-products-track > ul.products > li.product,
    .home-featured-products .woocommerce ul.products li.product,
    .home-featured-products ul.products li.product{
        flex:0 0 100% !important;
        max-width:100% !important;
        width:100% !important;
        min-width:0 !important;
    }
}

.featured-products-track .product-card{
    min-width:0;
    scroll-snap-align:start;
}

.product-card{
    height:100%;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid rgba(1, 24, 69, .07);
    border-radius:12px;
    background:#fff;
    box-shadow:var(--card-shadow);
    text-align:left;
    transition:transform .3s ease, box-shadow .3s ease;
}

.product-card:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 35px rgba(1, 24, 69, .12);
}

.product-card > a{
    color:inherit;
    text-decoration:none;
}

.product-image{
    height:220px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    background:#fff;
}

.product-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .4s ease;
}

.product-card:hover .product-image img{
    transform:scale(1.05);
}

.product-title{
    margin:0;
    padding:16px 16px 6px;
    color:var(--primary-blue);
    font-family:var(--font-body);
    font-size:16px;
    font-weight:800;
    line-height:1.35;
}

.product-price-range{
    padding:0 16px 16px;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:700;
}

.product-btn{
    margin-top:auto;
    padding:0 16px 16px;
}

.select-btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    border-radius:8px;
    background:var(--primary-gold);
    color:#fff;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    transition:background-color .24s ease, transform .24s ease;
}

.select-btn:hover{
    background:#c9951f;
    color:#fff;
    transform:translateY(-2px);
}

.home-campaign{
    padding:84px 0;
    background:#fff;
}

.home-campaign-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
}

.campaign-card{
    min-height:420px;
    display:flex;
    align-items:end;
    overflow:hidden;
    border-radius:12px;
    background:linear-gradient(180deg, transparent 25%, rgba(1, 24, 69, .82) 100%), var(--card-image);
    background-position:center;
    background-size:cover;
    color:#fff;
    text-decoration:none;
    box-shadow:var(--card-shadow);
    transition:transform .3s ease, box-shadow .3s ease;
}

.campaign-card:hover,
.campaign-card:focus-visible{
    transform:translateY(-5px);
    box-shadow:0 18px 34px rgba(1, 24, 69, .18);
}

.campaign-card-content{
    padding:24px;
}

.campaign-card h3{
    margin:0 0 8px;
    font-size:24px;
    line-height:1.12;
}

.campaign-card p{
    margin:0;
    color:rgba(255, 255, 255, .78);
}

.featured-categories{
    padding:76px 0;
    background:#f4f6fb;
}

.category-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:18px;
}

.category-card{
    display:block;
    min-height:150px;
    padding:22px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:12px;
    background:#fff;
    color:var(--primary-blue);
    text-decoration:none;
    box-shadow:var(--card-shadow);
    transition:transform .26s ease, box-shadow .26s ease, border-color .26s ease;
}

.category-card:hover,
.category-card:focus-visible{
    border-color:rgba(221, 165, 36, .5);
    transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(1, 24, 69, .1);
}

.category-card h3{
    margin:0 0 10px;
    font-size:21px;
    line-height:1.2;
}

.category-card p{
    margin:0;
    color:var(--muted);
    font-size:14px;
}

@media (prefers-reduced-motion: reduce){
    html{
        scroll-behavior:auto;
    }

    *,
    *::before,
    *::after{
        transition-duration:.01ms !important;
        animation-duration:.01ms !important;
    }
}

@media (max-width: 700px){
    body{
        font-size:14px;
    }

    .container{
        width:92%;
    }

    .button-primary,
    .button-secondary,
    .button-ghost,
    .about-button-light,
    .about-button-outline{
        min-height:46px;
        padding-inline:16px;
    }
}

@media (max-width: 1040px){
    .home-hero-card,
    .home-editorial-panel{
        grid-template-columns:1fr;
    }

    .home-hero-showcase{
        min-height:560px;
    }

    .home-editorial-media{
        grid-template-columns:1fr 1fr;
    }

    .home-editorial-media img:first-child,
    .home-editorial-media img:last-child{
        height:360px;
    }

    .featured-products .product-card{
        flex-basis:calc((100% - 22px) / 2);
    }

    .home-campaign-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width: 860px){
    .home-page{
        background:
            linear-gradient(180deg, #061638 0, #071a3e 520px, #f4f6fb 520px, #fff 100%);
    }

    .home-hero{
        padding:96px 0 34px;
    }

    .home-hero-card{
        min-height:0;
        padding:18px;
        gap:22px;
    }

    .home-hero-content{
        max-width:none;
        padding:18px 8px 4px;
    }

    .home-hero-showcase{
        min-height:480px;
    }

    .home-category-strip-inner{
        grid-template-columns:1fr;
    }

    .home-editorial-panel{
        padding:22px;
    }
}

@media (max-width: 620px){
    .container{
        width:92%;
    }

    .home-page{
        background:
            linear-gradient(180deg, #061638 0, #071a3e 470px, #f4f6fb 470px, #fff 100%);
    }

    .home-hero{
        padding:88px 0 28px;
    }

    .home-hero-card{
        padding:12px;
        border-radius:12px;
    }

    .home-hero p{
        font-size:16px;
    }

    .home-hero-actions{
        display:grid;
        grid-template-columns:1fr;
    }

    .home-trust-list{
        grid-template-columns:1fr;
        margin-top:22px;
    }

    .home-trust-list span{
        min-height:54px;
    }

    .home-hero-showcase{
        min-height:390px;
    }

    .home-hero-badge{
        left:14px;
        right:14px;
        bottom:14px;
        display:grid;
        gap:4px;
        padding:14px;
    }

    .home-hero-badge span{
        text-align:left;
    }

    .home-hero-dots{
        top:14px;
        right:14px;
    }

    .home-category-strip{
        padding-bottom:48px;
    }

    .home-category-strip a{
        min-height:88px;
    }

    .category-grid{
        grid-template-columns:1fr;
    }

    .featured-products-header{
        justify-content:flex-start;
    }

    .featured-products-top{
        grid-template-columns:1fr;
        margin-bottom:18px;
    }

    .featured-products .product-card{
        flex-basis:100%;
    }

    .home-editorial,
    .featured-products,
    .home-campaign,
    .featured-categories{
        padding:54px 0;
    }

    .home-editorial-media{
        grid-template-columns:1fr;
    }

    .home-editorial-media img:first-child,
    .home-editorial-media img:last-child{
        height:330px;
    }

    .campaign-card{
        min-height:340px;
    }
}

/* ==========================
   SIMPLE HOME PAGE
========================== */

.home-page-simple{
    overflow:hidden;
    background:#fff;
}

.home-page-simple h1,
.home-page-simple h2,
.home-page-simple h3,
.home-page-simple p{
    letter-spacing:0;
}

.home-hero-simple{
    position:relative;
    padding:116px 0 58px;
    overflow:hidden;
    background:
        radial-gradient(circle at 16% 18%, rgba(221, 165, 36, .2), transparent 0%),
        linear-gradient(180deg, #061638 0%, #071a3e 100%);
    color:#fff;
}

.home-hero-panel{
    display:grid;
    grid-template-columns:minmax(0, .98fr) minmax(360px, .82fr);
    gap:34px;
    align-items:stretch;
    min-height:610px;
    padding:28px;
    border:1px solid rgba(255, 255, 255, .18);
    border-radius:14px;
    background:rgba(255, 255, 255, .08);
    box-shadow:0 24px 70px rgba(0, 0, 0, .22);
    backdrop-filter:blur(14px);
}

.home-hero-simple__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    max-width:650px;
    padding:36px 18px;
}

.home-hero-simple h1{
    margin:12px 0 14px;
    color:#fff;
    font-size:clamp(32px, 3.8vw, 48px);
    line-height:1.06;
}

.home-hero-simple p{
    max-width:560px;
    margin:0 0 26px;
    color:rgba(255, 255, 255, .78);
    font-size:18px;
    line-height:1.75;
}

.home-hero-simple .home-hero-intro{
    margin-bottom:18px;
}

.home-hero-kpis{
    width:min(100%, 620px);
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    align-items:center;
    margin:0 0 28px;
    padding:12px 0;
    border-top:1px solid rgba(255, 255, 255, .08);
    border-bottom:1px solid rgba(255, 255, 255, .08);
    background:rgba(2, 14, 34, .42);
    box-shadow:0 18px 42px rgba(0, 0, 0, .14);
    backdrop-filter:blur(12px);
}

.home-hero-kpi{
    position:relative;
    min-width:0;
    display:flex;
    align-items:center;
    gap:8px;
    padding:0 10px;
}

.home-hero-kpi + .home-hero-kpi::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:1px;
    height:34px;
    background:rgba(221, 165, 36, .72);
    transform:translateY(-50%);
}

.home-hero-kpi__icon{
    width:32px;
    height:32px;
    flex:0 0 32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:rgba(255, 255, 255, .9);
}

.home-hero-kpi__icon--gold{
    color:var(--primary-gold);
}

.home-hero-kpi__icon svg{
    width:100%;
    height:100%;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-hero-kpi__copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
    color:#fff;
    line-height:1.15;
}

.home-hero-kpi__copy strong{
    color:#fff;
    font-size:12px;
    font-weight:900;
    line-height:1.12;
    white-space:nowrap;
}

.home-hero-kpi:first-child .home-hero-kpi__copy strong{
    color:var(--primary-gold);
    font-size:16px;
}

.home-hero-kpi__copy span{
    color:rgba(255, 255, 255, .78);
    font-size:10px;
    font-weight:800;
    line-height:1.25;
}

.home-hero-simple__media{
    position:relative;
    min-height:548px;
    overflow:hidden;
    border-radius:12px;
    background:#0d1d38;
    box-shadow:0 18px 40px rgba(0, 0, 0, .2);
}

.home-hero-simple__media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(1, 24, 69, 0) 42%, rgba(1, 24, 69, .74) 100%);
    pointer-events:none;
}

.hero-carousel{
    position:absolute;
    inset:0;
    overflow:hidden;
}

.hero-carousel__image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    opacity:0;
    transform:scale(1.02);
    transition:opacity .9s ease, transform 6s ease;
}

.hero-carousel__image--active{
    opacity:1;
    transform:scale(1);
}

.home-hero-simple__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.home-hero-note{
    position:absolute;
    left:22px;
    right:22px;
    bottom:22px;
    z-index:2;
    padding:16px 18px;
    border:1px solid rgba(255, 255, 255, .22);
    border-radius:10px;
    background:rgba(1, 24, 69, .72);
    color:#fff;
    backdrop-filter:blur(14px);
}

.home-hero-note strong{
    display:block;
    font-size:15px;
    line-height:1.25;
}

.home-hero-note span{
    display:block;
    margin-top:4px;
    color:rgba(255, 255, 255, .72);
    font-size:13px;
    line-height:1.5;
}

.home-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
}

.home-hero-simple .button-ghost{
    border-color:rgba(255, 255, 255, .35);
    background:rgba(255, 255, 255, .12);
    color:#fff;
    box-shadow:none;
    backdrop-filter:blur(10px);
}

.home-hero-simple .button-ghost:hover,
.home-hero-simple .button-ghost:focus-visible{
    border-color:#fff;
    color:#fff;
}

.home-achievements{
    padding:0 0 48px;
    background:#f7f8fb;
}

.home-achievements-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:14px;
    margin-top:-24px;
}

.home-achievement-card,
.home-impact-card,
.home-school-choice-card{
    border:1px solid rgba(1, 24, 69, .08);
    background:#fff;
    box-shadow:var(--card-shadow);
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.home-achievement-card{
    min-height:142px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:20px 18px;
    border-radius:12px;
    text-align:center;
}

.home-achievement-card:hover,
.home-achievement-card:focus-within,
.home-impact-card:hover,
.home-school-choice-card:hover{
    border-color:rgba(221, 165, 36, .35);
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(1, 24, 69, .12);
}

.home-achievement-card__icon{
    display:block;
    margin-bottom:10px;
    font-size:26px;
    line-height:1;
}

.home-achievement-card strong{
    display:block;
    color:var(--primary-blue);
    font-size:18px;
    line-height:1.2;
}

.home-achievement-card p{
    margin:6px 0 0;
    color:var(--muted);
    font-size:13px;
    font-weight:700;
    line-height:1.45;
}

.home-section-heading{
    max-width:620px;
    margin-bottom:26px;
}

.home-section-heading--split{
    max-width:none;
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:18px;
}

.home-section-heading h2{
    margin:8px 0 0;
    color:var(--primary-blue);
    font-size:clamp(23px, 2.5vw, 30px);
    line-height:1.15;
}

.home-section-heading p{
    margin:10px 0 0;
    color:var(--muted);
    font-size:15px;
}

.home-page-simple .section-heading h2,
.home-page-simple .home-editorial-copy h2{
    font-size:clamp(23px, 2.5vw, 30px);
}

.home-page-simple .section-heading p,
.home-page-simple .home-editorial-copy p{
    font-size:15px;
    line-height:1.7;
}

.home-page-simple .home-category-strip{
    padding:48px 0;
    background:#f7f8fb;
}

.home-page-simple .home-editorial,
.home-page-simple .home-campaign,
.home-page-simple .featured-categories{
    padding:68px 0;
}

.home-page-simple .home-editorial-panel{
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
}

.home-page-simple .home-editorial-media img:first-child{
    height:380px;
}

.home-page-simple .home-editorial-media img:last-child{
    height:260px;
}

.home-page-simple .campaign-card{
    min-height:360px;
    border-radius:14px;
}

.home-page-simple .campaign-card h3,
.home-page-simple .category-card h3{
    font-size:18px;
}

.home-page-simple .campaign-card p,
.home-page-simple .category-card p{
    font-size:14px;
    line-height:1.6;
}

.home-impact,
.home-school-choice{
    padding:68px 0;
    background:#fff;
}

.home-impact{
    background:#fff;
}

.home-school-choice{
    background:#f7f8fb;
}

.home-impact-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
}

.home-impact-card{
    min-height:148px;
    padding:26px;
    border-radius:14px;
    background:linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
}

.home-impact-card strong{
    display:block;
    color:var(--primary-blue);
    font-size:clamp(28px, 3.5vw, 40px);
    font-weight:900;
    line-height:1;
}

.home-impact-card p{
    margin:12px 0 0;
    color:var(--muted);
    font-size:14px;
    font-weight:800;
    line-height:1.45;
}

.home-school-choice-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:18px;
}

.home-school-choice-card{
    min-height:208px;
    padding:22px;
    border-radius:14px;
    background:linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
}

.home-school-choice-card span{
    display:inline-grid;
    place-items:center;
    width:42px;
    height:42px;
    margin-bottom:18px;
    border-radius:8px;
    background:rgba(221, 165, 36, .14);
    color:var(--primary-blue);
    font-size:13px;
    font-weight:900;
}

.home-school-choice-card h3{
    margin:0 0 8px;
    color:var(--primary-blue);
    font-size:18px;
    line-height:1.25;
}

.home-school-choice-card p{
    margin:0;
    color:var(--muted);
    font-size:14px;
    line-height:1.7;
}

.quality-promise{
    padding:76px 0;
    background:#fff;
}

.quality-promise--home{
    background:#f7f8fb;
}

.quality-promise--partner{
    padding:36px 0 76px;
    background:var(--soft);
}

.quality-promise__panel{
    display:grid;
    grid-template-columns:minmax(0, .9fr) minmax(340px, .72fr);
    gap:32px;
    align-items:center;
    padding:32px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:14px;
    background:
        linear-gradient(135deg, rgba(1, 24, 69, .98), rgba(7, 35, 83, .94)),
        var(--primary-blue);
    color:#fff;
    box-shadow:0 24px 70px rgba(1, 24, 69, .14);
}

.quality-promise__copy h2{
    max-width:620px;
    margin:10px 0 14px;
    color:#fff;
    font-size:32px;
    line-height:1.1;
}

.quality-promise__copy p{
    max-width:680px;
    margin:0;
    color:rgba(255, 255, 255, .76);
    font-size:16px;
    line-height:1.8;
}

.quality-promise__proof,
.quality-promise__steps{
    display:grid;
    gap:1px;
    overflow:hidden;
    border:1px solid rgba(255, 255, 255, .14);
    border-radius:12px;
    background:rgba(255, 255, 255, .14);
}

.quality-promise__proof div,
.quality-promise__steps div{
    min-height:104px;
    padding:18px;
    background:rgba(255, 255, 255, .08);
}

.quality-promise__proof strong,
.quality-promise__steps strong,
.quality-promise__proof span,
.quality-promise__steps p{
    display:block;
}

.quality-promise__proof strong,
.quality-promise__steps strong{
    color:#fff;
    font-size:18px;
    line-height:1.2;
}

.quality-promise__proof span,
.quality-promise__steps p{
    margin:7px 0 0;
    color:rgba(255, 255, 255, .72);
    font-size:14px;
    line-height:1.55;
}

.quality-promise__steps span,
.quality-promise__statement span{
    display:inline-grid;
    place-items:center;
    width:38px;
    height:38px;
    margin-bottom:12px;
    border-radius:999px;
    background:rgba(221, 165, 36, .18);
    color:var(--primary-gold);
    font-size:13px;
    font-weight:900;
}

.quality-promise__statement{
    padding:24px;
    border:1px solid rgba(255, 255, 255, .14);
    border-radius:12px;
    background:rgba(255, 255, 255, .08);
}

.quality-promise__statement strong{
    display:block;
    color:#fff;
    font-size:22px;
    line-height:1.18;
}

.quality-promise__statement p{
    margin:10px 0 0;
    color:rgba(255, 255, 255, .72);
    line-height:1.7;
}

.home-institutional-cta{
    padding:0 0 76px;
    background:#f4f6fb;
}

.home-institutional-cta__panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:30px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:14px;
    background:linear-gradient(135deg, #fff 0%, #f8fbff 100%);
    box-shadow:0 18px 44px rgba(1, 24, 69, .1);
}

.home-institutional-cta__panel h2{
    max-width:650px;
    margin:10px 0 10px;
    color:var(--primary-blue);
    font-size:clamp(23px, 2.5vw, 30px);
    line-height:1.15;
}

.home-institutional-cta__panel p{
    max-width:680px;
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.7;
}

.home-page-simple .home-campaign{
    background:
        linear-gradient(180deg, #fff 0%, #f7f8fb 100%);
}

.home-page-simple .home-campaign-photo-grid{
    display:grid;
    grid-template-columns:1.05fr .85fr .85fr;
    grid-auto-rows:minmax(210px, auto);
    gap:16px;
}

.campaign-photo-card{
    position:relative;
    min-height:250px;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    border-radius:16px;
    color:#fff;
    text-decoration:none;
    background:#071a3e;
    box-shadow:0 16px 38px rgba(1, 24, 69, .15);
    isolation:isolate;
    transition:transform .28s ease, box-shadow .28s ease;
}

.campaign-photo-card::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(180deg, rgba(1, 24, 69, .04) 20%, rgba(1, 24, 69, .82) 100%),
        linear-gradient(135deg, rgba(221, 165, 36, .32), transparent 46%);
}

.campaign-photo-card:hover,
.campaign-photo-card:focus-visible{
    transform:translateY(-5px);
    box-shadow:0 22px 46px rgba(1, 24, 69, .2);
}

.campaign-photo-card img{
    position:absolute;
    inset:0;
    width:100%;
    height:112%;
    object-fit:cover;
    object-position:center top;
    transform:scale(1.02);
    transition:transform .5s ease;
}

.campaign-photo-card:hover img,
.campaign-photo-card:focus-visible img{
    transform:scale(1.08);
}

.campaign-photo-card--large{
    grid-row:span 2;
    min-height:536px;
}

.campaign-photo-card--wide{
    grid-column:span 2;
}

.campaign-photo-card .campaign-card-content{
    position:relative;
    z-index:2;
    width:100%;
    padding:22px;
}

.campaign-photo-card h3{
    margin:0 0 6px;
    color:#fff;
    font-size:19px;
    line-height:1.2;
}

.campaign-photo-card p{
    max-width:320px;
    margin:0;
    color:rgba(255, 255, 255, .82);
    font-size:14px;
}

.home-testimonials,
.home-community{
    padding:68px 0;
}

.home-testimonials__grid{
    display:flex;
    gap:22px;
    overflow-x:auto;
    padding:4px 2px 18px;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
}

.home-testimonials__grid::-webkit-scrollbar{
    display:none;
}

.testimonial-card{
    flex:0 0 calc((100% - 44px) / 3);
    overflow:hidden;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
}

.testimonial-card figcaption{
    margin:0;
    color:var(--primary-blue);
    font-family:var(--font-body);
    font-size:16px;
    font-weight:700;
    line-height:1.35;
}

.home-featured-products{
    padding:68px 0;
    background:#f7f8fb;
}

.home-featured-products .woocommerce ul.products,
.home-featured-products ul.products{
    display:flex !important;
    flex-wrap:nowrap;
    gap:24px;
    width:100%;
    margin:0;
    padding:0;
    list-style:none;
    justify-content:flex-start;
}

.home-featured-products .woocommerce ul.products li.product,
.home-featured-products ul.products li.product{
    width:auto !important;
    flex:0 0 32.5%;
    max-width:32.5%;
    margin:0 !important;
    float:none !important;
    clear:none !important;
}

.home-featured-products ul.products::before,
.home-featured-products ul.products::after{
    display:none !important;
    content:none !important;
}

.home-featured-products .product-card{
    height:auto;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:0;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
    transition:transform .3s ease;
}

.home-featured-products .product-card:hover{
    transform:translateY(-4px);
}

.home-featured-products .product-image-wrapper{
    width:100% !important;
    height:200px !important;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    box-sizing:border-box;
}

.home-featured-products .product-image-wrapper img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    transition:transform .4s ease;
}

.home-featured-products .product-card:hover .product-image-wrapper img{
    transform:scale(1.05);
}

.home-featured-products .product-details{
    flex:1;
    display:flex;
    flex-direction:column;
    margin-top:auto;
    padding:0 10px 10px;
    border-top:1px solid #eee;
    text-align:left;
}

.home-featured-products .product-title{
    margin:auto 0 0;
    padding:0;
    color:var(--primary-blue);
    font-family:var(--font-body);
    font-size:16px !important;
    font-weight:600;
    line-height:1.4;
}

.home-featured-products .product-category{
    margin:0;
    color:#8a8a8a;
    font-size:14px;
}

.home-featured-products .product-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
}

.home-featured-products .product-price{
    color:var(--primary-blue);
    font-size:14px;
    font-weight:500;
}

.home-featured-products .select-option-btn{
    position:relative;
    overflow:hidden;
    flex:0 0 auto;
    padding:8px 14px;
    border-radius:6px;
    background:#dda524;
    color:#fff;
    font-size:13px;
    font-weight:500;
    text-decoration:none;
    box-shadow:0 5px 14px rgba(221, 165, 36, .2);
    transition:background-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.home-featured-products .select-option-btn:hover{
    background:#c9951f;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 9px 20px rgba(221, 165, 36, .3);
}

.home-testimonials{
    background:#fff;
}

.testimonial-carousel-controls{
    display:flex;
    gap:10px;
}

.testimonial-carousel-nav{
    width:42px;
    height:42px;
    border:1px solid rgba(1, 24, 69, .1);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    cursor:pointer;
    font-size:26px;
    font-weight:800;
    line-height:1;
    box-shadow:0 8px 18px rgba(1, 24, 69, .08);
    transition:
        background-color .22s ease,
        border-color .22s ease,
        color .22s ease,
        transform .22s ease;
}

.testimonial-carousel-nav:hover,
.testimonial-carousel-nav:focus-visible{
    border-color:var(--primary-gold);
    background:var(--primary-gold);
    color:#fff;
    transform:translateY(-2px);
}

.testimonial-carousel{
    overflow:hidden;
}

.testimonial-card{
    margin:0;
    position:relative;
    min-height:310px;
    display:flex;
    flex-direction:column;
    padding:26px;
    background:
        linear-gradient(145deg, #fff 0%, #f8fbff 100%);
    isolation:isolate;
    scroll-snap-align:start;
}

.testimonial-card::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:110px;
    height:110px;
    border-bottom-left-radius:100%;
    background:rgba(221, 165, 36, .16);
    z-index:-1;
}

.testimonial-card:nth-child(odd){
    background:
        linear-gradient(145deg, rgba(1, 24, 69, .96), rgba(12, 36, 86, .96)),
        linear-gradient(135deg, rgba(221, 165, 36, .28), transparent);
}

.testimonial-card blockquote{
    flex:1;
    margin:0 0 18px;
    color:#475166;
    font-size:15px;
    line-height:1.75;
}

.testimonial-card:nth-child(odd) blockquote{
    color:rgba(255, 255, 255, .9);
}

.testimonial-card figcaption{
    display:flex;
    align-items:center;
    gap:12px;
}

.testimonial-avatar{
    flex:0 0 44px;
    width:44px;
    height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:var(--primary-blue);
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.testimonial-card:nth-child(odd) .testimonial-avatar{
    background:var(--primary-gold);
}

.testimonial-card figcaption span:last-child{
    min-width:0;
}

.testimonial-card figcaption strong,
.testimonial-card figcaption small{
    display:block;
}

.testimonial-card figcaption small{
    margin-top:2px;
    color:var(--muted);
    font-size:12px;
    font-weight:600;
}

.testimonial-card:nth-child(odd) figcaption strong{
    color:#fff;
}

.testimonial-card:nth-child(odd) figcaption small{
    color:rgba(255, 255, 255, .62);
}

.home-page-simple .featured-categories{
    background:#fff;
}

.featured-categories-top{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:18px;
    align-items:end;
    margin-bottom:26px;
}

.featured-categories-top .section-heading{
    margin-bottom:0;
}

.category-carousel-controls{
    display:flex;
    gap:10px;
}

.category-carousel-nav{
    width:42px;
    height:42px;
    border:1px solid rgba(1, 24, 69, .1);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    cursor:pointer;
    font-size:26px;
    font-weight:800;
    line-height:1;
    box-shadow:0 8px 18px rgba(1, 24, 69, .08);
    transition:
        background-color .22s ease,
        border-color .22s ease,
        color .22s ease,
        transform .22s ease;
}

.category-carousel-nav:hover,
.category-carousel-nav:focus-visible{
    border-color:var(--primary-gold);
    background:var(--primary-gold);
    color:#fff;
    transform:translateY(-2px);
}

.category-carousel{
    overflow:hidden;
}

.home-page-simple .category-grid{
    display:flex;
    gap:24px;
    overflow-x:auto;
    padding:4px 2px 18px;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
}

.home-page-simple .category-grid::-webkit-scrollbar{
    display:none;
}

.home-page-simple .category-card{
    position:relative;
    flex:0 0 calc((100% - 48px) / 3);
    min-height:260px;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    padding:0;
    border:0;
    border-radius:16px;
    background:var(--category-accent);
    box-shadow:0 16px 38px rgba(1, 24, 69, .14);
    isolation:isolate;
    scroll-snap-align:start;
}

.home-page-simple .category-card::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(180deg, rgba(1, 24, 69, 0) 18%, rgba(1, 24, 69, .78) 100%),
        linear-gradient(135deg, rgba(255, 255, 255, .12), transparent 56%);
}

.category-card-media{
    position:absolute;
    inset:0;
    background-image:var(--category-image);
    background-size:cover;
    background-position:center;
    transform:scale(1.02);
    transition:transform .45s ease;
}

.home-page-simple .category-card:hover .category-card-media,
.home-page-simple .category-card:focus-visible .category-card-media{
    transform:scale(1.08);
}

.category-card-content{
    position:relative;
    z-index:2;
    display:block;
    width:100%;
    padding:22px;
}

.home-page-simple .category-card h3{
    margin:0 0 6px;
    color:#fff;
}

.home-page-simple .category-card p{
    margin:0;
    color:rgba(255, 255, 255, .82);
}

.home-community{
    background:#f7f8fb;
}

.home-community__panel{
    display:grid;
    grid-template-columns:minmax(300px, .86fr) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    overflow:hidden;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
}

.home-community__image{
    min-height:360px;
    height:100%;
}

.home-community__image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
}

.home-community__content{
    max-width:560px;
    padding:34px 34px 34px 0;
}

.home-community__content h2{
    margin:8px 0 12px;
    color:var(--primary-blue);
    font-size:clamp(23px, 2.5vw, 30px);
    line-height:1.15;
}

.home-community__content p{
    margin:0 0 22px;
    color:var(--muted);
    font-size:15px;
    line-height:1.7;
}

@media (max-width: 1040px){
    .home-hero-panel{
        grid-template-columns:1fr;
    }

    .home-achievements-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }

    .home-impact-grid,
    .home-school-choice-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .home-institutional-cta__panel{
        flex-direction:column;
        align-items:flex-start;
    }

    .featured-products-track > ul.products{
        display:flex !important;
        flex-wrap:nowrap !important;
        width:100% !important;
    }

    .featured-products-track > ul.products > li.product,
    .home-featured-products .woocommerce ul.products li.product,
    .home-featured-products ul.products li.product{
        flex-basis:calc((100% - 22px) / 2);
        max-width:calc((100% - 22px) / 2);
        width:calc((100% - 22px) / 2);
    }

    .home-hero-simple__media{
        min-height:540px;
    }

    .home-featured-products .woocommerce ul.products,
    .home-featured-products ul.products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .testimonial-card{
        flex-basis:calc((100% - 22px) / 2);
    }

    .home-community__panel{
        grid-template-columns:1fr;
    }

    .home-community__content{
        padding:0 28px 32px;
    }

    .home-page-simple .home-editorial-panel{
        grid-template-columns:1fr;
    }

    .home-page-simple .home-editorial-media img:first-child,
    .home-page-simple .home-editorial-media img:last-child{
        height:320px;
    }

    .home-page-simple .home-category-strip-inner{
        grid-template-columns:1fr;
    }

    .quality-promise__panel{
        grid-template-columns:1fr;
    }

    .home-page-simple .home-campaign-photo-grid{
        grid-template-columns:1fr 1fr;
    }

    .campaign-photo-card--large,
    .campaign-photo-card--wide{
        grid-column:auto;
        grid-row:auto;
        min-height:300px;
    }

    .home-page-simple .category-card{
        flex-basis:calc((100% - 24px) / 2);
    }
}

@media (max-width: 700px){
    .featured-products-carousel{
        padding:0 40px;
    }

    .featured-products-nav{
        width:38px;
        height:38px;
        font-size:20px;
    }

    .home-hero-simple{
        padding:88px 0 34px;
    }

    .home-hero-panel{
        padding:14px;
        border-radius:12px;
    }

    .home-hero-simple__content{
        max-width:none;
        padding:18px 8px 4px;
    }

    .home-hero-simple p{
        font-size:16px;
    }

    .home-hero-simple .home-hero-intro{
        margin-bottom:16px;
    }

    .home-hero-kpis{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        margin-bottom:24px;
        padding:0;
        border:1px solid rgba(255, 255, 255, .1);
        border-radius:10px;
        overflow:hidden;
    }

    .home-hero-kpi{
        min-height:70px;
        padding:12px;
    }

    .home-hero-kpi + .home-hero-kpi::before{
        display:none;
    }

    .home-hero-kpi:nth-child(even){
        border-left:1px solid rgba(221, 165, 36, .55);
    }

    .home-hero-kpi:nth-child(n+3){
        border-top:1px solid rgba(221, 165, 36, .55);
    }

    .home-hero-kpi__icon{
        width:30px;
        height:30px;
        flex-basis:30px;
    }

    .home-hero-kpi:first-child .home-hero-kpi__copy strong{
        font-size:15px;
    }

    .home-hero-simple__media{
        min-height:390px;
    }

    .home-hero-note{
        left:14px;
        right:14px;
        bottom:14px;
        padding:14px;
    }

    .home-achievements{
        padding-bottom:34px;
    }

    .home-achievements-grid,
    .home-impact-grid,
    .home-school-choice-grid{
        grid-template-columns:1fr;
    }

    .home-achievements-grid{
        margin-top:0;
    }

    .home-impact,
    .home-school-choice,
    .quality-promise{
        padding:54px 0;
    }

    .quality-promise--partner{
        padding:28px 0 54px;
    }

    .quality-promise__panel{
        gap:22px;
        padding:22px;
        border-radius:12px;
    }

    .quality-promise__copy h2{
        font-size:28px;
    }

    .quality-promise__proof div,
    .quality-promise__steps div,
    .quality-promise__statement{
        min-height:auto;
        padding:16px;
    }

    .home-institutional-cta{
        padding-bottom:54px;
    }

    .home-institutional-cta__panel{
        padding:22px;
    }

    .home-actions,
    .home-section-heading--split{
        display:grid;
        grid-template-columns:1fr;
    }

    .home-actions .button-primary,
    .home-actions .button-ghost,
    .home-institutional-cta__panel .button-primary,
    .home-institutional-cta__panel .button-ghost,
    .home-section-heading--split .button-ghost,
    .home-community__content .button-primary{
        width:100%;
    }

    .home-featured-products .woocommerce ul.products,
    .home-featured-products ul.products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:14px;
    }

    .home-featured-products .product-card{
        border-radius:10px;
    }

    .home-featured-products .product-image-wrapper{
        height:150px !important;
    }

    .home-featured-products .product-details{
        padding:8px;
    }

    .home-featured-products .product-title{
        min-height:38px;
        margin:0 0 4px;
        font-size:13px !important;
        line-height:1.35;
        overflow:hidden;
        display:-webkit-box;
        -webkit-line-clamp:2;
        line-clamp:2;
        -webkit-box-orient:vertical;
    }

    .home-featured-products .product-category,
    .home-featured-products .product-price{
        font-size:12px;
    }

    .home-featured-products .product-bottom{
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }

    .home-featured-products .select-option-btn{
        width:100%;
        padding:8px 9px;
        text-align:center;
        font-size:12px;
    }

    .home-featured-products,
    .home-testimonials,
    .home-community,
    .home-institutional-cta,
    .home-page-simple .home-category-strip,
    .home-page-simple .home-editorial,
    .home-page-simple .home-campaign,
    .home-page-simple .featured-categories{
        padding:52px 0;
    }

    .home-community__image{
        min-height:280px;
    }

    .home-page-simple .home-editorial-panel{
        padding:22px;
    }

    .home-page-simple .home-editorial-media{
        grid-template-columns:1fr;
    }

    .home-page-simple .campaign-card{
        min-height:320px;
    }

    .home-page-simple .home-campaign-photo-grid{
        grid-template-columns:1fr;
    }

    .testimonial-card{
        flex-basis:100%;
        min-height:300px;
    }

    .testimonial-carousel-controls{
        justify-content:flex-start;
    }

    .campaign-photo-card,
    .campaign-photo-card--large,
    .campaign-photo-card--wide,
    .home-page-simple .category-card{
        min-height:280px;
    }

    .featured-categories-top{
        grid-template-columns:1fr;
    }

    .category-carousel-controls{
        justify-content:flex-start;
    }

    .home-page-simple .category-card{
        flex-basis:100%;
    }
}

/* ==========================
   GLOBAL MOTION
========================== */

.reveal-on-scroll{
    opacity:1;
    filter:blur(0);
    transform:none;
    transition:
        opacity .9s ease,
        filter .9s ease,
        transform .9s cubic-bezier(.16, 1, .3, 1);
    transition-delay:var(--reveal-delay, 0ms);
    will-change:opacity, filter, transform;
}

.reveal-on-scroll.is-revealed{
    opacity:1;
    filter:blur(0);
    transform:translateY(0) scale(1);
    animation:revealFadeUp .9s cubic-bezier(.16, 1, .3, 1) both;
}

.reveal-on-scroll.reveal-from-left{
    opacity:0;
    transform:translateX(-32px) scale(.98);
}

.reveal-on-scroll.reveal-from-right{
    opacity:0;
    transform:translateX(32px) scale(.98);
}

.reveal-on-scroll.reveal-zoom-in{
    opacity:0;
    transform:translateY(28px) scale(.92);
}

.reveal-on-scroll.reveal-fade-up{
    opacity:0;
    transform:translateY(40px) scale(.98);
}

.reveal-on-scroll.reveal-achievement-slide-left{
    opacity:0;
    filter:blur(6px);
    transform:translateX(36px);
}

.reveal-on-scroll.is-revealed.reveal-from-left{
    animation:revealFromLeft .9s cubic-bezier(.16, 1, .3, 1) both;
}

.reveal-on-scroll.is-revealed.reveal-from-right{
    animation:revealFromRight .9s cubic-bezier(.16, 1, .3, 1) both;
}

.reveal-on-scroll.is-revealed.reveal-zoom-in{
    animation:revealZoomIn .9s cubic-bezier(.16, 1, .3, 1) both;
}

.reveal-on-scroll.is-revealed.reveal-fade-up{
    animation:revealFadeUp .9s cubic-bezier(.16, 1, .3, 1) both;
}

.reveal-on-scroll.is-revealed.reveal-achievement-slide-left{
    animation:revealAchievementSlideLeft .65s cubic-bezier(.16, 1, .3, 1) both;
}

.home-achievement-card.reveal-on-scroll,
.home-impact-card.reveal-on-scroll,
.home-school-choice-card.reveal-on-scroll,
.home-institutional-cta__panel.reveal-on-scroll,
.about-trust-card.reveal-on-scroll,
.partner-benefit-card.reveal-on-scroll{
    transition-duration:.65s;
}

.home-achievement-card.reveal-on-scroll.is-revealed,
.home-impact-card.reveal-on-scroll.is-revealed,
.home-school-choice-card.reveal-on-scroll.is-revealed,
.home-institutional-cta__panel.reveal-on-scroll.is-revealed,
.about-trust-card.reveal-on-scroll.is-revealed,
.partner-benefit-card.reveal-on-scroll.is-revealed{
    animation-duration:.65s;
}

@keyframes revealFadeUp{
    from{
        opacity:0;
        filter:blur(8px);
        transform:translateY(56px) scale(.96);
    }

    to{
        opacity:1;
        filter:blur(0);
        transform:translateY(0) scale(1);
    }
}

@keyframes revealAchievementSlideLeft{
    from{
        opacity:0;
        filter:blur(6px);
        transform:translateX(36px);
    }

    to{
        opacity:1;
        filter:blur(0);
        transform:translateX(0);
    }
}

@keyframes revealFromLeft{
    from{
        opacity:0;
        transform:translateX(-32px) scale(.98);
    }

    to{
        opacity:1;
        transform:translateX(0) scale(1);
    }
}

@keyframes revealFromRight{
    from{
        opacity:0;
        transform:translateX(32px) scale(.98);
    }

    to{
        opacity:1;
        transform:translateX(0) scale(1);
    }
}

@keyframes revealZoomIn{
    from{
        opacity:0;
        transform:translateY(24px) scale(.92);
    }

    to{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

[data-parallax]{
    will-change:transform;
}

/* ==========================
   STANDARD, BLOG, POLICY PAGES
========================== */

.standard-page-hero,
.blog-hero,
.blog-single-hero{
    padding:128px 0 54px;
    background:
        linear-gradient(140deg, rgba(1, 24, 69, .96), rgba(8, 32, 76, .9)),
        linear-gradient(90deg, rgba(221, 165, 36, .22), transparent);
    color:#fff;
}

.standard-page-hero h1,
.blog-hero h1,
.blog-single-hero h1{
    max-width:860px;
    margin:10px 0 0;
    color:#fff;
    font-size:clamp(32px, 4.4vw, 50px);
    line-height:1.08;
}

.blog-hero p{
    max-width:620px;
    margin:14px 0 0;
    color:rgba(255, 255, 255, .72);
    font-size:16px;
    line-height:1.7;
}

.standard-page-container,
.blog-listing,
.blog-single-content{
    padding:54px 0 70px;
}

.standard-page .entry-content,
.blog-single-content{
    max-width:860px;
    color:#4b5565;
    font-size:16px;
    line-height:1.8;
}

.standard-page .entry-content p,
.blog-single-content p{
    margin:0 0 18px;
}

.standard-page .entry-content a,
.blog-single-content a{
    color:var(--primary-blue);
    font-weight:800;
}

.privacy-page{
    overflow:hidden;
    background:
        linear-gradient(180deg, #f4f6fb 0%, #ffffff 48%, #f7f8fb 100%);
}

.privacy-hero{
    padding:128px 0 58px;
    background: var(--primary-blue);
    color:#eef1f7;
    text-align:center;
}

.privacy-hero h1{
    margin:10px 0 10px;
    color:var(--soft);
    font-size:clamp(32px, 4.4vw, 50px);
    line-height:1.08;
}

.privacy-hero p{
    margin:0;
    color:var(--muted);
    font-size:15px;
    font-weight:800;
}

.privacy-body{
    padding:70px 0 90px;
}

.privacy-layout{
    display:grid;
    grid-template-columns:minmax(220px, .32fr) minmax(0, 1fr);
    gap:42px;
    align-items:start;
    max-width:1080px;
}

.privacy-sidebar{
    position:sticky;
    top:108px;
    padding:22px 0 22px 18px;
    border-left:1px solid rgba(1, 24, 69, .08);
}

.privacy-sidebar h2{
    margin:0 0 14px;
    color:var(--primary-blue);
    font-family:var(--font-body);
    font-size:13px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.privacy-sidebar nav{
    display:grid;
    gap:2px;
}

.privacy-sidebar a{
    display:block;
    padding:8px 12px;
    border-left:3px solid transparent;
    color:#596375;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
    text-decoration:none;
    transition:border-color .2s ease, color .2s ease, background-color .2s ease;
}

.privacy-sidebar a:hover,
.privacy-sidebar a:focus-visible{
    border-left-color:var(--primary-gold);
    background:rgba(221, 165, 36, .08);
    color:var(--primary-blue);
}

.privacy-content{
    padding:0 0 0 26px;
    border-left:1px solid rgba(1, 24, 69, .08);
}

.privacy-section{
    padding:0 0 34px;
    margin:0 0 34px;
    border-bottom:1px solid rgba(1, 24, 69, .08);
    scroll-margin-top:110px;
}

.privacy-section:last-child{
    margin-bottom:0;
    border-bottom:0;
}

.privacy-section h2{
    margin:0 0 14px;
    color:var(--primary-blue);
    font-family:var(--font-body);
    font-size:clamp(21px, 2.2vw, 26px);
    font-weight:900;
    line-height:1.18;
}

.privacy-section h3{
    margin:24px 0 10px;
    color:var(--primary-blue);
    font-size:17px;
    line-height:1.3;
}

.privacy-section p,
.privacy-section li{
    color:#4b5565;
    font-size:15px;
    line-height:1.82;
}

.privacy-section p{
    margin:0 0 16px;
}

.privacy-section ul{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px 22px;
    margin:14px 0 20px;
    padding-left:20px;
}

.privacy-section li::marker{
    color:var(--primary-gold);
}

.privacy-section address{
    display:grid;
    gap:8px;
    margin:18px 0;
    padding:20px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:12px;
    background:#f8f9fc;
    color:var(--primary-blue);
    font-style:normal;
}

.privacy-section address strong,
.privacy-section address span,
.privacy-section address a{
    color:var(--primary-blue);
    font-weight:900;
    text-decoration:none;
}

.privacy-section address a:hover{
    color:var(--primary-gold);
}

.shipping-table-wrap{
    overflow-x:auto;
    margin:18px 0;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:12px;
    background:#fff;
    box-shadow:0 12px 34px rgba(1, 24, 69, .06);
}

.shipping-fee-table{
    width:100%;
    min-width:620px;
    border-collapse:collapse;
}

.shipping-fee-table th,
.shipping-fee-table td{
    padding:16px 18px;
    border-bottom:1px solid rgba(1, 24, 69, .08);
    color:#4b5565;
    font-size:14px;
    line-height:1.45;
    text-align:left;
    vertical-align:top;
}

.shipping-fee-table th{
    background:#f8f9fc;
    color:var(--primary-blue);
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.shipping-fee-table tr:last-child td{
    border-bottom:0;
}

.shipping-fee-table td:last-child{
    color:var(--primary-blue);
    font-weight:900;
}

.shipping-policy-note,
.shipping-policy-callout{
    border-left:3px solid var(--primary-gold);
    background:rgba(221, 165, 36, .08);
}

.privacy-section .shipping-policy-note{
    margin:14px 0 22px;
    padding:14px 16px;
    border-radius:0 10px 10px 0;
    color:var(--primary-blue);
    font-weight:800;
}

.shipping-policy-callout{
    margin:18px 0;
    padding:18px 20px;
    border-radius:0 12px 12px 0;
}

.shipping-policy-callout strong{
    display:block;
    margin-bottom:8px;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.shipping-policy-callout p{
    margin:0;
}

.blog-locked{
    min-height:52vh;
    display:grid;
    place-items:center;
    padding:44px 18px 70px;
    background:#f7f8fb;
}

.blog-login-modal{
    width:min(100%, 560px);
    padding:34px;
    border:1px solid rgba(1, 24, 69, .08);
    border-radius:8px;
    background:rgba(255, 255, 255, .9);
    backdrop-filter:blur(16px);
    box-shadow:0 24px 60px rgba(1, 24, 69, .16);
    text-align:left;
}

.blog-login-modal h2{
    margin:8px 0 10px;
    color:var(--primary-blue);
    font-size:clamp(28px, 3.5vw, 38px);
    line-height:1.1;
}

.blog-login-modal p{
    margin:0 0 22px;
    color:#596273;
    font-size:15px;
    line-height:1.75;
}

.blog-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:24px;
}

.blog-card{
    overflow:hidden;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
}

.blog-card-media{
    height:220px;
    display:grid;
    place-items:center;
    overflow:hidden;
    background:linear-gradient(140deg, var(--primary-blue), #102c62);
    color:#fff;
    text-decoration:none;
}

.blog-card-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .4s ease;
}

.blog-card:hover .blog-card-media img{
    transform:scale(1.05);
}

.blog-card-media span{
    width:54px;
    height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:8px;
    background:var(--primary-gold);
    font-weight:900;
}

.blog-card-content{
    padding:20px;
}

.blog-card time,
.blog-single-hero time{
    color:var(--primary-gold);
    font-size:12px;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.blog-card h2{
    margin:8px 0 10px;
    font-size:19px;
    line-height:1.25;
}

.blog-card h2 a,
.blog-card-link,
.blog-back-link{
    color:var(--primary-blue);
    text-decoration:none;
}

.blog-card p{
    margin:0 0 16px;
    color:#596273;
    font-size:14px;
    line-height:1.7;
}

.blog-card-link,
.blog-back-link{
    font-size:13px;
    font-weight:900;
}

.blog-card-link:hover,
.blog-card h2 a:hover,
.blog-back-link:hover{
    color:var(--primary-gold);
}

.blog-pagination{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px;
    margin-top:34px;
}

.blog-pagination .page-numbers{
    min-width:42px;
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border:1px solid rgba(1, 24, 69, .1);
    border-radius:8px;
    background:#fff;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:800;
    text-decoration:none;
    box-shadow:0 8px 18px rgba(1, 24, 69, .08);
}

.blog-pagination .current,
.blog-pagination a:hover{
    border-color:var(--primary-gold);
    background:var(--primary-gold);
    color:#fff;
}

.blog-empty{
    max-width:620px;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0, 0, 0, .08);
}

.blog-empty h2{
    margin:0 0 8px;
    color:var(--primary-blue);
}

.blog-empty p{
    margin:0;
    color:#596273;
}

.blog-single-hero-inner{
    display:grid;
    gap:10px;
}

.blog-single-hero .blog-back-link{
    color:rgba(255, 255, 255, .82);
}

.blog-single-featured{
    margin-top:-34px;
}

.blog-single-featured img{
    width:100%;
    max-height:520px;
    display:block;
    object-fit:cover;
    border-radius:12px;
    box-shadow:0 18px 42px rgba(1, 24, 69, .16);
}

.hammond-policy-agreement{
    margin:18px 0;
    padding:14px;
    border:1px solid rgba(1, 24, 69, .1);
    border-radius:8px;
    background:#f8f9fc;
    color:#4f5869;
    font-size:14px;
    line-height:1.55;
}

.hammond-policy-agreement label{
    display:flex;
    align-items:flex-start;
    gap:10px;
}

.hammond-policy-agreement input{
    flex:0 0 auto;
    margin-top:4px;
}

.hammond-policy-agreement a{
    color:var(--primary-blue);
    font-weight:900;
}

@media (max-width: 576px) {
    .home-editorial-points {
        display: none;
    }
}

@media (max-width: 980px){
    .privacy-layout{
        grid-template-columns:1fr;
        gap:28px;
    }

    .privacy-sidebar{
        position:relative;
        top:auto;
        padding:18px;
        border:1px solid rgba(1, 24, 69, .08);
        border-radius:14px;
        background:#fff;
        box-shadow:0 10px 30px rgba(1, 24, 69, .06);
    }

    .privacy-sidebar nav{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:2px 10px;
    }

    .privacy-content{
        padding-left:0;
        border-left:0;
    }

    .blog-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px){
    .standard-page-hero,
    .blog-hero,
    .blog-single-hero{
        padding:104px 0 42px;
    }

    .standard-page-container,
    .blog-listing,
    .blog-single-content{
        padding:40px 0 54px;
    }

    .privacy-hero{
        padding:104px 0 42px;
    }

    .privacy-body{
        padding:44px 0 60px;
    }

    .privacy-sidebar nav,
    .privacy-section ul{
        grid-template-columns:1fr;
    }

    .privacy-section{
        padding-bottom:28px;
        margin-bottom:28px;
    }

    .blog-grid{
        grid-template-columns:1fr;
    }

    .blog-login-modal{
        padding:26px 20px;
    }

    .blog-card-media{
        height:200px;
    }
}

@media (prefers-reduced-motion: reduce){
    .reveal-on-scroll{
        opacity:1;
        transform:none;
    }

    [data-parallax]{
        transform:none !important;
    }
}
