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


body{

    font-family:Arial, Helvetica, sans-serif;

    background:#f5f5f5;

    color:#222;

}



/* CABEÇALHO */

header{

    width:100%;

    background:linear-gradient(90deg,#0b4a40 0%, #0f5d4c 55%, #0a3f37 100%);

    padding:18px 48px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}



.logo img{

    width:186px;

    height:auto;

}



nav a{

    color:white;

    text-decoration:none;

    margin-left:36px;

    font-weight:bold;

    font-size:17px;
    font-weight:600;
    opacity:.98;

}

.site-header{
    position:relative;
    min-height:112px;
    padding:18px clamp(24px,5vw,72px);
    gap:32px;
}

.site-header__logo{
    display:inline-flex;
    flex:0 0 auto;
}

.site-header__logo img{
    display:block;
    width:186px;
    height:auto;
}

.site-navigation{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:clamp(18px,2.4vw,34px);
}

.site-navigation a{
    position:relative;
    margin:0;
    padding:10px 0;
    font-size:16px;
    white-space:nowrap;
}

.site-navigation a[aria-current="page"]::after{
    content:"";
    position:absolute;
    right:0;
    bottom:3px;
    left:0;
    height:2px;
    border-radius:2px;
    background:#d4af37;
}

.site-navigation .site-navigation__whatsapp{
    padding:11px 16px;
    border:1px solid rgba(255,255,255,.32);
    border-radius:999px;
}

.site-menu-toggle{
    display:none;
}



/* BANNER */

.banner{

    width:100%;

}



.banner img{

    width:100%;

    display:block;

}



/* BOTÕES */

button{

    padding:12px 30px;

    background:#d4af37;

    color:white;

    border:none;

    border-radius:6px;

    font-size:16px;

    font-weight:bold;

    cursor:pointer;

}



button:hover{

    opacity:0.85;

}



/* COLEÇÃO */

.collection{

    padding:60px 40px;

    text-align:center;

    background:#fff;

}



.collection h1{

    font-size:42px;

    color:#0f4d3f;

    margin-bottom:40px;

}



/* LISTA DE PRODUTOS */

.products{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:35px;

    max-width:1200px;

    margin:auto;

}



/* CARD */

.product-card{

    background:#fff;

    border-radius:12px;

    overflow:hidden;

    box-shadow:0 8px 25px rgba(0,0,0,0.12);

    transition:0.3s;

}



.product-card:hover{

    transform:translateY(-5px);

}



/* IMAGEM */

.product-card img{

    width:100%;

    height:360px;

    object-fit:cover;

}



/* TEXTO */

.product-card h2{

    font-size:22px;

    color:#0f4d3f;

    margin:20px 10px 10px;

}



.product-card p{

    color:#666;

    font-size:18px;

    margin-bottom:20px;

}



/* WHATSAPP */

.product-card button{

    background:#25D366;

    margin-bottom:25px;

    width:80%;

}


@media(max-width:768px){


header{

    padding:10px 20px;

}

.logo img{

    width:90px;

}


nav a{

    margin-left:10px;

    font-size:14px;

}


.collection{

    padding:20px 16px;

}

/* Ajustes mobile para reduzir espaçamento excessivo entre banner e conteúdo */
.collection h2{
    margin-top:18px;
    margin-bottom:20px;
    font-size:26px;
}


.collection h1{

    font-size:32px;

}


.product-card img{

    height:300px;

}


}

@media(max-width:900px){
    .site-header{
        min-height:82px;
        padding:12px 20px;
    }

    .site-header__logo img{
        width:118px;
    }

    .site-menu-toggle{
        display:inline-flex;
        width:48px;
        height:48px;
        padding:10px;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:5px;
        border:1px solid rgba(255,255,255,.3);
        border-radius:10px;
        background:transparent;
    }

    .site-menu-toggle span:not(.site-menu-toggle__label){
        display:block;
        width:22px;
        height:2px;
        background:#fff;
    }

    .site-menu-toggle__label{
        position:absolute;
        width:1px;
        height:1px;
        overflow:hidden;
        clip:rect(0 0 0 0);
    }

    .site-navigation{
        position:absolute;
        z-index:50;
        top:100%;
        right:0;
        left:0;
        display:none;
        padding:12px 20px 20px;
        flex-direction:column;
        align-items:stretch;
        gap:2px;
        background:#0a453b;
        box-shadow:0 14px 28px rgba(0,0,0,.18);
    }

    .site-navigation.is-open{
        display:flex;
    }

    .site-navigation a{
        margin:0;
        padding:14px 8px;
        font-size:16px;
    }

    .site-navigation a[aria-current="page"]::after{
        right:auto;
        width:36px;
    }

    .site-navigation .site-navigation__whatsapp{
        margin-top:8px;
        padding:13px 14px;
        text-align:center;
    }
}

.collection h2{

    margin-top:50px;

    margin-bottom:30px;

    color:#0f4d3f;

    font-size:32px;

}



.product-card p{

    font-size:22px;

    font-weight:bold;

    color:#0f4d3f;

    margin:20px 0 10px;

}



.product-card span{

    display:block;

    color:#666;

    margin-bottom:20px;

}



.products{

    margin-bottom:40px;

}/* GALERIA DE PRODUTOS */

.gallery{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:30px;

    max-width:1000px;

    margin:40px auto;

}



.gallery img{

    width:100%;

    height:450px;

    object-fit:cover;

    border-radius:12px;

    box-shadow:0 8px 25px rgba(0,0,0,0.15);

    cursor:pointer;

    transition:0.3s;

}



.gallery img:hover{

    transform:scale(1.03);

}

.product-card{
    text-decoration:none;
    color:inherit;
    display:block;
}


.product-card span{
    display:block;
    margin-top:15px;
    color:#666;
    font-size:16px;
}


.product-card:hover{
    text-decoration:none;
}

.product-page{
    max-width:1600px;
    margin:0 auto;
    text-align:left;
    padding:0 0 36px;
    background:#f7f7f7;
}

.product-breadcrumb{
    width:100%;
    display:flex;
    gap:8px;
    align-items:center;
    color:#666;
    font-size:15px;
    line-height:1;
    padding:22px 48px;
    border-top:1px solid #e8e8e8;
    border-bottom:1px solid #e8e8e8;
    margin-bottom:28px;
    background:#fff;
}

.product-breadcrumb a{
    color:#5f5f5f;
    text-decoration:none;
    font-size:15px;
}

.store-product-layout{
    display:grid;
    grid-template-columns:minmax(680px, 1fr) minmax(560px, 640px);
    gap:30px;
    align-items:start;
    padding:0 48px;
}

.product-gallery{
    display:grid;
    grid-template-columns:130px 1fr;
    gap:18px;
    align-items:start;
    background:transparent;
    border:none;
    border-radius:0;
    padding:0;
}

.product-gallery__thumbs{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.product-gallery__thumb{
    border:1px solid #ddd;
    border-radius:10px;
    padding:2px;
    background:#fff;
    cursor:pointer;
}

.product-gallery__thumb.is-active{
    border-color:#d4af37;
    box-shadow:0 0 0 2px rgba(212,175,55,.25);
}

.product-gallery__thumb img{
    width:100%;
    height:138px;
    object-fit:cover;
    border-radius:8px;
    display:block;
}

.product-gallery__zoom{
    position:relative;
    border:none;
    background:none;
    padding:0;
    cursor:zoom-in;
    border-radius:12px;
    overflow:hidden;
}

.product-gallery__main{
    width:100%;
    height:860px;
    border-radius:12px;
    object-fit:cover;
    display:block;
    border:1px solid #dfdfdf;
}

.store-info{
    background:#f7f7f7;
    border:none;
    border-radius:0;
    padding:8px 0 0;
    box-shadow:none;
}

.store-info__title{
    color:#0f4d3f;
    font-size:52px;
    margin:0 0 10px;
    line-height:1.05;
}

.store-info__description{
    color:#2f2f2f;
    font-size:16px;
    line-height:1.35;
    margin:0;
    padding-bottom:22px;
    border-bottom:1px solid #e4e4e4;
}

.store-info__label{
    margin:24px 0 14px;
    color:#0f4d3f;
    font-size:24px;
}

.store-model-options{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-bottom:14px;
}

.store-model-btn{
    border:1px solid #d4af37;
    background:#fff;
    color:#0f4d3f;
    border-radius:8px;
    padding:16px 26px;
    font-weight:bold;
    cursor:pointer;
    min-width:130px;
    font-size:16px;
}

.store-model-btn.is-active{
    background:#d4af37;
    color:#fff;
}

.store-selected-model{
    margin:0 0 22px;
    color:#555;
    font-size:14px;
}

.store-order-form{
    display:grid;
    gap:14px;
}

.store-qty-control{
    display:flex;
    width:170px;
}

.store-qty-btn{
    width:46px;
    height:46px;
    border:1px solid #d9d9d9;
    background:#fff;
    color:#333;
    font-size:30px;
    line-height:1;
    cursor:pointer;
    border-radius:0;
    padding:0;
}

.store-qty-control input{
    width:78px;
    text-align:center;
    border:1px solid #d9d9d9;
    border-left:0;
    border-right:0;
    font-size:30px;
}

.store-add-btn{
    width:100%;
    border-radius:10px;
    margin:0;
    font-size:16px;
    padding:14px 20px;
}

.store-note{
    margin-top:8px;
    padding:16px 18px;
    border-radius:8px;
    background:#f4f4f4;
    color:#555;
    font-size:13px;
    border:1px solid #ececec;
}

.store-links{
    margin:20px 48px 0;
}

.order-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#c58d0d;
    font-weight:normal;
    text-decoration:none;
    border:1px solid #d7ba6b;
    border-radius:8px;
    padding:10px 18px;
    background:#fff;
    font-size:14px;
}

.order-page{
    max-width:1100px;
    margin:0 auto;
}

.order-page h1{
    margin-bottom:20px;
}

.order-errors{
    margin-bottom:12px;
    padding:10px 12px;
    border-radius:8px;
    background:#ffe9e9;
    color:#8c1f1f;
}

.order-errors p{
    margin:2px 0;
}

.order-success{
    margin-bottom:12px;
    color:#1d7b36;
    font-weight:bold;
}

.order-empty{
    margin-bottom:16px;
}

.order-list{
    display:grid;
    gap:18px;
    margin-bottom:26px;
}

.order-item{
    display:flex;
    gap:16px;
    align-items:flex-start;
    border:1px solid #e3e3e3;
    border-radius:10px;
    padding:16px;
    background:#fff;
}

.order-item img{
    width:130px;
    height:170px;
    object-fit:cover;
    border-radius:8px;
}

.order-item__info{
    flex:1;
}

.order-item__info h2{
    font-size:24px;
    color:#0f4d3f;
    margin-bottom:10px;
}

.order-actions{
    display:flex;
    align-items:flex-end;
    gap:12px;
    flex-wrap:wrap;
}

.order-actions__form{
    display:flex;
    align-items:flex-end;
    gap:10px;
}

.order-actions label{
    display:flex;
    flex-direction:column;
    gap:5px;
    color:#0f4d3f;
    font-size:14px;
}

.order-actions input[type="number"]{
    width:80px;
    padding:8px;
}

.order-remove{
    background:#b43131;
}

.customer-form{
    text-align:left;
    margin-bottom:24px;
    padding:18px;
    border:1px solid #e3e3e3;
    border-radius:10px;
    background:#fff;
}

.customer-form h2{
    margin-bottom:14px;
    color:#0f4d3f;
}

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

.customer-grid label{
    display:flex;
    flex-direction:column;
    gap:6px;
    font-weight:bold;
    color:#0f4d3f;
}

.customer-grid input{
    padding:10px;
    border:1px solid #ccc;
    border-radius:8px;
    font-size:15px;
    color:#222;
}

.customer-actions{
    margin-top:14px;
}

.order-footer{
    margin-top:20px;
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.order-link--whatsapp{
    background:#25D366;
    color:#fff;
    border-color:#25D366;
}

.order-link--disabled{
    background:#9e9e9e;
    color:#fff;
    padding:12px 20px;
    border-radius:8px;
    cursor:not-allowed;
}

.store-price{
    color:#d1a01f;
    font-weight:bold;
    font-size:44px;
    margin:12px 0 2px;
}

.product-gallery__zoom-icon{
    position:absolute;
    right:18px;
    top:18px;
    width:44px;
    height:44px;
    border-radius:999px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#264e46;
    font-size:20px;
    box-shadow:0 2px 6px rgba(0,0,0,.15);
}

.product-gallery__hint{
    grid-column:2;
    margin:10px 0 0;
    text-align:center;
    color:#5a5a5a;
    font-size:15px;
}

.zoom{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.75);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:9999;
    padding:20px;
}

.zoom__dialog{
    position:relative;
    width:min(92vw, 1200px);
    height:90vh;
    border-radius:10px;
    overflow:hidden;
    background:#111;
}

.zoom__viewport{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden;
    cursor:grab;
    touch-action:none;
}

.zoom__viewport.is-dragging{
    cursor:grabbing;
}

.zoom__image{
    position:absolute;
    top:50%;
    left:50%;
    max-width:none;
    user-select:none;
    -webkit-user-drag:none;
}

.zoom__close{
    position:absolute;
    top:-14px;
    right:-14px;
    width:36px;
    height:36px;
    border:none;
    border-radius:999px;
    background:#fff;
    font-size:28px;
    line-height:1;
    cursor:pointer;
}

/* Product page rebuild (v2) */
.product-v2{
    background:#f5f5f5;
    padding:0 0 36px;
}

.product-v2__breadcrumb{
    max-width:1320px;
    margin:0 auto;
    display:flex;
    align-items:center;
    gap:8px;
    padding:18px 20px;
    color:#5f5f5f;
    font-size:14px;
}

.product-v2__breadcrumb a{
    color:#5f5f5f;
    text-decoration:none;
}

.product-v2__frame{
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
    display:grid;
    grid-template-columns:minmax(640px, 1fr) minmax(420px, 520px);
    gap:28px;
    align-items:start;
}

.product-v2__media{
    display:grid;
    grid-template-columns:96px 1fr;
    gap:14px;
    align-items:start;
    background:#fff;
    border:1px solid #e7e7e7;
    border-radius:12px;
    padding:14px;
}

.product-v2__thumbs{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.product-v2__thumb{
    border:1px solid #d8d8d8;
    border-radius:8px;
    padding:2px;
    background:#fff;
    cursor:pointer;
}

.product-v2__thumb.is-active{
    border-color:#d4af37;
    box-shadow:0 0 0 2px rgba(212,175,55,.22);
}

.product-v2__thumb img{
    width:100%;
    height:108px;
    object-fit:cover;
    border-radius:6px;
    display:block;
}

.product-v2__main-trigger{
    position:relative;
    border:none;
    background:none;
    padding:0;
    cursor:zoom-in;
    border-radius:10px;
    overflow:hidden;
}

.product-v2__main{
    width:100%;
    height:700px;
    object-fit:cover;
    display:block;
    border-radius:10px;
}

.product-v2__zoom-icon{
    position:absolute;
    top:14px;
    right:14px;
    width:40px;
    height:40px;
    border-radius:999px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 2px 8px rgba(0,0,0,.15);
    font-size:18px;
}

.product-v2__hint{
    grid-column:2;
    margin:8px 0 0;
    text-align:center;
    color:#666;
    font-size:14px;
}

.product-v2__info{
    background:#fff;
    border:1px solid #e7e7e7;
    border-radius:12px;
    padding:22px;
}

.product-v2__title{
    color:#0f4d3f;
    font-size:50px;
    line-height:1.05;
    margin:0 0 8px;
}

.product-v2__description{
    margin:0 0 14px;
    color:#2f2f2f;
    font-size:16px;
    line-height:1.35;
}

.product-v2__business{
    border:1px solid #ececec;
    border-radius:8px;
    padding:12px 14px;
    margin-bottom:16px;
    background:#fbfbfb;
}

.product-v2__business h3{
    margin:0 0 8px;
    color:#0f4d3f;
    font-size:16px;
}

.product-v2__business ul{
    margin:0;
    padding-left:18px;
    color:#4a4a4a;
    font-size:14px;
    line-height:1.45;
}

.product-v2__subtitle{
    margin:0 0 10px;
    color:#0f4d3f;
    font-size:28px;
}

.product-v2__models{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.product-v2__model-btn{
    border:1px solid #d4af37;
    background:#fff;
    color:#0f4d3f;
    border-radius:8px;
    padding:11px 18px;
    font-weight:bold;
    font-size:16px;
    cursor:pointer;
}

.product-v2__model-btn.is-active{
    background:#d4af37;
    color:#fff;
}

.product-v2__selected{
    margin:12px 0 8px;
    color:#4d4d4d;
    font-size:15px;
}

.product-v2__price{
    margin:0 0 12px;
    color:#d1a01f;
    font-size:42px;
    font-weight:bold;
}

.product-v2__form{
    display:grid;
    gap:10px;
}

.product-v2__qty{
    display:flex;
    width:170px;
}

.product-v2__qty-btn{
    width:46px;
    height:46px;
    border:1px solid #d9d9d9;
    background:#fff;
    color:#333;
    font-size:28px;
    line-height:1;
    cursor:pointer;
    padding:0;
}

.product-v2__qty input{
    width:78px;
    text-align:center;
    border:1px solid #d9d9d9;
    border-left:0;
    border-right:0;
    font-size:21px;
}

.product-v2__cta{
    width:100%;
    border-radius:8px;
    margin:0;
}

.product-v2__cta-group{
    display:grid;
    gap:16px;
    margin-top:6px;
}

.product-v2__cta--primary{
    background:#176b4d;
}

.product-v2__cta--secondary{
    background:#fff;
    color:#176b4d;
    border:1px solid #176b4d;
}

.product-v2__note{
    margin:12px 0 10px;
    padding:10px 12px;
    border:1px solid #ececec;
    background:#f7f7f7;
    border-radius:8px;
    color:#555;
    font-size:13px;
}

.product-v2__back{
    color:#c58d0d;
    font-size:14px;
    text-decoration:none;
}

/* Checkout concept page */
.checkout-page{
    background:#f5f5f5;
    padding:24px 0 44px;
}

.checkout-page__container{
    max-width:1320px;
    margin:0 auto;
    background:#fff;
    border:1px solid #e6e6e6;
    border-radius:14px;
    padding:24px;
}

.checkout-page h1{
    margin:0 0 6px;
    color:#0f4d3f;
    font-size:46px;
}

.checkout-page__subtitle{
    color:#525252;
    margin:0 0 16px;
    font-size:16px;
}

.checkout-table-wrap{
    overflow:auto;
    border:1px solid #e8e8e8;
    border-radius:10px;
    background:#fff;
}

.checkout-table{
    width:100%;
    border-collapse:collapse;
    min-width:760px;
}

.checkout-table thead{
    background:#f7f7f7;
}

.checkout-table th,
.checkout-table td{
    padding:12px 10px;
    border-bottom:1px solid #ededed;
    text-align:left;
    vertical-align:middle;
    font-size:14px;
}

.checkout-table th{
    color:#1d3f39;
}

.checkout-table__image-col img{
    width:58px;
    height:76px;
    object-fit:cover;
    border-radius:6px;
}

.checkout-qty-form{
    display:flex;
    align-items:center;
    gap:8px;
}

.checkout-qty-form input{
    width:68px;
    padding:7px;
}

.checkout-qty-form button{
    padding:8px 10px;
    font-size:13px;
}

.checkout-remove-btn{
    background:#b43131;
    padding:9px 10px;
    font-size:13px;
}

.checkout-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:18px;
}

.checkout-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d7ba6b;
    border-radius:8px;
    padding:10px 14px;
    color:#b07f0c;
    text-decoration:none;
    font-weight:bold;
    font-size:14px;
    background:#fff;
}

.checkout-finalize-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:none;
    border-radius:8px;
    padding:12px 22px;
    color:#fff;
    text-decoration:none;
    font-weight:bold;
    font-size:18px;
    background:#d4af37;
}

