/* ============================================
   INNER PAGE SHARED STYLES
   ============================================ */
.section{position:relative;padding:7rem 0;background:transparent}
.section--alt{background:var(--bg-secondary)}
.section--dark{background:var(--bg-dark);color:#E8E4DD}
.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4,.section--dark .label{color:#E8E4DD}
.section--dark .label{opacity:.65}

.hero{position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8rem 2rem 4rem}
.hero--compact{min-height:50vh;height:50vh}
.hero__bg{position:absolute;inset:0;z-index:0}
.hero__bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.72) saturate(.82)}
.hero__overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(45,42,38,.28) 0%,rgba(45,42,38,.18) 35%,rgba(45,42,38,.52) 100%)}
.hero__content{position:relative;z-index:2;max-width:760px;text-align:center;padding:0 2rem}
.hero__tagline{font-family:var(--f-display);font-size:.68rem;font-weight:300;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,252,250,.72);margin-bottom:1rem}
.hero__brand{font-family:var(--f-display);font-weight:200;font-size:clamp(2.4rem,6vw,4.8rem);letter-spacing:.14em;line-height:1.08;color:#FDFCFA;margin-bottom:1rem}
.hero__desc{font-family:var(--f-body);font-size:1rem;line-height:1.9;color:rgba(253,252,250,.72);max-width:560px;margin:0 auto}

.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-display);font-size:.74rem;font-weight:300;letter-spacing:.2em;text-transform:uppercase;padding:1rem 2.4rem;border:1px solid transparent;background:transparent;cursor:pointer;transition:all .35s ease}
.btn--primary{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}
.btn--primary:hover{background:var(--accent-warm);border-color:var(--accent-warm);color:var(--bg-dark);transform:translateY(-2px)}
.contact-form .btn{margin-top:.75rem}

.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}
.product-card{background:rgba(255,255,255,.5);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-sm);overflow:hidden;transition:all .5s ease}
.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(58,58,58,.06)}
.product-card-img{display:block;aspect-ratio:4/3;overflow:hidden;text-decoration:none}
.product-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.product-card:hover .product-card-img img{transform:scale(1.04)}
.product-card-body{padding:1.8rem}
.product-card-meta{font-family:var(--f-display);font-weight:300;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-warm);margin-bottom:.7rem}
.product-card-title{font-family:var(--f-display);font-weight:200;font-size:1.1rem;margin-bottom:.6rem;letter-spacing:.06em}
.product-card-desc{font-size:.9rem;line-height:1.8;color:var(--text-muted);margin-bottom:1rem}
.product-card-link{font-family:var(--f-display);font-weight:300;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-warm);display:inline-flex;align-items:center;gap:.4rem;transition:gap .3s}
.product-card-link:hover{gap:.7rem}
.product-card-link::after{content:'→'}

.products-section-header,.contact-section-header,.news-section-header{margin-bottom:2rem}
.product-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin:0 0 2rem}
.product-filter{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.1rem;border:1px solid var(--border-light);border-radius:999px;font-family:var(--f-display);font-size:.72rem;font-weight:300;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);transition:all .3s ease}
.product-filter:hover,.product-filter.is-active{border-color:var(--accent-warm);background:rgba(201,149,107,.08);color:var(--text-primary)}
.products-empty-state{padding:3rem 0;color:var(--text-muted)}
.news-pagination-wrap{text-align:center;margin-top:3rem}

/* ---------- News: section ---------- */
.nw{background:var(--bg-primary)}
.nw-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}
.nw-header__kicker{display:block;font-family:var(--f-display);font-size:.68rem;font-weight:300;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-warm);margin-bottom:.85rem}
.nw-header__title{font-family:var(--f-display);font-weight:200;font-size:clamp(2.2rem,5vw,3.6rem);letter-spacing:.1em;line-height:1.1;margin-bottom:1rem}
.nw-header__desc{font-size:1rem;line-height:1.9;color:var(--text-muted);max-width:28em;margin:0 auto 1.6rem}
.nw-header__rule{display:block;width:48px;height:1px;background:var(--accent-warm);margin:0 auto;opacity:.45}

