/* ===================================
   VARIABLES
=================================== */

:root{
    --primary:#07284a;
    --secondary:#d9a441;
    --bg:#f7f3eb;
    --text:#1c2a39;
    --border:#e5e0d7;

    --radius:12px;
    --shadow:0 10px 30px rgba(0,0,0,.08);

    --container:1280px;
}

/* ===================================
   GLOBAL
=================================== */
ul {
padding-left: 0;
}
.home-page {
    background:var(--bg);
}

.home-page section{
    padding: 70px 0 90px;
}

.container{
    width:min(100% - 40px,var(--container));
    margin:0 auto;
}

.section-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:40px;
}

.section-header h2{
    margin:0;
	font-size:clamp(30px, 4vw, 42px);
    line-height:1.1;
}

.section-header a{
    color:var(--primary);
    font-weight:600;
    text-decoration: underline;
}

/* ===================================
   HERO
=================================== */

.hero{
    position:relative;
    min-height:720px;
    display:flex;
    align-items:center;
    background-size:cover;
    background-position:center;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0, 0, 0, 0.665);
}

.hero .container{
    position:relative;
    z-index:2;
}

.hero-content{
    max-width:760px;
    color:#fff;
    text-align: center;
    margin:  0 auto;
}

.hero-badge{
    display:inline-flex;
    padding:8px 16px;
    border-radius:50px;
    margin-bottom:25px;
    border: 1px solid var(--secondary);
    color: var(--secondary);
}
.hero-badge svg {
    margin-right: 5px;
}
.hero h1 {
    font-size:64px;
    line-height:1.05;
    margin-bottom:25px;
    color: #fff;
}
.italic {
    font-style: italic;
}
.text-gold {
    color: var(--secondary);
}
.hero p{
    font-size:24px;
    max-width:650px;
    text-align: center;
    margin: 0 auto;
}