.checkout-whatsapp-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 20px;
    border-radius:8px;
    background:#25d366;
    color:#fff;
    font-weight:700;
    text-decoration:none;
}

.customer-success-card{
    margin:18px 0 24px;
    padding:18px;
    border:1px solid #d5e6df;
    border-radius:12px;
    background:#f4faf7;
}

.customer-success-card .order-success{
    margin:0 0 10px;
}

.customer-success-card > div{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:14px;
}

.checkout-warning{
    width:100%;
    color:#9a7a1f;
    font-size:14px;
    margin:4px 0 0;
}

.checkout-empty{
    border:1px dashed #d9d9d9;
    border-radius:10px;
    padding:20px;
    text-align:center;
}

.checkout-empty p{
    margin:0 0 12px;
}

/* Customer concept page */
.customer-page{
    background:#f5f5f5;
    padding:24px 0 44px;
}

.customer-page__container{
    max-width:840px;
    margin:0 auto;
    background:#fff;
    border:1px solid #e6e6e6;
    border-radius:14px;
    padding:24px;
}

.customer-page h1{
    margin:0 0 6px;
    color:#0f4d3f;
    font-size:42px;
}

.customer-page__subtitle{
    margin:0 0 16px;
    color:#525252;
}

.customer-page__form{
    margin-top:8px;
}