/* ---------- News: featured card ---------- */
.nw-featured{display:grid;grid-template-columns:1.15fr .85fr;text-decoration:none;color:inherit;overflow:hidden;border-radius:12px;background:var(--bg-secondary);margin-bottom:3rem;transition:transform .45s ease,box-shadow .45s ease}
.nw-featured:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(58,58,58,.08)}
.nw-featured__img{position:relative;overflow:hidden;aspect-ratio:16/10}
.nw-featured__img img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.nw-featured:hover .nw-featured__img img{transform:scale(1.04)}
.nw-featured__body{display:flex;flex-direction:column;justify-content:center;padding:2.8rem 2.6rem;min-width:0}
.nw-featured__tag{display:inline-block;width:fit-content;font-family:var(--f-display);font-size:.62rem;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-warm);border:1px solid rgba(201,149,107,.3);border-radius:999px;padding:.3rem .85rem;margin-bottom:.9rem}
.nw-featured__date{display:block;font-family:var(--f-display);font-size:.72rem;font-weight:300;letter-spacing:.14em;color:var(--text-muted);margin-bottom:1.1rem}
.nw-featured__title{font-family:var(--f-display);font-weight:300;font-size:clamp(1.6rem,2.8vw,2.4rem);letter-spacing:.04em;line-height:1.22;margin-bottom:1rem;transition:color .3s ease}
.nw-featured:hover .nw-featured__title{color:var(--accent-warm)}
.nw-featured__excerpt{font-size:.95rem;line-height:1.9;color:var(--text-muted);margin-bottom:1.6rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- News: shared link style ---------- */
.nw-link{font-family:var(--f-display);font-weight:300;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-warm);display:inline-flex;align-items:center;gap:.35rem;transition:gap .3s ease,color .3s ease}
.nw-featured:hover .nw-link,.nw-card:hover .nw-link{gap:.65rem;color:var(--text-primary)}

/* ---------- News: card grid ---------- */
.nw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem}
.nw-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border-radius:10px;overflow:hidden;background:var(--bg-secondary);transition:transform .4s ease,box-shadow .4s ease}
.nw-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(58,58,58,.07)}
.nw-card__img{position:relative;overflow:hidden;aspect-ratio:16/10}
.nw-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.nw-card:hover .nw-card__img img{transform:scale(1.04)}
.nw-card__body{display:flex;flex-direction:column;flex:1;padding:1.6rem 1.5rem 1.4rem}
.nw-card__date{font-family:var(--f-display);font-size:.68rem;font-weight:300;letter-spacing:.14em;color:var(--text-muted);margin-bottom:.65rem}
.nw-card__title{font-family:var(--f-display);font-weight:300;font-size:1.08rem;letter-spacing:.03em;line-height:1.4;margin-bottom:.65rem;transition:color .3s ease}
.nw-card:hover .nw-card__title{color:var(--accent-warm)}
.nw-card__excerpt{font-size:.9rem;line-height:1.8;color:var(--text-muted);margin-bottom:auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding-bottom:1rem}

/* ---------- News: pagination ---------- */
.nw-pagination{text-align:center;margin-top:.5rem}
.nw-pagination .page-numbers{border-radius:999px}
.nw-pagination .page-numbers.current,.nw-pagination .page-numbers:hover{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}

/* ---------- News: empty state ---------- */
.nw-empty{text-align:center;max-width:520px;margin:0 auto;padding:3rem 0}
.nw-empty h3{font-family:var(--f-display);font-weight:200;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:.06em;margin-bottom:.8rem}
.nw-empty p{color:var(--text-muted);line-height:1.9}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.contact-info-item{margin-bottom:2rem}
.contact-info-label{font-family:var(--f-display);font-weight:300;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}
.contact-info-value{font-family:var(--f-display);font-weight:200;font-size:1.05rem;color:var(--text-primary);letter-spacing:.02em}
.contact-form input,.contact-form textarea{width:100%;font-family:var(--f-display);font-weight:300;font-size:.9rem;padding:1rem 0;border:none;border-bottom:1px solid var(--border-light);background:transparent;color:var(--text-primary);outline:none;transition:border-color .3s;margin-bottom:1.5rem;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-warm)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted);font-weight:300}
.contact-form textarea{min-height:120px}

.main-content{color:var(--text-primary)}
.entry-content{font-size:1rem;line-height:1.9;color:var(--text-primary)}
.entry-content p{color:var(--text-muted)}
.entry-content a{color:var(--accent-warm)}
.entry-content img{border-radius:var(--radius-sm)}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 .8rem;border:1px solid var(--border-light);margin:0 .25rem;color:var(--text-primary);font-family:var(--f-display);font-size:.78rem}
.page-numbers.current,.page-numbers:hover{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}

@media(max-width:1024px){
  .contact-grid{grid-template-columns:1fr}
  .nw-featured{grid-template-columns:1fr}
  .nw-featured__img{aspect-ratio:16/9}
  .nw-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:768px){
  .hero{min-height:56vh;padding:7rem 1.25rem 3rem}
  .hero__content{padding:0 1rem}
  .hero__brand{letter-spacing:.08em}
  .section{padding:5rem 0}
  .product-filters{gap:.5rem}
  .nw-header{margin-bottom:2.5rem}
  .nw-featured__body{padding:1.8rem 1.4rem 1.4rem}
  .nw-featured__title{font-size:clamp(1.3rem,5vw,1.8rem)}
  .nw-grid{grid-template-columns:1fr;gap:1.5rem}
}