/* ==========================================================================
   Alukas Theme — Core
   ========================================================================== */

:root{
    --pls-font: 'Jost', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --pls-color-text: #777777;
    --pls-color-heading: #222222;
    --pls-color-dark: #222222;
    --pls-color-border: #e5e5e5;
    --pls-color-light: #f5f5f5;
    --pls-color-primary: #222222;
    --pls-color-accent: #c8a97e;
    --pls-color-sale: #ff4136;
    --pls-color-pink: #fbeef2;
    --pls-container: 1396px;
    --pls-radius: 0px;
}

*,*::before,*::after{box-sizing:border-box;}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}

body{
    margin:0;
    font-family:var(--pls-font);
    font-size:16px;
    line-height:28px;
    font-weight:400;
    color:var(--pls-color-text);
    background:#fff;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    overflow-x:hidden;
}

h1,h2,h3,h4,h5,h6{
    font-family:var(--pls-font);
    color:var(--pls-color-heading);
    font-weight:400;
    margin:0 0 15px;
    line-height:1.3;
}
h1{font-size:48px;}
h2{font-size:38px;}
h3{font-size:30px;}
h4{font-size:24px;}
h5{font-size:20px;}
h6{font-size:18px;}

p{margin:0 0 15px;}
a{color:var(--pls-color-heading);text-decoration:none;transition:color .3s ease,opacity .3s ease,background-color .3s ease,border-color .3s ease;}
a:hover{color:#000;}
img{max-width:100%;height:auto;vertical-align:middle;border:0;}
ul,ol{margin:0 0 15px;padding-left:20px;}
figure{margin:0;}
button{font-family:inherit;}

/* ---------- Grid ---------- */
.container{width:100%;max-width:var(--pls-container);margin:0 auto;padding:0 15px;}
.container-fluid{width:100%;padding:0 15px;}
.row{display:flex;flex-wrap:wrap;margin:0 -15px;}
[class*="col-"]{padding:0 15px;width:100%;}
.col-1{flex:0 0 8.3333%;max-width:8.3333%;}
.col-2{flex:0 0 16.6666%;max-width:16.6666%;}
.col-3{flex:0 0 25%;max-width:25%;}
.col-4{flex:0 0 33.3333%;max-width:33.3333%;}
.col-5{flex:0 0 41.6666%;max-width:41.6666%;}
.col-6{flex:0 0 50%;max-width:50%;}
.col-7{flex:0 0 58.3333%;max-width:58.3333%;}
.col-8{flex:0 0 66.6666%;max-width:66.6666%;}
.col-9{flex:0 0 75%;max-width:75%;}
.col-10{flex:0 0 83.3333%;max-width:83.3333%;}
.col-12{flex:0 0 100%;max-width:100%;}

.d-none{display:none!important;}
.d-flex{display:flex!important;}
.align-items-center{align-items:center!important;}
.justify-content-between{justify-content:space-between!important;}
.justify-content-center{justify-content:center!important;}
.text-center{text-align:center!important;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}

/* ---------- Buttons ---------- */
.pls-btn{
    display:inline-flex;align-items:center;justify-content:center;
    height:50px;padding:0 34px;
    background:var(--pls-color-dark);color:#fff;
    font-size:15px;font-weight:500;letter-spacing:.02em;
    border:1px solid var(--pls-color-dark);
    cursor:pointer;text-align:center;
    transition:all .3s ease;
}
.pls-btn:hover{background:#fff;color:var(--pls-color-dark);}
.pls-btn-outline{background:transparent;color:var(--pls-color-dark);}
.pls-btn-outline:hover{background:var(--pls-color-dark);color:#fff;}
.pls-btn-sm{height:42px;padding:0 24px;font-size:14px;}

/* 下划线式链接（SHOP NOW / SEE MORE） */
.pls-link-underline{
    display:inline-block;position:relative;
    font-size:15px;font-weight:500;letter-spacing:.04em;
    padding-bottom:3px;color:inherit;
}
.pls-link-underline::after{
    content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;
    background:currentColor;transform-origin:right center;transform:scaleX(1);
    transition:transform .35s ease;
}
.pls-link-underline:hover::after{transform-origin:left center;transform:scaleX(0);}

/* ---------- 表单 ---------- */
input[type=text],input[type=email],input[type=search],input[type=password],input[type=tel],input[type=number],textarea,select{
    width:100%;height:50px;padding:0 20px;
    border:1px solid var(--pls-color-border);background:#fff;
    font-family:inherit;font-size:15px;color:var(--pls-color-heading);
    outline:none;transition:border-color .3s ease;
}
textarea{height:auto;padding:15px 20px;}
input::placeholder,textarea::placeholder{color:#999;opacity:1;}
input:focus,textarea:focus,select:focus{border-color:var(--pls-color-dark);}

/* ---------- 区块标题 ---------- */
.pls-heading{text-align:center;margin-bottom:35px;}
.pls-heading .pls-heading-title{
    font-size:38px;line-height:1.2;color:var(--pls-color-heading);
    margin:0;font-weight:400;
}
.pls-heading .pls-heading-desc{
    font-size:16px;color:var(--pls-color-text);margin:12px 0 0;
}
/* 带左右横线的标题 */
.pls-heading.has-line .pls-heading-title{
    display:flex;align-items:center;justify-content:center;gap:30px;
}
.pls-heading.has-line .pls-heading-title::before,
.pls-heading.has-line .pls-heading-title::after{
    content:"";height:1px;background:var(--pls-color-border);flex:0 0 100px;
}

/* ---------- 通用区块间距 ---------- */
.pls-section{padding:50px 0;}
.pls-section-sm{padding:30px 0;}

/* ---------- 内页 ---------- */
.pls-page-header{padding:45px 0 35px;text-align:center;}
.pls-page-header h1{font-size:38px;margin:0;}

.pls-blog-list{margin-bottom:30px;}
.pls-blog-list > [class*="col-"]{margin-bottom:40px;}

.pls-single-page,.pls-single-post{padding:45px 0 70px;}
.pls-single-page .entry-title,.pls-single-post .entry-title{font-size:38px;margin-bottom:24px;}
.pls-single-post .pls-post-header{padding-bottom:25px;}
.pls-single-post .pls-post-featured{margin-bottom:32px;}
.entry-content img{height:auto;}

.pagination,.navigation.pagination{margin:10px 0 60px;}
.navigation.pagination .nav-links{display:flex;justify-content:center;gap:8px;}
.navigation.pagination .page-numbers{
    width:42px;height:42px;display:flex;align-items:center;justify-content:center;
    border:1px solid var(--pls-color-border);font-size:15px;color:#222;
}
.navigation.pagination .page-numbers.current{background:#222;color:#fff;border-color:#222;}

/* ---------- 移动菜单细节 ---------- */
.pls-mobile-menu-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.pls-mobile-close{background:none;border:0;padding:0;cursor:pointer;color:#222;display:flex;}
.pls-mobile-close svg{width:22px;height:22px;}
.pls-mobile-search{margin-bottom:18px;}
.pls-mobile-search input{height:44px;}
.pls-mobile-extra{display:flex;gap:20px;margin-top:22px;font-size:15px;}