.customer-page__grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

.customer-page__grid label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#0f4d3f;
    font-weight:bold;
    font-size:14px;
}

.customer-page__grid input{
    padding:11px 10px;
    border:1px solid #d3d3d3;
    border-radius:8px;
    font-size:14px;
}

.customer-page__actions{
    margin-top:16px;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

@media(max-width:768px){
    .store-product-layout{
        grid-template-columns:1fr;
        gap:14px;
        padding:0 16px;
    }

    .product-gallery{
        grid-template-columns:1fr;
        gap:10px;
    }

    .product-gallery__thumbs{
        flex-direction:row;
        flex-wrap:wrap;
    }

    .product-gallery__thumb img{
        width:74px;
        height:94px;
    }

    .product-gallery__main{
        height:430px;
    }

    .store-info{
        padding:4px 0 0;
    }

    .store-info__title{
        font-size:34px;
    }

    .store-info__description{
        font-size:16px;
    }

    .store-info__label{
        font-size:24px;
    }

    .store-links{
        margin:18px 16px 0;
    }

    .product-breadcrumb{
        padding:14px 16px;
        font-size:14px;
    }

    .product-breadcrumb a{
        font-size:14px;
    }

    .store-model-btn{
        min-width:120px;
        font-size:14px;
        padding:10px 14px;
    }

    .store-price{
        font-size:34px;
    }

    .store-qty-control{
        width:190px;
    }

    .store-qty-btn{
        width:54px;
        height:54px;
        font-size:34px;
    }

    .store-qty-control input{
        width:82px;
        font-size:24px;
    }

    .store-add-btn{
        font-size:16px;
    }

    .store-note{
        font-size:13px;
    }

    .product-gallery__hint{
        grid-column:auto;
        font-size:16px;
    }

    .order-link{
        font-size:14px;
        padding:10px 14px;
    }

    .product-v2__frame{
        grid-template-columns:1fr;
        gap:14px;
        padding:0 14px;
    }

    .product-v2__media{
        grid-template-columns:1fr;
        gap:10px;
    }

    .product-v2__thumbs{
        flex-direction:row;
        flex-wrap:wrap;
    }

    .product-v2__thumb{
        width:76px;
    }

    .product-v2__main{
        height:420px;
    }

    .product-v2__hint{
        grid-column:auto;
        font-size:13px;
    }

    .product-v2__info{
        padding:16px;
    }

    .product-v2__title{
        font-size:34px;
    }

    .product-v2__subtitle{
        font-size:22px;
    }

    .product-v2__price{
        font-size:34px;
    }

    .product-v2__model-btn{
        font-size:14px;
        padding:10px 12px;
    }

    .checkout-page{
        padding:12px 0 30px;
    }

    .checkout-page__container{
        border-radius:0;
        border-left:none;
        border-right:none;
        padding:16px;
    }

    .checkout-page h1{
        font-size:34px;
    }

    .checkout-page__subtitle{
        font-size:14px;
    }

    .checkout-table{
        min-width:640px;
    }

    .checkout-finalize-btn,
    .checkout-whatsapp-btn{
        width:100%;
        font-size:20px;
        padding:13px 18px;
    }

    .customer-page{
        padding:12px 0 30px;
    }

    .customer-page__container{
        border-radius:0;
        border-left:none;
        border-right:none;
        padding:16px;
    }

    .customer-page h1{
        font-size:34px;
    }

    .customer-page__grid{
        grid-template-columns:1fr;
    }

    .order-item{
        flex-direction:column;
    }

    .order-item img{
        width:100%;
        height:280px;
    }
}

/* Admin internal panel */
.admin-page{
    overflow-x:hidden;
    background:#f4f1ed;
    color:#1f2d2a;
    min-height:100vh;
}

.admin-header{
    position:sticky;
    top:0;
    z-index:20;
    background:#123f36;
    color:#fff;
    padding:14px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
}

.admin-header__brand{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff;
    font-size:22px;
    font-weight:800;
    line-height:1.05;
    text-decoration:none;
}

.admin-header__brand small{
    display:block;
    margin-top:4px;
    color:#d6e6e1;
    font-size:10px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.admin-header__brand-mark{
    display:grid;
    width:40px;
    height:40px;
    place-items:center;
    border:1px solid rgba(255,255,255,.42);
    border-radius:50%;
    font-family:Georgia,serif;
    font-size:15px;
    letter-spacing:.08em;
}

.admin-header__nav{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.admin-header__nav a{
    color:#fff;
    text-decoration:none;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    padding:8px 12px;
    font-size:14px;
}

.admin-header__nav a:hover,
.admin-header__nav a[aria-current=page]{
    border-color:#fff;
    background:#fff;
    color:#123f36;
}

.admin-header__nav .admin-header__site-link{
    border-color:rgba(255,255,255,.45);
    background:transparent;
}

.admin-content{
    width:100%;
    min-width:0;
    max-width:1280px;
    margin:0 auto;
    padding:22px;
}

.admin-content h1{
    margin:0 0 10px;
    color:#0f4d3f;
    font-size:34px;
}

.admin-muted{
    color:#5e6b68;
    font-size:14px;
}

.admin-cards{
    margin-top:18px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:16px;
}

.admin-card{
    background:#fff;
    border:1px solid #dfe6e4;
    border-radius:14px;
    padding:18px;
}

.admin-card h2{
    margin:0 0 8px;
    color:#0f4d3f;
    font-size:20px;
}

.admin-card p{
    margin:4px 0;
}

.admin-card a{
    display:inline-block;
    margin-top:8px;
    color:#0f4d3f;
    font-weight:700;
    text-decoration:none;
}

.admin-welcome{
    position:relative;
    display:flex;
    overflow:hidden;
    align-items:center;
    justify-content:space-between;
    min-height:150px;
    border-radius:20px;
    padding:28px 32px;
    background:linear-gradient(120deg,#123f36,#1f6756);
    color:#fff;
    box-shadow:0 12px 30px rgba(18,63,54,.16);
}

.admin-welcome h1{
    margin:6px 0 8px;
    color:#fff;
    font-family:Georgia,serif;
    font-size:38px;
    font-weight:500;
}

.admin-welcome p{
    max-width:620px;
    margin:0;
    color:#e4efeb;
    font-size:16px;
    line-height:1.55;
}

.admin-welcome .admin-eyebrow{
    color:#c9ddd7;
}

.admin-welcome__detail{
    margin-right:24px;
    color:rgba(255,255,255,.11);
    font-family:Georgia,serif;
    font-size:100px;
    line-height:1;
}

.admin-dashboard .admin-cards{
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.admin-dashboard-card{
    display:flex;
    min-height:210px;
    flex-direction:column;
    border:0;
    padding:22px;
    box-shadow:0 5px 18px rgba(18,63,54,.08);
}

.admin-dashboard-card__top{
    display:flex;
    align-items:center;
    gap:10px;
}

.admin-dashboard-card__top h2{
    margin:0;
    font-size:17px;
}

.admin-dashboard-card__icon{
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border-radius:10px;
    background:#e9f2ef;
    color:#123f36;
    font-size:20px;
}

.admin-dashboard-card__number{
    margin-top:20px;
    color:#123f36;
    font-family:Georgia,serif;
    font-size:42px;
    font-weight:500;
    line-height:1;
}

.admin-dashboard-card__label{
    margin-top:24px;
    color:#123f36;
    font-family:Georgia,serif;
    font-size:23px;
    font-weight:500;
}

.admin-dashboard-card p{
    color:#64716e;
    font-size:13px;
}

.admin-dashboard-card__sub{
    color:#37695d;
    font-size:13px;
    font-weight:700;
}

.admin-dashboard-card a{
    margin-top:auto;
}

.admin-dashboard-modules{
    margin-top:34px;
}

.admin-section-heading h2{
    margin:0;
    color:#123f36;
    font-family:Georgia,serif;
    font-size:25px;
    font-weight:500;
}

.admin-section-heading p{
    margin:5px 0 0;
    color:#64716e;
}

.admin-dashboard-modules .admin-cards{
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}

.admin-module-card{
    box-shadow:none;
}

.admin-module-status{
    display:inline-block;
    border-radius:999px;
    padding:6px 9px;
    background:#f1ede6;
    color:#705c43;
    font-size:12px;
    font-weight:700;
}

.admin-table-wrap{
    margin-top:16px;
    overflow:auto;
    background:#fff;
    border:1px solid #dfe6e4;
    border-radius:10px;
}

.admin-table{
    width:100%;
    border-collapse:collapse;
    min-width:900px;
}

.admin-table th,
.admin-table td{
    padding:10px;
    border-bottom:1px solid #ecf0ef;
    text-align:left;
    vertical-align:top;
    font-size:14px;
}

.admin-table th{
    background:#f3f7f6;
    color:#0f4d3f;
}

.admin-inline-form{
    display:flex;
    align-items:center;
    gap:8px;
}

.admin-inline-form select{
    border:1px solid #cdd7d4;
    border-radius:6px;
    padding:7px 8px;
    font-size:14px;
    background:#fff;
}

.admin-btn{
    border:none;
    border-radius:6px;
    background:#0f4d3f;
    color:#fff;
    font-size:13px;
    font-weight:700;
    padding:8px 12px;
    cursor:pointer;
}

.admin-btn--warn{
    background:#9f3f2f;
}

.admin-btn--danger{
    border:1px solid #c95242;
    background:#fff;
    color:#913529;
}

.admin-btn--danger:hover{
    background:#913529;
    color:#fff;
}

.admin-badge{
    display:inline-block;
    padding:4px 8px;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
}

.admin-badge.is-active{
    background:#e8f6ed;
    color:#1f7a3f;
}

.admin-badge.is-inactive{
    background:#f8eaea;
    color:#9f3f2f;
}

.admin-search-form{
    margin-top:8px;
    display:flex;
    align-items:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

.admin-search-form label{
    display:block;
    color:#0f4d3f;
    font-size:13px;
    font-weight:700;
}

.admin-search-form input{
    border:1px solid #cdd7d4;
    border-radius:6px;
    padding:8px 10px;
    min-width:220px;
}

.admin-history{
    margin-top:18px;
    background:#fff;
    border:1px solid #dfe6e4;
    border-radius:10px;
    padding:14px;
}

.admin-history h2{
    margin:0 0 10px;
    color:#0f4d3f;
    font-size:22px;
}

.admin-filter-form{
    margin-top:18px;
    padding:14px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    align-items:end;
    gap:12px;
    background:#fff;
    border:1px solid #dfe6e4;
    border-radius:10px;
}

.admin-filter-form label,
.admin-stack-form label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#0f4d3f;
    font-size:13px;
    font-weight:700;
}

.admin-filter-form input,
.admin-filter-form select,
.admin-stack-form input,
.admin-stack-form select,
.admin-stack-form textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid #cdd7d4;
    border-radius:6px;
    padding:8px 10px;
    background:#fff;
    color:#1f2d2a;
    font:inherit;
}

.admin-filter-form__actions{
    display:flex;
    gap:8px;
}

.admin-btn{
    display:inline-block;
    text-decoration:none;
}

.admin-btn--secondary{
    background:#5e6b68;
}

.admin-header__nav{
    align-items:center;
}

.admin-logout-form{
    margin:0;
}

.admin-logout-form button{
    border:1px solid rgba(255,255,255,.45);
    border-radius:6px;
    padding:8px 12px;
    background:transparent;
    color:#fff;
    cursor:pointer;
    font:inherit;
    font-size:14px;
}

.admin-login-page{
    display:grid;
    place-items:center;
    padding:20px;
}

.admin-login{
    width:min(100%, 440px);
}

.admin-login__card{
    background:#fff;
    border:1px solid #dfe6e4;
    border-radius:14px;
    box-shadow:0 18px 45px rgba(15,77,63,.12);
    padding:30px;
}

.admin-login__brand{
    color:#0f4d3f;
    font-size:18px;
    font-weight:800;
    letter-spacing:.03em;
}

.admin-login h1{
    margin:10px 0 8px;
    color:#0f4d3f;
    font-size:30px;
}

.admin-stack-form{
    display:grid;
    gap:15px;
    margin-top:20px;
}

.admin-stack-form label,
.admin-field{
    display:flex;
    flex-direction:column;
    gap:7px;
    color:#0f4d3f;
    font-size:14px;
    font-weight:700;
}

.admin-stack-form input,
.admin-stack-form select,
.admin-stack-form textarea,
.admin-field input,
.admin-field select,
.admin-field textarea,
.admin-fieldset input{
    box-sizing:border-box;
    width:100%;
    border:1px solid #bdcbc7;
    border-radius:8px;
    padding:11px 12px;
    background:#fff;
    color:#1f2d2a;
    font:inherit;
    font-weight:400;
}

.admin-btn--large{
    padding:12px 18px;
    font-size:15px;
}

.admin-btn:disabled{
    cursor:not-allowed;
    opacity:.55;
}

.admin-form-help{
    margin:0;
    color:#5e6b68;
    font-size:13px;
    font-weight:400;
}

.admin-feedback{
    margin:16px 0;
    border-radius:8px;
    padding:12px 14px;
    font-size:14px;
}

.admin-feedback.is-error{
    border:1px solid #e7b8b3;
    background:#fff2f0;
    color:#8b2920;
}

.admin-feedback.is-success{
    border:1px solid #b7d9c1;
    background:#edf8f0;
    color:#176b34;
}

.admin-content--narrow{
    max-width:850px;
}

.admin-page-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
}

.admin-manager-page{
    max-width:none;
}

.admin-manager-frame{
    display:block;
    width:100%;
    min-height:calc(100vh - 190px);
    border:1px solid #ddd4cb;
    border-radius:16px;
    background:#fff;
}

.admin-secondary-link{
    color:#0f4d3f;
    font-weight:700;
    white-space:nowrap;
}

.admin-card--form{
    margin-top:18px;
    padding:24px;
}

.admin-product-form{
    display:grid;
    gap:18px;
}

.admin-form-section{
    border:1px solid #dce5e2;
    border-radius:16px;
    padding:22px;
    background:#fff;
    box-shadow:0 3px 12px rgba(15,77,63,.04);
}

.admin-form-section__heading{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-bottom:20px;
}

.admin-form-section__heading>div,
.admin-page-heading>div{
    min-width:0;
}

.admin-form-section__heading h2{
    margin:0;
    color:#123f36;
    font-size:20px;
}

.admin-form-section__heading p{
    margin:4px 0 0;
    color:#64716e;
    font-size:14px;
    line-height:1.45;
    overflow-wrap:anywhere;
}

.admin-form-section__number{
    display:grid;
    flex:0 0 32px;
    width:32px;
    height:32px;
    place-items:center;
    border-radius:50%;
    background:#0f4d3f;
    color:#fff;
    font-size:14px;
    font-weight:800;
}

.admin-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.admin-field--wide{
    grid-column:1 / -1;
}

.admin-field{
    display:grid;
    align-content:start;
    gap:7px;
}

.admin-field>span{
    color:#123f36;
    font-size:14px;
    font-weight:800;
}

.admin-field small{
    color:#64716e;
    font-weight:400;
}

.admin-fieldset{
    margin:0;
    border:1px solid #d5dfdc;
    border-radius:10px;
    padding:16px;
}

.admin-fieldset legend{
    padding:0 7px;
    color:#0f4d3f;
    font-weight:800;
}

.admin-photo-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr));
    gap:12px;
    margin:0 0 14px;
}