.hero-buttons {
    display: flex;
    justify-content: center;
    gap: 18px;
    margin-top: 50px;
    
}
.hero-btn {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 16px 44px;
    border-radius: 8px;
    background-color: #1c2a39;
    color: #fff;
    font-size: 18px; 
    font-weight: 600; 
	min-width: 218px;
    text-align: center;
}
.hero-btn img {
	margin-right: 10px;
}
.hero-btn:hover {
    color: #fff;
}
.hero-btn-ukr {
    position: relative;
    background: linear-gradient(131deg, #844c1d 0%, #eba84e 50.48%, #5a2f0c 100%);
}
.hero-btn-ukr::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: inherit;
    background: linear-gradient(90deg, #B9844A, #F7E0A4, #CDA676);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
.hero-btn-ukr::after {
    content: "";
    position: absolute;
    bottom: -29px;
    left: calc(50% - 25px);
    width: 50px;
    height: 30px;
    background: url('./assets/img/main-btn-dot.svg') no-repeat;
    z-index: 1;
}
.hero-btn-ukr:hover {
    box-shadow: 0 0 10px 1px rgba(208, 144, 65, 0.4);
}

.hero-btn-worlg {
    position: relative;
    background: linear-gradient(131deg, #0e1b39 0%, #192f51 50.48%, #10203d 100%);

}
.hero-btn-worlg::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: inherit;
    background: linear-gradient(90deg, #334460, #DDF4FF, #414A66);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
.hero-btn-worlg:hover {
    box-shadow: 0 0 10px 1px rgba(53, 104, 184, 0.4);
}

.hero-btn-rare {
    position: relative;
    backdrop-filter: blur(2px);
    background: rgba(83, 83, 83, 0.2);
}
.hero-btn-rare::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: inherit;
    background: linear-gradient(90deg, #958786, #8D8D99, #958786);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
.hero-btn-rare:hover {
    box-shadow: 0 0 10px 1px rgba(180, 178, 178, 0.4);
}


.stats-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
    text-align:center;
    max-width: 500px;
    margin: 0 auto;
}
.stats-item  {
    margin-top: 40px;
    background: #38383873;
    border-radius: 12px;
    padding: 10px;
}
.stats-item strong{
    display:block;
    font-size:36px;
    color:var(--secondary);
    line-height: 1.2;
}
.stats-item span {
    text-transform: uppercase;
    font-size: 12px;
    color:#e2e2e2;
}
/* ===================================
    QUICK SEARCH 
=================================== */
.quick-search-wrapper {
  padding: 60px 0;
}
.quick-search-wrapper .quick-search {
  background: var(--primary);
  border-radius: 16px;
  padding: 40px 10% 60px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}
.quick-search-wrapper .quick-search::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -16px;
  width: 64px;
  height: 64px;
  background: url("../../assets/img/left-traced.svg") no-repeat;
}
.quick-search-wrapper .quick-search::before {
  position: absolute;
  content: "";
  top: 0;
  right: -9px;
  width: 64px;
  height: 64px;
  background: url("../../assets/img/right-traced.svg") no-repeat;
}
.quick-search-wrapper .qs-header {
  text-align: center;

}
.quick-search-wrapper .qs-header h3 {
  display: inline-block;
  font-weight: 500;
  font-size: clamp(20px, 4vw, 30px);
  text-align: center;
  position: relative;
  color: #fff;
  margin-bottom: 10px;
}
.quick-search-wrapper .qs-header p {
  display: inline-block;
  font-weight: 400;
  font-size: clamp(14px, 4vw, 18px);
  text-align: center;
  position: relative;
  color: #fff;
  margin-bottom: 5px;
}
.quick-search-wrapper .qs-header h3::after {
  content: "";
  position: absolute;
  left: 0;
  top: 20px;
  width: 100%;
  height: 100%;
  background: url("../../assets/img/qs-line.svg") center / cover no-repeat;
  z-index: 1;
}

.philately-search-box input#philately-search-input {
    border: 2px solid #DED4CB;
    background: #fefaf2;
    padding: 28px 22px;
    border-radius: 8px;
    border: none !important;
    margin-top: 10px;
}
input#philately-search-input:focus {
    background-color: var(--bg) !important;
}

.quick-search-wrapper .qs-footer {
    display: flex;
    margin-top: 15px;
}
.qs-advanced {
    color:rgb(243 221 178);
    margin: 0 auto;
}
.qs-advanced img {
    width: 12px;
    height: 12px;
}

/* ===================================
   CATEGORIES
=================================== */

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

.category-card{
    background:#fff;
    border:1px solid var(--border);
    padding:30px;
    border-radius:var(--radius);
    transition:.3s;
}

.category-card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow);
}

.category-card h3{
    margin:0 0 12px;
}

/* ===================================
   YEARS
=================================== */
.home-years{
    background:var(--primary);
}
.home-years h2{
    color:#fff;
}
.years-list{
	display: flex;
	flex-wrap: nowrap;
	gap: 5px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}
.years-list {
    mask-image: linear-gradient(to right, black 90%, transparent);
}
.years-list a{
    padding:12px 18px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:8px;
    color:#fff;
}
.years-list a:hover{
    background:var(--secondary);
}

/* ===================================
   COUNTRIES
=================================== */

.country-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:18px;
}

.country-card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:10px;
    padding:18px;
    text-align:center;
    transition:.3s;
}

.country-card:hover{
    transform:translateY(-3px);
}

/* ===================================
   PRODUCTS
=================================== */

.products-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

/* використовує твою content-product.php */
.products-grid .product-card{
    height:100%;
}

/* ===================================
   AUCTIONS
=================================== */

.auction-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.auction-card{
    background:#fff;
    border-radius:var(--radius);
    overflow:hidden;
    display:flex;
    gap:20px;
    padding:20px;
    box-shadow:var(--shadow);
}