.admin-photo-choice{
    position:relative;
    display:grid;
    gap:7px;
    overflow:hidden;
    border:1px solid #d5dfdc;
    border-radius:12px;
    padding:8px;
    background:#fff;
    color:#46534f;
    font-size:12px;
}

.admin-photo-choice img{
    width:100%;
    height:140px;
    border-radius:9px;
    object-fit:cover;
}

.admin-photo-choice__badge{
    color:#123f36;
    font-weight:800;
}

.admin-photo-choice__actions{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}

.admin-photo-choice__actions button{
    min-height:32px;
    border:1px solid #cad8d4;
    border-radius:7px;
    padding:5px 8px;
    background:#f6faf9;
    color:#164d40;
    cursor:pointer;
    font:inherit;
    font-weight:700;
}

.admin-photo-choice__actions button:disabled{
    cursor:not-allowed;
    opacity:.35;
}

.admin-photo-choice__actions .is-danger{
    border-color:#f0d2ce;
    background:#fff6f5;
    color:#913529;
}

.admin-photo-upload{
    display:grid;
    min-height:138px;
    place-items:center;
    align-content:center;
    gap:5px;
    border:2px dashed #8db3a9;
    border-radius:14px;
    padding:20px;
    background:#f7fbfa;
    color:#164d40;
    cursor:pointer;
    text-align:center;
    transition:border-color .2s,background .2s;
}

.admin-photo-upload:hover,
.admin-photo-upload:focus-within{
    border-color:#0f4d3f;
    background:#edf7f4;
}

.admin-photo-upload__icon{
    font-size:28px;
    line-height:1;
}

.admin-photo-upload small{
    color:#64716e;
    font-size:12px;
}

.admin-photo-upload input{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    opacity:0;
}

.admin-photo-tip{
    margin:10px 0 14px;
    border-left:3px solid #8db3a9;
    padding:8px 10px;
    background:#f7fbfa;
}

.admin-money-field{
    display:flex;
    align-items:center;
    overflow:hidden;
    border:1px solid #bdcbc7;
    border-radius:8px;
    background:#fff;
}

.admin-money-field>span{
    padding:11px 0 11px 12px;
    color:#52615d;
    font-weight:700;
}

.admin-money-field input{
    border:0;
    outline:0;
}

.admin-color-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:end;
    gap:14px;
    border:1px solid #d5dfdc;
    border-radius:12px;
    padding:16px;
    background:#f9fbfa;
}

.admin-color-card__swatch{
    align-self:center;
    width:42px;
    height:42px;
    border:5px solid #fff;
    border-radius:50%;
    background:linear-gradient(135deg,#7f9fb0,#365367);
    box-shadow:0 0 0 1px #c8d5d2;
}

.admin-color-card__status{
    align-self:center;
    border-radius:999px;
    padding:7px 10px;
    background:#e6f4ea;
    color:#176b34;
    font-size:12px;
    font-weight:800;
}

.admin-saved-colors{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-top:14px;
    color:#35564e;
}

.admin-saved-colors strong{
    width:100%;
}

.admin-saved-colors span{
    padding:7px 11px;
    border:1px solid #c8d5d2;
    border-radius:999px;
    background:#fff;
}

.admin-size-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(90px,1fr));
    gap:10px;
}