.auction-card img{
    width:140px;
    height:140px;
    object-fit:contain;
}
.auction-card-text {

}
.auction-card-text h3 {
	font-size: 24px;
	margin-bottom: 10px;
}
.auction-price{
	margin-bottom: 10px;
    font-size:22px;
    font-weight:600;
    color:var(--primary);
}
.auction-card-text .auction-button {
	display: inline-block;
	border: 1px solid var(--theme-link-initial-color);
	padding: 12px 24px;
	border-radius: 8px;
}
.auction-card-text .auction-button:hover {
	background: var(--theme-link-initial-color);
	color: #fff;
}


/* ===================================
   FEATURES
=================================== */

.features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:40px;
}

.feature-item{
    text-align:center;
}

.feature-icon{
    width:70px;
    height:70px;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 20px;
}

/* ===================================
   COLLECTIONS
=================================== */

.collections-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.collection-card{
    position:relative;
    min-height:360px;
    border-radius:14px;
    overflow:hidden;
    color:#fff;
}

.collection-card img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.collection-overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:28px;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.75),
        rgba(0,0,0,.1)
    );
}

.collection-overlay h3{
    color:#fff;
    margin:8px 0 0;
}

/* ===================================
   WANT LIST
=================================== */

.want-list{
    background:var(--primary);
    color:#fff;
}

.want-list-grid{
    display:grid;
    grid-template-columns: 50% 1fr;
    gap:60px;
    align-items:center;
}
.label-want-list {
    font-size: 12px;
    text-transform: uppercase;
    color: var(--secondary);
}
.text-balance {
    font-size: 42px;
    line-height: 1.2;
    color: #fff;
}
.want-list-italic {
    font-style: italic;
    color: var(--secondary);
}
.want-list-grid p {
    font-size: 18px;
}
.want-list-link {
    color: var(--secondary);
    font-size: 18px;
    display: inline-flex;
    align-items: center;
}
.want-list-link:hover {
    text-decoration: underline;
}
.want-list-link svg {
    margin-left: 5px;
}


.want-list form{
    background:#fff;
    color:#000;
    padding:35px;
    border-radius:var(--radius);
}
.input-row p {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.want-list input,
.want-list select,
.want-list textarea{
    width:100%;
    font-weight: 300;
}
.want-list textarea{
    height: 6rem;
}
.want-list button{
    width:100%;
}



/* ===================================
   MOBILE
=================================== */

@media(max-width:1024px){

    .categories-grid,
    .products-grid,
    .collections-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .country-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .want-list-grid{
        grid-template-columns:1fr;
    }

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

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

    .hero h1{
        font-size:52px;
    }
}

@media(max-width:768px){

    .home-page section{
        padding:60px 0;
    }

    .hero{
        min-height:620px;
    }

    .hero h1{
        font-size: 36px;
    }
	.hero p {
		font-size: 16px;
		line-height: 1.1;
	}
	.hero-buttons {
		display: flex;
		justify-content: center;
		margin-top: 30px;
		align-items: center;
		flex-direction: column;
	}
	.hero-btn {
		width: 300px;
	}
    .country-grid {
        grid-template-columns:1fr 1fr;
        gap: 10px;
    }
    .categories-grid,
    .collections-grid {
        grid-template-columns:1fr;
    }
    .home-latest .products-grid {
        grid-template-columns:1fr 1fr;
        gap: 10px;
    }
	.stats-grid {
		gap: 5px;
	}
	.stats-item span {
		font-size: 10px;
	}
    .section-header{
        flex-direction:column;
        gap:15px;
        align-items:flex-start;
    }

    .section-header h2{
        font-size:32px;
    }
    .quick-search-wrapper {
        margin: 0 5px;
        padding: 40px 0;
    }
    .quick-search-wrapper .quick-search {
        border-radius: 10px;
        padding: 30px 6% 45px;
    }
    .phl-search-block {
        margin-top: 5px;
    }
}

@media(max-width:414px){ 
    .stats-item {
        padding: 12px 5px;
    }
    .stats-item span {
        font-size: 8px;
    }
    
}