.admin-size-card{
    display:grid;
    gap:6px;
    border:1px solid #d5dfdc;
    border-radius:12px;
    padding:12px;
    background:#f9fbfa;
    text-align:center;
}

.admin-size-card strong{
    color:#0f4d3f;
    font-size:20px;
}

.admin-size-card span{
    color:#64716e;
    font-size:11px;
}

.admin-size-card input[type=number]{
    min-height:44px;
    padding:8px;
    text-align:center;
    font-weight:800;
}

.admin-legacy-sizes{
    margin-top:14px;
}

.admin-legacy-sizes summary{
    color:#52615d;
    cursor:pointer;
    font-size:13px;
    font-weight:700;
}

.admin-legacy-sizes .admin-size-grid{
    margin-top:12px;
}

.admin-size-list{
    display:grid;
    gap:9px;
    margin:12px 0;
}

.admin-size-row{
    display:grid;
    grid-template-columns:minmax(100px,1fr) minmax(120px,1fr) auto;
    align-items:end;
    gap:10px;
}

.admin-size-row label{
    display:grid;
    gap:5px;
    color:#0f4d3f;
    font-size:13px;
    font-weight:700;
}

.admin-remove-size{
    border:0;
    padding:11px 8px;
    background:transparent;
    color:#9f3f2f;
    cursor:pointer;
    font-weight:700;
}

.admin-status-switch{
    display:flex;
    align-items:flex-start;
    gap:12px;
    border:1px solid #cbdad6;
    border-radius:12px;
    padding:18px;
    background:#f7fbfa;
}

.admin-status-switch input{
    width:24px;
    height:24px;
    accent-color:#0f4d3f;
}

.admin-status-switch span{
    display:grid;
    gap:3px;
}

.admin-status-switch small{
    color:#5e6b68;
    font-weight:400;
}

.admin-advanced{
    border:1px solid #dfe6e4;
    border-radius:12px;
    padding:16px;
    background:#fafcfb;
}

.admin-advanced summary{
    color:#0f4d3f;
    cursor:pointer;
    font-weight:800;
}

.admin-advanced .admin-form-grid{
    margin-top:16px;
}

.admin-form-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    position:sticky;
    bottom:12px;
    z-index:4;
    border:1px solid #d3dfdc;
    border-radius:14px;
    padding:12px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 26px rgba(15,77,63,.14);
    backdrop-filter:blur(8px);
}

.admin-btn--save{
    min-width:210px;
    min-height:50px;
    background:#0f4d3f;
    box-shadow:0 6px 14px rgba(15,77,63,.18);
    font-size:16px;
}

.admin-product-list{
    margin-top:30px;
}

.admin-product-list h2{
    color:#0f4d3f;
}

.admin-product-cards{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
    gap:14px;
}

.admin-product-card{
    display:grid;
    grid-template-columns:100px 1fr;
    gap:14px;
    border:1px solid #dfe6e4;
    border-radius:10px;
    padding:12px;
    background:#fff;
}

.admin-product-card>img{
    width:100px;
    height:125px;
    border-radius:8px;
    object-fit:cover;
}

.admin-product-card__heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
}

.admin-product-card h3{
    margin:0;
    color:#0f4d3f;
}

.admin-product-card p{
    margin:8px 0 14px;
}

.admin-product-card__price{
    color:#0f4d3f;
    font-size:17px;
    font-weight:800;
}

.admin-product-card__stock{
    color:#52615d;
    font-size:13px;
    line-height:1.55;
}

.admin-product-card__actions{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
}

.admin-product-card__actions form{
    margin:0;
}

@media (max-width:700px){
    .admin-header{
        align-items:flex-start;
    }

    .admin-header__nav{
        width:100%;
        flex-wrap:nowrap;
        overflow-x:auto;
        padding-bottom:4px;
        scrollbar-width:thin;
    }

    .admin-header__nav a,
    .admin-logout-form{
        flex:0 0 auto;
    }

    .admin-content{
        padding:16px;
    }

    .admin-welcome{
        min-height:0;
        padding:24px 20px;
    }

    .admin-welcome h1{
        font-size:31px;
    }

    .admin-welcome__detail{
        display:none;
    }

    .admin-dashboard .admin-cards{
        grid-template-columns:1fr;
    }

    .admin-dashboard-card{
        min-height:185px;
    }

    .admin-page-heading,
    .admin-form-grid{
        display:grid;
        grid-template-columns:1fr;
    }

    .admin-field--wide{
        grid-column:auto;
    }

    .admin-card--form{
        padding:10px;
        background:transparent;
        box-shadow:none;
    }

    .admin-form-section{
        border-radius:13px;
        padding:16px;
    }

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

    .admin-color-card{
        grid-template-columns:auto 1fr;
    }

    .admin-color-card__status{
        grid-column:1 / -1;
        justify-self:start;
    }

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

    .admin-photo-choice img{
        height:120px;
    }

    .admin-form-actions{
        bottom:6px;
    }

    .admin-form-actions .admin-btn{
        width:100%;
        text-align:center;
    }
}

@media (min-width:701px) and (max-width:1050px){
    .admin-dashboard .admin-cards{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .admin-size-grid{
        grid-template-columns:repeat(3,minmax(100px,1fr));
    }
}

.admin-status{
    display:inline-block;
    padding:5px 9px;
    border-radius:999px;
    background:#e2eeeb;
    color:#0f4d3f;
    font-size:12px;
    font-weight:700;
}

.admin-status--large{
    padding:8px 12px;
    font-size:14px;
}

.admin-back-link{
    display:inline-block;
    margin-bottom:14px;
    color:#0f4d3f;
    font-weight:700;
    text-decoration:none;
}

.admin-order-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
}

.admin-order-grid{
    margin-top:18px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:14px;
}

.admin-stack-form{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.admin-feedback{
    margin-top:14px;
    padding:10px 12px;
    border-radius:8px;
    font-weight:700;
}

.admin-feedback.is-success{
    background:#e8f6ed;
    color:#1f7a3f;
}

.admin-feedback.is-error{
    background:#f8eaea;
    color:#9f3f2f;
}

.admin-table--compact{
    min-width:700px;
}

.admin-timeline{
    margin:0;
    padding:0;
    list-style:none;
}

.admin-timeline li{
    position:relative;
    padding:0 0 20px 28px;
    border-left:2px solid #b9ccc7;
}

.admin-timeline li::before{
    content:"";
    position:absolute;
    top:3px;
    left:-7px;
    width:12px;
    height:12px;
    border-radius:50%;
    background:#0f4d3f;
}

.admin-timeline li:last-child{
    padding-bottom:0;
}

.admin-timeline time,
.admin-timeline strong,
.admin-timeline span{
    display:block;
}

.admin-timeline time,
.admin-timeline span{
    color:#5e6b68;
    font-size:13px;
}

.admin-timeline p{
    margin:5px 0;
}

.product-v2__variant-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 16px;
    margin:12px 0;
    color:#52615e;
    font-size:14px;
}

.product-v2__availability{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:7px 11px;
    border-radius:999px;
    font-weight:700;
}

.product-v2__availability::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:currentColor;
}

.product-v2__availability.is-available{
    color:#176b4d;
    background:#e8f5ee;
}

.product-v2__availability.is-sold-out{
    color:#8b3f3f;
    background:#f8eaea;
}

.product-v2__sizes{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-bottom:12px;
}

.product-v2__sizes span{
    padding:4px 8px;
    border:1px solid #cdd7d4;
    border-radius:5px;
    background:#fff;
    font-size:13px;
}

.product-v2__size-field{
    display:flex;
    flex-direction:column;
    gap:6px;
    max-width:100%;
    margin:12px 0;
    color:#0f4d3f;
    font-weight:700;
}

.product-v2__size-options{
    display:grid;
    grid-template-columns:repeat(6,minmax(62px,1fr));
    gap:8px;
    margin-top:5px;
}

.product-v2__size-option{
    min-height:52px;
    padding:7px 5px;
    border:1px solid #a9bbb6;
    border-radius:8px;
    background:#fff;
    color:#173f36;
    font:inherit;
    cursor:pointer;
}

.product-v2__size-option span,
.product-v2__size-option small{
    display:block;
}

.product-v2__size-option small{
    margin-top:2px;
    color:#817b79;
    font-size:10px;
    font-weight:500;
}

.product-v2__size-option:hover:not(:disabled),
.product-v2__size-option.is-active{
    border-color:#0f4d3f;
    background:#0f4d3f;
    color:#fff;
}

.product-v2__size-option.is-sold-out{
    border-style:dashed;
    background:#f6f4f2;
    color:#9b9692;
    cursor:not-allowed;
}

.product-v2__model-btn:disabled,
.product-v2__cta:disabled{
    opacity:.5;
    cursor:not-allowed;
}

@media (max-width:560px){
    .product-v2__size-options{
        grid-template-columns:repeat(3,minmax(70px,1fr));
    }
}

.foundation-page{
    max-width:1100px;
    margin:0 auto;
    padding:42px 22px 64px;
}

.foundation-page h1{
    color:#0f4d3f;
}

.foundation-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    gap:14px;
    margin:24px 0;
}

.foundation-card{
    padding:18px;
    border:1px solid #dfe6e4;
    border-radius:10px;
    background:#fff;
}

.foundation-card h2{
    margin:0 0 8px;
    color:#0f4d3f;
    font-size:19px;
}

.foundation-cta{
    display:inline-block;
    text-decoration:none;
}

/* RODAPÉ INSTITUCIONAL */

.site-footer{
    margin-top:48px;
    padding:40px 48px 24px;
    background:linear-gradient(90deg,#0b4a40 0%, #0f5d4c 55%, #0a3f37 100%);
    color:#e7f1ee;
}

.site-footer__grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
    gap:24px;
    max-width:1200px;
    margin:0 auto;
}

.site-footer__block h3{
    margin:0 0 8px;
    font-size:15px;
    color:#d4af37;
}

.site-footer__block p{
    margin:0;
    font-size:14px;
    line-height:1.5;
    color:#c9ddd7;
}

.site-footer__block a{
    color:#d4af37;
    text-decoration:none;
}

.site-footer__block a:hover{
    text-decoration:underline;
}

.site-footer__copy{
    max-width:1200px;
    margin:32px auto 0;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,0.15);
    font-size:12px;
    color:#9fb9b3;
    text-align:center;
}

@media (max-width:640px){
    .site-footer{
        padding:32px 20px 20px;
    }
}

/* HOME — PROPOSTA DE VALOR E DIFERENCIAIS */

.home-intro{
    max-width:900px;
    margin:0 auto;
    padding:48px 24px 16px;
    text-align:center;
}

.home-intro h1{
    font-size:28px;
    color:#0f4d3f;
    margin:0 0 12px;
}

.home-intro p{
    font-size:16px;
    color:#3d4a47;
    margin:0 0 24px;
    line-height:1.5;
}

.home-intro__ctas{
    display:flex;
    gap:16px;
    justify-content:center;
    flex-wrap:wrap;
}

.home-intro__cta{
    display:inline-block;
    padding:14px 28px;
    border-radius:6px;
    text-decoration:none;
    font-weight:bold;
    font-size:15px;
}

.home-intro__cta--primary{
    background:#0f5d4c;
    color:#fff;
}

.home-intro__cta--secondary{
    background:#d4af37;
    color:#0b3a30;
}

.home-highlights{
    max-width:1000px;
    margin:8px auto 40px;
    padding:0 24px;
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:20px;
}

.home-highlights__item{
    padding:20px;
    border-radius:10px;
    background:#fff;
    border:1px solid #e2e8e6;
    text-align:center;
}

.home-highlights__item h3{
    font-size:16px;
    color:#0f4d3f;
    margin:0 0 8px;
}

.home-highlights__item p{
    font-size:14px;
    color:#4a5754;
    margin:0;
    line-height:1.4;
}

/* COLEÇÃO — CATEGORIA VAZIA */

.collection-empty{
    padding:24px;
    border-radius:10px;
    background:#f5f5f5;
    border:1px dashed #cdd7d4;
    text-align:center;
    max-width:520px;
}

.collection-empty p{
    margin:0 0 12px;
    color:#3d4a47;
}

.collection-empty a{
    color:#0f5d4c;
    font-weight:bold;
    text-decoration:none;
}

.collection-empty a:hover{
    text-decoration:underline;
}

/* PRODUTO — FICHA TÉCNICA */

.product-v2__specs{
    margin:20px 0;
    padding:16px;
    border-radius:10px;
    background:#f8f8f6;
    border:1px solid #e2e8e6;
}

.product-v2__specs h3{
    margin:0 0 8px;
    font-size:15px;
    color:#0f4d3f;
}

.product-v2__specs p{
    margin:0 0 10px;
    font-size:14px;
    color:#3d4a47;
    line-height:1.5;
}

.product-v2__specs ul{
    margin:0;
    padding-left:18px;
    font-size:14px;
    color:#3d4a47;
    line-height:1.6;
}

.product-v2__flow-note{
    font-size:13px;
    color:#5a6663;
    margin:8px 0 0;
}

.admin-history-card{
    border:1px solid #e7ecea;
    border-radius:8px;
    padding:10px;
    margin-top:10px;
    background:#fafdfc;
}