:root{
  --dark:#1f1714;
  --black:#120d0b;
  --brown:#8f4a32;
  --brown2:#b86a45;
  --cream:#f7f1e8;
  --soft:#fffaf3;
  --white:#ffffff;
  --text:#4d433e;
  --muted:#7b6f68;
  --line:#e6d9cd;
  --primary:#8f4a32;
  --primary-dark:#6f3522;
  --primary-light:#b86a45;
  --light:#f7f1e8;
  --text-light:#7b6f68;
  --beige:#f7f1e8;
  --accent:#b86a45;
  --radius:14px;
  --radius-lg:24px;
  --shadow:0 12px 34px rgba(31,23,20,.08);
  --shadow-lg:0 22px 58px rgba(31,23,20,.14);
  --transition:all .25s ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;transition:var(--transition)}
img{max-width:100%;display:block;height:auto}button,input,select,textarea{font:inherit}ul{margin:0;padding:0}li{list-style:none}
h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;color:var(--dark);line-height:1.15;margin:0 0 14px}h1{font-size:clamp(38px,5vw,64px)}h2{font-size:clamp(30px,3.3vw,44px)}h3{font-size:23px}p{margin:0 0 1rem;color:var(--text)}
.container{width:min(1240px,88%);margin-inline:auto}.wide-container{width:min(1400px,92%);margin-inline:auto}.section{padding:92px 0}.section-sm{padding:64px 0}.section-white{background:var(--white)}.section-soft{background:var(--soft)}.section-dark{background:var(--dark);color:#fff}.section-dark h1,.section-dark h2,.section-dark h3,.section-dark p{color:#fff}.section-dark p{opacity:.86}.center{text-align:center;margin-left:auto;margin-right:auto}.section-head{max-width:820px;margin-bottom:38px}.section-head.center{margin-left:auto;margin-right:auto}.kicker{display:block;color:var(--brown);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.section-dark .kicker{color:#d9946c}.lead{font-size:18px;color:var(--muted);max-width:780px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 25px;border-radius:999px;font-weight:800;border:1px solid transparent;cursor:pointer;transition:var(--transition);text-decoration:none}.btn:hover{transform:translateY(-2px)}.btn-main,.btn-primary{background:var(--brown);color:#fff!important}.btn-main:hover,.btn-primary:hover{background:var(--primary-dark)}.btn-outline{border-color:var(--brown);color:var(--brown)!important;background:transparent}.btn-outline:hover{background:var(--brown);color:#fff!important}.btn-outline-light{border-color:rgba(255,255,255,.7);color:#fff!important;background:transparent}.btn-outline-light:hover,.btn-light:hover{background:#fff;color:var(--brown)!important}.btn-light{background:#fff;color:var(--brown)!important}.page-hero{position:relative;min-height:430px;padding:170px 0 86px;color:#fff;background:linear-gradient(90deg,rgba(31,23,20,.90),rgba(31,23,20,.62)),var(--page-hero-bg,none) center/cover no-repeat}.page-hero h1,.page-hero p{color:#fff}.page-hero p{max-width:780px;color:#efe8df}.breadcrumb{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:24px;font-size:14px;color:#e8ded5}.breadcrumb a{color:#fff}.breadcrumb a:hover{color:#d9946c}.mc-grid{display:grid;gap:24px}.mc-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mc-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.mc-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.mc-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.mc-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.mc-card p{color:var(--muted)}.mc-media-card{overflow:hidden;padding:0}.mc-media-card img{width:100%;height:230px;object-fit:cover}.mc-card-body{padding:24px}.mc-tag{display:inline-flex;border-radius:999px;background:var(--cream);color:var(--brown);padding:7px 12px;font-size:13px;font-weight:800;margin-bottom:12px}.mc-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.mc-filter-tabs{display:flex;gap:12px;flex-wrap:wrap}.mc-filter-tabs a,.mc-filter-tabs button{border:1px solid var(--line);background:#fff;color:var(--text);border-radius:999px;padding:10px 18px;font-weight:800}.mc-filter-tabs a.active,.mc-filter-tabs button.active,.mc-filter-tabs a:hover{background:var(--brown);color:#fff;border-color:var(--brown)}.mc-pagination,.pagination{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:42px}.mc-pagination .page-numbers,.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--text);font-weight:800;padding:0 14px}.mc-pagination .current,.pagination .current,.mc-pagination .page-numbers:hover,.pagination .page-numbers:hover{background:var(--brown);color:#fff;border-color:var(--brown)}.empty-state{text-align:center;background:#fff;border-radius:24px;padding:52px;box-shadow:var(--shadow)}.content-area{background:#fff;border-radius:28px;padding:42px;box-shadow:var(--shadow)}.content-area img{border-radius:18px}.content-area :where(h2,h3,h4){margin-top:28px}.mc-form-box{background:#fff;border-radius:24px;padding:34px;box-shadow:var(--shadow)}.mc-form-box input,.mc-form-box select,.mc-form-box textarea,.wpcf7 input,.wpcf7 select,.wpcf7 textarea{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text)}.wpcf7-submit{background:var(--brown)!important;color:#fff!important;border:none!important;border-radius:999px!important;padding:14px 28px!important;font-weight:800!important;cursor:pointer!important}.mc-split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.round-img{border-radius:24px;width:100%;height:520px;object-fit:cover}.check-list{display:grid;gap:14px;margin-top:24px}.check-list li{background:#fff;padding:15px 18px;border-radius:14px;border-left:4px solid var(--brown);box-shadow:0 8px 22px rgba(31,23,20,.05)}.dark-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:22px;padding:28px}.dark-card h3,.dark-card p{color:#fff}.dark-card p{opacity:.78}.back-to-top{display:none}
@media(max-width:1100px){.mc-grid-4,.mc-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-split{grid-template-columns:1fr}.round-img{height:380px}}
@media(max-width:768px){.section{padding:66px 0}.section-sm{padding:48px 0}.container{width:min(100% - 32px,1240px)}.page-hero{padding:138px 0 68px;min-height:360px}.mc-grid,.mc-grid-2,.mc-grid-3,.mc-grid-4,.mc-grid-5{grid-template-columns:1fr}.content-area{padding:26px}.mc-actions{flex-direction:column}.btn{width:100%}.round-img{height:300px}}

/* Mobile fix 2026-05-30 v2: Contact page content stacks media and text on mobile. */
.page-contact .quote-grid,
.page-contact .quote-grid > *,
.page-contact .mc-grid,
.page-contact .mc-card,
.page-contact .mc-form-box,
.page-contact .content-area,
.page-contact .content-area * {
  min-width: 0;
  max-width: 100%;
}

.page-contact .content-area {
  overflow: hidden;
}

.page-contact .content-area,
.page-contact .content-area p,
.page-contact .content-area div,
.page-contact .content-area span,
.page-contact .content-area a,
.page-contact .content-area li,
.page-contact .content-area td,
.page-contact .content-area th,
.page-contact .mc-card,
.page-contact .mc-card p,
.page-contact .mc-card a {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: none;
}

.page-contact .content-area img {
  max-width: 100%;
  height: auto;
  float: none !important;
  display: block;
  clear: both;
}

.page-contact .content-area table {
  width: 100%;
  max-width: 100%;
  table-layout: auto;
}

@media (max-width: 768px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .page-contact .contact-card,
  .page-contact .contact-info-card,
  .page-contact .contact-content-card,
  .page-contact .company-card,
  .page-contact .content-area,
  .page-contact .content-area .wp-block-media-text,
  .page-contact .content-area .wp-block-columns,
  .page-contact .content-area .is-layout-flex,
  .page-contact .content-area .is-layout-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 20px;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  .page-contact .contact-card > *,
  .page-contact .contact-info-card > *,
  .page-contact .contact-content-card > *,
  .page-contact .company-card > *,
  .page-contact .content-area > *,
  .page-contact .content-area .wp-block-column,
  .page-contact .content-area .wp-block-media-text__content,
  .page-contact .content-area .wp-block-media-text__media {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  .page-contact .contact-image,
  .page-contact .contact-photo,
  .page-contact .company-image,
  .page-contact .content-area figure,
  .page-contact .content-area .wp-block-image,
  .page-contact .content-area .wp-block-media-text__media {
    order: 1;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center;
  }

  .page-contact .contact-text,
  .page-contact .company-info,
  .page-contact .contact-details,
  .page-contact .content-area .wp-block-media-text__content,
  .page-contact .content-area > p,
  .page-contact .content-area > div,
  .page-contact .content-area > ul,
  .page-contact .content-area > ol,
  .page-contact .content-area > table {
    order: 2;
    width: 100% !important;
    max-width: 100% !important;
  }

  .page-contact .content-area > p:has(img),
  .page-contact .content-area > div:has(img) {
    order: 1;
  }

  .page-contact .content-area img,
  .page-contact .contact-image img,
  .page-contact .contact-photo img,
  .page-contact .company-image img,
  .page-contact .content-area .alignleft,
  .page-contact .content-area .alignright,
  .page-contact .content-area .aligncenter {
    display: block;
    width: 100%;
    max-width: 320px;
    height: auto;
    margin: 0 auto 18px;
    border-radius: 18px;
    float: none !important;
    clear: both;
  }

  .page-contact .content-area p,
  .page-contact .content-area div,
  .page-contact .content-area span,
  .page-contact .content-area a,
  .page-contact .content-area li,
  .page-contact .content-area td,
  .page-contact .content-area th,
  .page-contact .company-info,
  .page-contact .contact-details {
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: none;
    line-height: 1.65;
  }

  .page-contact .content-area {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .page-contact .content-area p {
    font-size: 15px;
  }

  .page-contact .content-area a[href^="mailto:"],
  .page-contact .content-area a[href^="tel:"] {
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: none;
  }

  .page-contact .content-area table,
  .page-contact .content-area tbody,
  .page-contact .content-area thead,
  .page-contact .content-area tfoot,
  .page-contact .content-area tr,
  .page-contact .content-area td,
  .page-contact .content-area th {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}

@media (max-width: 480px) {
  .page-contact .content-area img,
  .page-contact .contact-image img,
  .page-contact .contact-photo img,
  .page-contact .company-image img {
    max-width: 300px;
  }
}

.header{position:fixed;inset:0 0 auto 0;z-index:999;transition:var(--transition)}.top-bar{background:var(--black);color:#e8ded5;font-size:13px;padding:8px 0}.top-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.top-left,.top-right{display:flex;flex-wrap:wrap;gap:18px}.top-right a{color:#fff}.nav-wrap{background:rgba(31,23,20,.76);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.12);padding:16px 0;transition:var(--transition)}.header.scrolled .nav-wrap{background:#fff;box-shadow:0 8px 28px rgba(31,23,20,.09)}.nav-inner{display:flex;justify-content:space-between;align-items:center;gap:22px}.logo{display:flex;align-items:center;gap:12px;color:#fff}.logo img{max-height:48px;width:auto}.logo-text{font-family:Georgia,serif;font-size:28px;font-weight:800;line-height:1}.logo-text small{display:block;font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.78;margin-top:4px}.header.scrolled .logo{color:var(--dark)}.nav-menu ul{display:flex;align-items:center;gap:24px}.nav-menu a{color:#fff;font-size:15px;font-weight:800}.header.scrolled .nav-menu a{color:var(--dark)}.nav-menu a.active,.nav-menu a:hover{color:#d9946c}.header.scrolled .nav-menu a.active,.header.scrolled .nav-menu a:hover{color:var(--brown)}.nav-cta{background:var(--brown);color:#fff!important;padding:11px 20px;border-radius:999px;font-weight:800;white-space:nowrap}.nav-toggle{display:none;flex-direction:column;gap:5px;border:0;background:transparent;padding:10px;cursor:pointer}.nav-toggle span{display:block;width:25px;height:2px;background:#fff;transition:var(--transition)}.header.scrolled .nav-toggle span{background:var(--dark)}.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.quote-modal{position:fixed;inset:0;z-index:1200;align-items:center;justify-content:center;padding:24px}.quote-modal .modal-overlay{position:absolute;inset:0;background:rgba(18,13,11,.72);backdrop-filter:blur(4px)}.modal-container{position:relative;background:#fff;border-radius:26px;width:min(680px,100%);max-height:90vh;overflow:auto;box-shadow:0 24px 80px rgba(0,0,0,.28);transform:translateY(12px);opacity:0;transition:var(--transition)}.quote-modal.active .modal-container{opacity:1;transform:translateY(0)}.modal-header{padding:28px 32px;border-bottom:1px solid var(--line);position:relative}.modal-header h2{margin-bottom:6px}.modal-subtitle{color:var(--muted);margin:0}.modal-close{position:absolute;top:18px;right:22px;border:0;background:var(--cream);width:38px;height:38px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer;color:var(--dark)}.modal-body{padding:32px}.body-lock{overflow:hidden}
@media(max-width:980px){.top-bar{display:none}.nav-wrap{padding:13px 0}.nav-toggle{display:flex}.nav-menu{position:fixed;top:74px;right:-100%;width:min(84%,360px);height:calc(100vh - 74px);background:#fff;box-shadow:-12px 0 36px rgba(31,23,20,.14);transition:var(--transition);padding:34px;overflow:auto}.nav-menu.active{right:0}.nav-menu ul{align-items:flex-start;flex-direction:column;gap:18px}.nav-menu a{color:var(--dark)!important}.nav-cta{display:none}.logo-text{font-size:24px}.logo img{max-height:42px}}

/* v3: Request a Wholesale Quote modal — remove inner scrollbars and compact the CF7 form. */
.quote-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow: hidden;
  box-sizing: border-box;
}

.quote-modal.active {
  display: flex;
}

.modal-container {
  position: relative;
  width: min(860px, calc(100vw - 48px));
  max-width: 860px;
  max-height: none !important;
  overflow: visible !important;
  background: #fff;
  border-radius: 26px;
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
  box-sizing: border-box;
}

.modal-header {
  padding: 24px 32px 18px;
  border-bottom: 1px solid var(--line);
  position: relative;
}

.modal-header h2 {
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.05;
  margin: 0 48px 8px 0;
}

.modal-subtitle {
  margin: 0;
  font-size: 16px;
  line-height: 1.45;
}

.modal-body {
  padding: 24px 32px 28px;
  overflow: visible !important;
  box-sizing: border-box;
}

.quote-modal .wpcf7,
.quote-modal .wpcf7 form,
.quote-modal .wpcf7 p,
.quote-modal .wpcf7-form-control-wrap,
.modal-body form,
.modal-body .wpcf7-form {
  width: 100%;
  max-width: 100%;
  overflow: visible;
  box-sizing: border-box;
}

.quote-modal .wpcf7 p,
.modal-body p {
  margin: 0 0 16px;
}

.quote-modal .wpcf7 label,
.modal-body label {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
}

.quote-modal .wpcf7 input,
.quote-modal .wpcf7 textarea,
.quote-modal .wpcf7 select,
.modal-body input,
.modal-body textarea,
.modal-body select {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.quote-modal .wpcf7 textarea,
.modal-body textarea {
  min-height: 110px;
  height: 110px;
  resize: vertical;
}

.quote-modal .wpcf7-submit,
.modal-body .wpcf7-submit {
  width: auto !important;
  min-width: 180px;
}

@media (max-height: 820px) and (min-width: 769px) {
  .quote-modal {
    padding: 14px;
  }

  .modal-container {
    width: min(900px, calc(100vw - 40px));
  }

  .modal-header {
    padding: 20px 30px 14px;
  }

  .modal-header h2 {
    font-size: 42px;
  }

  .modal-body {
    padding: 18px 30px 22px;
  }

  .quote-modal .wpcf7 p,
  .modal-body p {
    margin-bottom: 12px;
  }

  .quote-modal .wpcf7 textarea,
  .modal-body textarea {
    min-height: 88px;
    height: 88px;
  }

  .quote-modal .wpcf7 input,
  .quote-modal .wpcf7 select,
  .modal-body input,
  .modal-body select {
    min-height: 44px;
  }
}

@media (max-width: 768px) {
  .quote-modal {
    align-items: flex-start;
    padding: 16px;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .modal-container {
    width: 100%;
    max-width: 100%;
    overflow: visible !important;
    border-radius: 22px;
  }

  .modal-header {
    padding: 22px 20px 16px;
  }

  .modal-header h2 {
    font-size: 34px;
    margin-right: 42px;
  }

  .modal-body {
    padding: 20px;
  }

  .quote-modal .wpcf7 textarea,
  .modal-body textarea {
    min-height: 100px;
    height: 100px;
  }
}

.footer{background:var(--black);color:#d9cec7;padding:74px 0 28px}.footer-content{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.25fr;gap:40px}.footer h3{color:#fff;font-size:22px;margin-bottom:18px}.footer p,.footer a,.footer li{color:#d9cec7}.footer a{display:inline-block;margin:6px 0}.footer a:hover{color:#fff;padding-left:4px}.footer-logo{display:block;color:#fff;font-family:Georgia,serif;font-size:30px;font-weight:800;margin-bottom:16px}.footer-desc{color:#d9cec7}.footer-contact{display:grid;gap:10px;margin-top:20px}.contact-item{display:flex;gap:10px;align-items:flex-start}.contact-item i{color:#d9946c;margin-top:4px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:44px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:14px;color:rgba(255,255,255,.58)}.footer-links{display:flex;gap:10px;flex-wrap:wrap}.footer-social{display:flex;gap:10px}.footer-social a,.floating-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.09);color:#fff}.footer-social a:hover,.floating-btn:hover{background:var(--brown);padding-left:0;transform:translateY(-2px)}.floating-buttons{position:fixed;right:22px;bottom:22px;z-index:900;display:flex;flex-direction:column;gap:10px}.floating-btn{width:50px;height:50px;box-shadow:var(--shadow)}.floating-btn.whatsapp{background:#25D366}.floating-btn.email{background:#8f4a32}.floating-btn.back-to-top{background:var(--dark)}
@media(max-width:1000px){.footer-content{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.footer{padding:54px 0 24px}.footer-content{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}.footer-links{justify-content:center}.floating-buttons{right:14px;bottom:14px}.floating-btn{width:44px;height:44px}}
.footer-support-text{margin-bottom:20px}.footer-quote-btn{background:var(--brown);color:#fff!important;padding:12px 20px;border-radius:999px;font-weight:800}.footer-quote-btn:hover{background:#b86a45;color:#fff!important;padding-left:20px;transform:translateY(-2px)}
.home-hero{min-height:900px;padding:190px 0 105px;display:flex;align-items:center;position:relative;color:#fff;background:linear-gradient(90deg,rgba(25,17,14,.94),rgba(25,17,14,.72),rgba(25,17,14,.24)),var(--home-hero-bg) center/cover no-repeat}.home-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,17,14,.94),rgba(25,17,14,.68),rgba(25,17,14,.26));z-index:1}.home-hero .container{position:relative;z-index:2}.home-hero h1,.home-hero p{color:#fff}.hero-desc{max-width:760px;font-size:18px;margin:24px 0}.hero-tags{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 34px}.hero-tags span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);padding:10px 16px;border-radius:999px;font-size:14px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.stats-wrap{padding:0;margin-top:-70px;position:relative;z-index:5}.mc-stats-grid{background:#fff;border-radius:24px;box-shadow:0 20px 60px rgba(31,23,20,.15);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.mc-stat-card{padding:34px 24px;text-align:center;border-right:1px solid var(--line)}.mc-stat-card:last-child{border-right:0}.mc-stat-card strong{display:block;font-size:38px;color:var(--brown);font-family:Georgia,serif}.mc-stat-card span{display:block;font-size:14px;color:var(--muted)}.problem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.problem-list{display:grid;gap:18px}.problem-item{background:#fff;padding:22px;border-radius:18px;border-left:5px solid var(--brown);box-shadow:0 10px 26px rgba(31,23,20,.06)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.category-card{position:relative;min-height:250px;border-radius:24px;overflow:hidden;background:#000;box-shadow:var(--shadow)}.category-card img{width:100%;height:250px;object-fit:cover;opacity:.72;transition:.35s}.category-card:hover img{transform:scale(1.06);opacity:.56}.category-info{position:absolute;left:22px;right:22px;bottom:20px;color:#fff}.category-info h3,.category-info p{color:#fff}.category-info p{font-size:14px;opacity:.9}.app-card span,.process-card b{display:inline-flex;width:42px;height:42px;border-radius:50%;background:var(--cream);color:var(--brown);align-items:center;justify-content:center;font-weight:900;margin-bottom:16px}.process-card b{background:var(--brown);color:#fff}.product-card,.case-card,.blog-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);border:1px solid rgba(230,217,205,.55)}.product-card:hover,.case-card:hover,.blog-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.product-card img,.case-card img,.blog-card img{width:100%;height:230px;object-fit:cover}.product-info,.case-info,.blog-content{padding:23px}.product-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.product-actions .btn{padding:11px 17px}.oem-box{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:25px}.oem-box div{background:#fff;padding:20px;border-radius:18px;font-weight:700;border:1px solid var(--line)}.material-card{border-top:5px solid var(--brown)}.pack-card h3{display:flex;align-items:center;gap:10px}.pack-card h3 span{color:var(--brown)}.mc-gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}.mc-gallery-grid img{height:260px;width:100%;object-fit:cover;border-radius:20px}.mc-gallery-grid img:first-child{grid-row:span 2;height:540px}.cert-logo-row{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:center;margin:42px 0}.cert-logo{min-height:74px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#f8f5ef;color:var(--brown);font-weight:900;border:1px solid var(--line);text-align:center;padding:12px}.cert-logo img{max-height:58px;width:auto;object-fit:contain}.cert-data-card strong{display:block;font-size:48px;color:var(--brown);font-family:Georgia,serif}.exhibition-wall{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:42px auto;max-width:1040px}.expo-photo{aspect-ratio:1/1;border-radius:20px;overflow:hidden;box-shadow:0 12px 28px rgba(31,23,20,.12);background:#fff}.expo-photo img{width:100%;height:100%;object-fit:cover}.download-box{background:linear-gradient(90deg,rgba(31,23,20,.92),rgba(143,74,50,.82)),var(--download-bg) center/cover no-repeat;border-radius:30px;padding:60px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.download-box h2,.download-box p{color:#fff}.mc-faq-list{background:#fff;border-radius:24px;padding:8px 28px;box-shadow:var(--shadow)}.mc-faq-item{border-bottom:1px solid var(--line)}.mc-faq-item:last-child{border-bottom:0}.mc-faq-question{width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;text-align:left;border:0;background:transparent;padding:22px 0;font-weight:900;color:var(--dark);cursor:pointer}.mc-faq-answer{max-height:0;overflow:hidden;transition:max-height .28s ease}.mc-faq-item.active .mc-faq-answer{max-height:360px;padding-bottom:20px}.quote-section{background:linear-gradient(rgba(31,23,20,.92),rgba(31,23,20,.92)),var(--quote-bg) center/cover no-repeat}.quote-section h2,.quote-section p{color:#fff}.quote-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}.single-product-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.product-gallery{display:grid;gap:14px}.main-product-image{border-radius:28px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.main-product-image img{width:100%;height:520px;object-fit:cover}.thumb-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.thumb-grid img{height:86px;width:100%;object-fit:cover;border-radius:12px;cursor:pointer;border:2px solid transparent}.thumb-grid img.active{border-color:var(--brown)}.trust-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0}.trust-list li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;font-weight:800;color:var(--dark)}.spec-table{width:100%;border-collapse:separate;border-spacing:0 10px}.spec-table th,.spec-table td{text-align:left;background:#fff;padding:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.spec-table th{color:var(--dark);width:220px;border-left:1px solid var(--line);border-radius:12px 0 0 12px}.spec-table td{border-right:1px solid var(--line);border-radius:0 12px 12px 0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px}.sidebar-card{background:#fff;border-radius:22px;padding:24px;box-shadow:var(--shadow);margin-bottom:22px}.post-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-bottom:20px}.case-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:28px 0}.case-overview .mc-card{padding:20px}.case-overview strong{display:block;color:var(--brown);font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
@media(max-width:1100px){.home-hero{min-height:760px}.category-grid{grid-template-columns:repeat(2,1fr)}.problem-grid,.quote-grid,.single-product-hero,.article-layout{grid-template-columns:1fr}.mc-gallery-grid{grid-template-columns:1fr 1fr}.mc-gallery-grid img:first-child{grid-row:auto;height:260px}.exhibition-wall{grid-template-columns:repeat(3,1fr)}.case-overview{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.home-hero{min-height:720px;padding:136px 0 86px}.hero-actions{flex-direction:column}.stats-wrap{margin-top:0;padding:0}.mc-stats-grid{border-radius:0;grid-template-columns:1fr}.mc-stat-card{border-right:0;border-bottom:1px solid var(--line)}.category-grid,.oem-box,.trust-list,.case-overview{grid-template-columns:1fr}.download-box{grid-template-columns:1fr;padding:36px 24px}.cert-logo-row{grid-template-columns:repeat(2,1fr)}.exhibition-wall{grid-template-columns:repeat(2,1fr)}.main-product-image img{height:340px}.thumb-grid{grid-template-columns:repeat(4,1fr)}.quote-grid{gap:26px}}
.home-quote .mc-form-box{background:#fff;border-radius:26px;padding:36px;box-shadow:0 18px 48px rgba(0,0,0,.16)}.home-quote .wpcf7{margin:0}.home-quote .wpcf7-form{display:grid;gap:16px}.home-quote .wpcf7-form p{margin:0}.home-quote .wpcf7 br{display:none}.home-quote .wpcf7-form-control:not(.wpcf7-submit){width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);padding:14px 15px}.home-quote textarea.wpcf7-form-control{min-height:130px}.home-quote .wpcf7-submit{background:var(--brown)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:14px 30px!important;font-weight:900!important;cursor:pointer!important}.home-quote .wpcf7-submit:hover{background:var(--brown2)!important}.home-quote .wpcf7-response-output{margin:14px 0 0!important;border-radius:12px;padding:12px 14px!important;color:var(--text)}@media(max-width:768px){.home-quote .mc-form-box{padding:24px}}
/* Final fix: factory page inquiry and legacy gallery compatibility */
.factory-gallery-section .factory-gallery-wrap,
.factory-gallery-section .factory-gallery-grid{
  margin-left:auto;
  margin-right:auto;
}
.factory-inquiry-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:46px;
  align-items:center;
}
.factory-inquiry-copy h2,
.factory-inquiry-copy p,
.factory-inquiry-copy li{
  color:#fff;
}
.factory-inquiry-form{
  background:#fff;
  border-radius:26px;
  padding:36px;
  box-shadow:0 18px 48px rgba(0,0,0,.16);
}
.factory-inquiry-form .wpcf7,
.factory-inquiry-form .wpcf7-form{
  margin:0;
}
.factory-inquiry-form .wpcf7-form{
  display:grid;
  gap:16px;
}
.factory-inquiry-form .wpcf7-form p{
  margin:0;
  color:var(--text);
}
.factory-inquiry-form .wpcf7 br{
  display:none;
}
.factory-inquiry-form .wpcf7-form-control:not(.wpcf7-submit){
  width:100%;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--text);
  padding:14px 15px;
}
.factory-inquiry-form textarea.wpcf7-form-control{
  min-height:130px;
}
.factory-inquiry-form .wpcf7-submit{
  background:var(--brown)!important;
  color:#fff!important;
  border:0!important;
  border-radius:999px!important;
  padding:14px 30px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.factory-inquiry-form .wpcf7-submit:hover{
  background:var(--brown2)!important;
}
@media(max-width:1100px){
  .factory-inquiry-grid{grid-template-columns:1fr;}
}
@media(max-width:768px){
  .factory-inquiry-form{padding:24px;}
}


/* Final display fixes: products, factory inquiry, gallery thumbnails and card action alignment */
.products-grid,
.product-list-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.product-card,
.case-card,
.blog-card,
.article-card,
.post-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.product-card-image,
.case-card-image,
.blog-card-image {
  display: block;
  width: 100%;
  overflow: hidden;
  background: var(--soft);
}
.product-card-image {
  aspect-ratio: 3 / 4;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-card-image img,
.product-card > a:first-child img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  background: var(--soft);
}
.case-card-image,
.blog-card-image {
  aspect-ratio: 4 / 3;
}
.case-card-image img,
.blog-card-image img,
.case-card > a:first-child img,
.blog-card > a:first-child img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-info,
.product-card-body,
.case-info,
.case-card-body,
.blog-content,
.blog-card-body,
.article-card-body,
.post-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.product-actions,
.product-card-actions,
.case-card-actions,
.blog-card-actions,
.article-card-actions,
.post-card-actions {
  margin-top: auto;
  padding-top: 18px;
}
.product-card .btn,
.blog-card .btn,
.case-card .btn {
  align-self: flex-start;
}
.factory-page-content-section:empty,
.factory-page-content-section .content-area:empty {
  display: none;
}
.factory-inquiry-section {
  padding-top: 82px;
  padding-bottom: 82px;
}
.factory-inquiry-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 46px;
  align-items: center;
}
.factory-inquiry-copy ul,
.factory-inquiry-copy .check-list {
  display: none !important;
}
.factory-inquiry-copy p {
  color: rgba(255,255,255,.88);
  max-width: 620px;
}
.factory-inquiry-form {
  background: #fff;
}
.thumb-grid {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
}
.thumb-grid img,
.product-gallery-thumb,
.gallery-thumb,
.product-thumbs img {
  width: 150px !important;
  height: 150px !important;
  object-fit: contain !important;
  background: var(--soft) !important;
  border-radius: 12px;
}
.product-gallery-thumb img,
.gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  background: var(--soft);
}
@media (max-width: 1200px) {
  .products-grid,
  .product-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  .products-grid,
  .product-list-grid,
  .factory-inquiry-grid {
    grid-template-columns: 1fr;
  }
  .thumb-grid img,
  .product-gallery-thumb,
  .gallery-thumb,
  .product-thumbs img {
    width: 110px !important;
    height: 110px !important;
  }
}


/* Final micro fixes: single product related products and factory CF7 labels */
.related-products-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px;
  align-items: stretch;
}
.related-products-grid .product-card,
.related-product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.related-products-grid .product-card-image,
.related-product-card-image {
  aspect-ratio: 3 / 4;
  background: var(--soft, #fffaf3);
  overflow: hidden;
}
.related-products-grid .product-card-image img,
.related-products-grid .product-card > a:first-child img,
.related-product-card-image img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  background: var(--soft, #fffaf3);
}
.related-products-grid .product-info,
.related-products-grid .product-card-body,
.related-product-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.related-products-grid .product-actions,
.related-products-grid .product-card-actions,
.related-product-card-actions {
  margin-top: auto;
  padding-top: 18px;
}
.factory-inquiry-form .wpcf7-form label {
  display: block;
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 0 16px;
  color: transparent !important;
}
.factory-inquiry-form .wpcf7-form label input,
.factory-inquiry-form .wpcf7-form label textarea,
.factory-inquiry-form .wpcf7-form label select,
.factory-inquiry-form .wpcf7-form label .wpcf7-form-control-wrap {
  display: block;
  font-size: 16px !important;
  line-height: 1.4 !important;
  color: var(--text, #4d433e) !important;
}
.factory-inquiry-form .wpcf7-form-control-wrap {
  display: block;
}
.factory-inquiry-form .wpcf7-form input,
.factory-inquiry-form .wpcf7-form textarea,
.factory-inquiry-form .wpcf7-form select {
  font-size: 16px !important;
  line-height: 1.4 !important;
}
.factory-inquiry-form .wpcf7-form textarea {
  min-height: 200px;
}
.factory-inquiry-form .wpcf7-not-valid-tip,
.factory-inquiry-form .wpcf7-response-output {
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--text, #4d433e) !important;
}
@media (max-width: 1024px) {
  .related-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  .related-products-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Final factory inquiry form parity with homepage Quote form */
.factory-inquiry-section.home-quote .factory-inquiry-form,
.factory-inquiry-form {
  background: #fff;
  border-radius: 26px;
  padding: 34px 42px;
  box-shadow: 0 18px 48px rgba(0,0,0,.16);
}
.factory-inquiry-form .wpcf7,
.factory-inquiry-form .wpcf7-form {
  margin: 0;
}
.factory-inquiry-form .wpcf7-form {
  display: grid;
  gap: 12px;
}
.factory-inquiry-form .wpcf7 br {
  display: none;
}
/* Hide CF7 label text in factory area only. Inputs remain visible because children are reset below. */
.factory-inquiry-form .wpcf7-form > p,
.factory-inquiry-form .wpcf7-form label {
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 0 12px !important;
}
.factory-inquiry-form .wpcf7-form .field-label,
.factory-inquiry-form .wpcf7-form .form-label,
.factory-inquiry-form .wpcf7-form .wpcf7-label {
  display: none !important;
}
.factory-inquiry-form .wpcf7-form-control-wrap,
.factory-inquiry-form .wpcf7-form label .wpcf7-form-control-wrap {
  display: block;
  font-size: 16px !important;
  line-height: 1.4 !important;
  color: var(--text, #4d433e) !important;
}
.factory-inquiry-form input:not([type="submit"]),
.factory-inquiry-form textarea,
.factory-inquiry-form select,
.factory-inquiry-form .wpcf7-form label input,
.factory-inquiry-form .wpcf7-form label textarea,
.factory-inquiry-form .wpcf7-form label select {
  width: 100% !important;
  min-height: 52px;
  padding: 12px 16px !important;
  border: 1px solid var(--line, #e6d9cd) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--text, #4d433e) !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
}
.factory-inquiry-form textarea,
.factory-inquiry-form textarea.wpcf7-form-control,
.factory-inquiry-form .wpcf7-form textarea {
  min-height: 150px !important;
  max-height: 190px;
  resize: vertical;
}
.factory-inquiry-form .wpcf7-submit {
  min-height: 52px;
  padding: 13px 28px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--brown, #8f4a32) !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}
.factory-inquiry-form .wpcf7-submit:hover {
  background: var(--brown2, #b86a45) !important;
}
.factory-inquiry-form .wpcf7-not-valid-tip,
.factory-inquiry-form .wpcf7-response-output {
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--text, #4d433e) !important;
}
@media (max-width: 768px) {
  .factory-inquiry-section.home-quote .factory-inquiry-form,
  .factory-inquiry-form {
    padding: 28px 22px;
  }
  .factory-inquiry-form textarea,
  .factory-inquiry-form textarea.wpcf7-form-control,
  .factory-inquiry-form .wpcf7-form textarea {
    min-height: 140px !important;
  }
}

/* Factory/project form final layout fix */
.factory-inquiry-section {
  padding-top: 82px;
  padding-bottom: 82px;
}
.factory-inquiry-section .factory-inquiry-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
  gap: 56px !important;
  align-items: center !important;
}
.factory-inquiry-copy {
  min-width: 0;
}
.factory-inquiry-copy h2,
.factory-inquiry-copy p {
  color: #fff;
}
.factory-inquiry-copy p {
  max-width: 620px;
  color: rgba(255,255,255,.88);
}
.factory-inquiry-copy ul,
.factory-inquiry-copy .check-list {
  display: none !important;
}
.factory-inquiry-form {
  width: 100%;
  min-width: 0;
  background: #fff;
  border-radius: 26px;
  padding: 34px 42px;
  box-shadow: 0 18px 48px rgba(0,0,0,.16);
}
.factory-project-form {
  width: 100%;
}
.factory-project-form .wpcf7,
.factory-project-form .wpcf7-form {
  margin: 0;
}
.factory-project-form .wpcf7 br {
  display: none;
}
.factory-project-form .factory-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}
.factory-project-form .factory-form-full {
  grid-column: 1 / -1;
}
.factory-project-form .factory-form-field,
.factory-project-form .factory-form-submit,
.factory-project-form .wpcf7-form p {
  margin: 0;
}
.factory-project-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}
.factory-project-form input,
.factory-project-form textarea,
.factory-project-form select {
  width: 100%;
  border: 1px solid #e6d9cd;
  background: #fff;
  border-radius: 14px;
  padding: 13px 18px;
  font-size: 16px;
  line-height: 1.35;
  color: #1f1714;
  box-sizing: border-box;
  outline: none;
}
.factory-project-form input,
.factory-project-form select {
  min-height: 52px;
}
.factory-project-form textarea {
  min-height: 145px;
  max-height: 180px;
  resize: vertical;
}
.factory-project-form input::placeholder,
.factory-project-form textarea::placeholder {
  color: #7b6f68;
  opacity: 1;
}
.factory-project-form input:focus,
.factory-project-form textarea:focus,
.factory-project-form select:focus {
  border-color: #8f4a32;
  box-shadow: 0 0 0 3px rgba(143, 74, 50, 0.12);
}
.factory-project-form input[type="submit"],
.factory-project-form .wpcf7-submit {
  width: 100%;
  min-height: 52px;
  border: 0 !important;
  border-radius: 999px !important;
  background: #8f4a32 !important;
  color: #fff !important;
  font-weight: 800 !important;
  cursor: pointer;
  transition: 0.25s ease;
  padding: 13px 26px !important;
}
.factory-project-form input[type="submit"]:hover,
.factory-project-form .wpcf7-submit:hover {
  background: #6f3522 !important;
  transform: translateY(-1px);
}
.factory-project-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.4;
}
.factory-project-form .wpcf7-response-output {
  margin: 14px 0 0 !important;
  padding: 10px 14px !important;
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.5;
  color: #1f1714;
}
@media (max-width: 900px) {
  .factory-inquiry-section .factory-inquiry-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
}
@media (max-width: 768px) {
  .factory-inquiry-form {
    padding: 28px 22px;
  }
  .factory-project-form .factory-form-grid {
    grid-template-columns: 1fr;
    gap: 13px;
  }
  .factory-project-form textarea {
    min-height: 135px;
  }
}

/* ============================================================
   Exhibition / 爱心图片墙 - 完整重构 (移动端深度适配)
   ============================================================ */

/* 爱心墙容器 - 居中定位，防止溢出 */
.exhibition-section .heart-container {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

/* 爱心形状网格 - 9列布局，桌面优雅间距 */
.heart-shape {
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    gap: 12px;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

/* 爱心单元格 - 1:1 比例，精致圆角与过渡 */
.heart-cell {
    aspect-ratio: 1 / 1;
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    background: #fff;
}

/* 图片样式 - 覆盖填充 + 柔和滤镜 + 平滑缩放 */
.heart-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease, filter 0.3s ease;
    display: block;
    filter: brightness(0.85) contrast(0.95) saturate(0.9);
}

/* 悬停效果 (仅限支持hover的设备) */
@media (hover: hover) {
    .heart-cell:hover {
        transform: translateY(-5px) scale(1.02);
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    }
    .heart-cell:hover img {
        filter: brightness(0.92) contrast(0.98) saturate(0.95);
        transform: scale(1.08);
    }
}

/* 移动端触摸反馈 (轻按微动) */
@media (hover: none) and (pointer: coarse) {
    .heart-cell:active {
        transform: scale(0.98);
        transition: transform 0.1s ease;
    }
    .heart-cell:active img {
        transform: scale(1.02);
    }
}

/* 空单元格 - 完全透明且不响应交互，保留占位维持心形结构 */
.heart-cell.empty {
    opacity: 0;
    pointer-events: none;
    box-shadow: none;
    background: transparent;
}

/* ========== 平板适配 (最大宽度 900px) ========== */
@media (max-width: 900px) {
    .heart-shape {
        gap: 8px;
        max-width: 720px;
    }
    .heart-cell {
        border-radius: 12px;
    }
    .heart-cell img {
        filter: brightness(0.88) contrast(0.96) saturate(0.92);
    }
}

/* ========== 手机横屏/小屏 (最大宽度 640px) ========== */
@media (max-width: 640px) {
    .exhibition-section .heart-container {
        padding: 0 6px;
    }
    .heart-shape {
        gap: 6px;
        max-width: 100%;
    }
    .heart-cell {
        border-radius: 10px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    }
    .heart-cell img {
        filter: brightness(0.9) contrast(0.97) saturate(0.94);
    }
}

/* ========== 紧凑手机 (最大宽度 480px) ========== */
@media (max-width: 480px) {
    .heart-shape {
        gap: 4px;
    }
    .heart-cell {
        border-radius: 8px;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
        box-shadow: 0 1px 5px rgba(0, 0, 0, 0.06);
    }
    .heart-cell img {
        filter: brightness(0.92) contrast(0.98) saturate(0.95);
    }
}

/* ========== 超小屏（折叠屏/老设备, 最大宽度 380px） ========== */
@media (max-width: 380px) {
    .heart-shape {
        gap: 3px;
    }
    .heart-cell {
        border-radius: 6px;
    }
}

/* 确保爱心墙父容器无横向滚动 */
.exhibition-section {
    overflow-x: hidden;
}

/* 修复主题可能存在的冲突：保证单元格宽高严格1:1 */
.heart-cell,
.heart-cell.empty {
    min-width: 0;
    min-height: 0;
}

/* 对低版本浏览器的降级方案（不支持 aspect-ratio） */
@supports not (aspect-ratio: 1 / 1) {
    .heart-cell {
        width: 100%;
        padding-bottom: 100%;
        height: 0;
        position: relative;
    }
    .heart-cell img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
@charset "utf-8";
/* ========= 文章排版样式 ========== */

.eb-template-summary,
.eb-template-paragraph,
.news-content .eb-template-content-block p {
  font-size: 1.1rem;
  line-height: 1.7;
  color: var(--text, #4d433e);
  margin-bottom: 1.5rem;
  text-align: left;
  letter-spacing: normal;
  word-spacing: normal;
}

/* v5: TOC stays inside the article body, aligned to the content start and styled as a lightweight inline guide. */
.eb-template-toc-box,
.single-post .eb-template-toc-box,
.single-post .article-body .eb-template-toc-box,
.single-post .content-area .eb-template-toc-box {
  width: 100%;
  max-width: 720px;
  margin: 28px 0 34px 0 !important;
  padding: 0 0 0 10px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left;
}

.eb-template-toc-header,
.single-post .eb-template-toc-header {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 14px;
  margin: 0 0 18px 0;
  padding: 0;
}

.eb-template-toc-title,
.single-post .eb-template-toc-title {
  font-size: 22px;
  font-weight: 800;
  color: var(--dark, #1f1714);
  margin: 0;
  line-height: 1.25;
}

.eb-template-toc-toggle,
.single-post .eb-template-toc-toggle {
  width: auto;
  height: auto;
  padding: 4px 6px;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  cursor: pointer;
  color: var(--brown, #8f4a32);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: color .2s ease;
}

.eb-template-toc-toggle:hover,
.single-post .eb-template-toc-toggle:hover {
  background: transparent !important;
  transform: none !important;
  color: var(--dark, #1f1714);
}

.eb-template-toc-toggle svg,
.single-post .eb-template-toc-toggle svg {
  transition: transform .25s ease;
}

.eb-template-toc-list,
.single-post .eb-template-toc-list {
  list-style: none !important;
  padding-left: 0;
  margin: 0;
  max-width: 680px;
  display: block;
  max-height: 800px;
  overflow: hidden;
  opacity: 1;
  transition: max-height .25s ease, margin .25s ease, opacity .25s ease;
}

.eb-template-toc-list.collapsed,
.single-post .eb-template-toc-list.collapsed {
  max-height: 0 !important;
  margin-top: 0 !important;
  opacity: 0;
  pointer-events: none;
}

.eb-template-toc-box.toc-collapsed .eb-template-toc-toggle svg,
.single-post .eb-template-toc-box.toc-collapsed .eb-template-toc-toggle svg {
  transform: rotate(180deg);
}

.eb-template-toc-list li,
.single-post .eb-template-toc-list li {
  list-style: none !important;
  margin: 0 0 12px;
  padding-left: 18px;
  position: relative;
}

.eb-template-toc-list li::before,
.single-post .eb-template-toc-list li::before {
  content: '›';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--brown, #8f4a32);
  font-weight: 700;
}

.eb-template-toc-list li a,
.single-post .eb-template-toc-list li a {
  color: var(--text, #4d433e);
  text-decoration: none;
  font-weight: 600;
  line-height: 1.55;
  display: inline;
  padding: 0;
  transition: color .2s ease;
}

.eb-template-toc-list li a:hover,
.single-post .eb-template-toc-list li a:hover {
  color: var(--brown, #8f4a32);
  text-decoration: none;
}

.eb-template-toc-list > li > ul,
.single-post .eb-template-toc-list > li > ul {
  margin-left: 18px;
  margin-top: 8px;
  padding-left: 0;
  font-size: .96em;
}

.eb-template-toc-list > li > ul li,
.single-post .eb-template-toc-list > li > ul li {
  margin-bottom: 8px;
}

.eb-template-toc-list > li > ul li::before,
.single-post .eb-template-toc-list > li > ul li::before {
  content: '·';
  font-weight: 700;
}

/* 文章内容块样式 */
.eb-template-content-block {
  background: rgba(160, 82, 45, 0.03);
  border-left: 3px solid var(--primary-light, rgba(143, 74, 50, .28));
  padding: 1rem 1.5rem;
  margin: 1.5rem 0;
  border-radius: 0 var(--radius, 18px) var(--radius, 18px) 0;
}

.eb-template-content-block p {
  padding-left: 0;
  margin: 0;
  color: var(--text, #4d433e);
}

@media (max-width: 768px) {
  .eb-template-summary,
  .eb-template-paragraph,
  .news-content .eb-template-content-block p {
    font-size: 1rem;
  }

  .eb-template-toc-box,
  .single-post .eb-template-toc-box,
  .single-post .article-body .eb-template-toc-box,
  .single-post .content-area .eb-template-toc-box {
    max-width: 100%;
    margin: 24px 0 28px 0 !important;
    padding-left: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  .eb-template-toc-title,
  .single-post .eb-template-toc-title {
    font-size: 20px;
  }

  .eb-template-toc-header,
  .single-post .eb-template-toc-header {
    gap: 12px;
    margin-bottom: 16px;
  }

  .eb-template-toc-list,
  .single-post .eb-template-toc-list {
    max-width: 100%;
    max-height: 800px;
  }

  .eb-template-toc-list.collapsed,
  .single-post .eb-template-toc-list.collapsed {
    max-height: 0 !important;
  }

  .eb-template-toc-list li,
  .single-post .eb-template-toc-list li {
    padding-left: 16px;
    margin-bottom: 10px;
  }
}

.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0;word-wrap:normal!important;word-break:normal!important}.wpcf7 .hidden-fields-container{display:none}.wpcf7 form .wpcf7-response-output{margin:2em .5em 1em;padding:.2em 1em;border:2px solid #00a0d2}.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}.wpcf7 form.sent .wpcf7-response-output{border-color:#46b450}.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{border-color:#dc3232}.wpcf7 form.spam .wpcf7-response-output{border-color:#f56e28}.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.payment-required .wpcf7-response-output{border-color:#ffb900}.wpcf7-form-control-wrap{position:relative}.wpcf7-not-valid-tip{color:#dc3232;font-size:1em;font-weight:400;display:block}.use-floating-validation-tip .wpcf7-not-valid-tip{position:relative;top:-2ex;left:1em;z-index:100;border:1px solid #dc3232;background:#fff;padding:.2em .8em;width:24em}.wpcf7-list-item{display:inline-block;margin:0 0 0 1em}.wpcf7-list-item-label::before,.wpcf7-list-item-label::after{content:" "}.wpcf7-spinner{visibility:hidden;display:inline-block;background-color:#23282d;opacity:.75;width:24px;height:24px;border:none;border-radius:100%;padding:0;margin:0 24px;position:relative}form.submitting .wpcf7-spinner{visibility:visible}.wpcf7-spinner::before{content:'';position:absolute;background-color:#fbfbfc;top:4px;left:4px;width:6px;height:6px;border:none;border-radius:100%;transform-origin:8px 8px;animation-name:spin;animation-duration:1e3ms;animation-timing-function:linear;animation-iteration-count:infinite}@media(prefers-reduced-motion:reduce){.wpcf7-spinner::before{animation-name:blink;animation-duration:2e3ms}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes blink{from{opacity:0}50%{opacity:1}to{opacity:0}}.wpcf7 [inert]{opacity:.5}.wpcf7 input[type=file]{cursor:pointer}.wpcf7 input[type=file]:disabled{cursor:default}.wpcf7 .wpcf7-submit:disabled{cursor:not-allowed}.wpcf7 input[type=url],.wpcf7 input[type=email],.wpcf7 input[type=tel]{direction:ltr}.wpcf7-reflection>output{display:list-item;list-style:none}.wpcf7-reflection>output[hidden]{display:none}
.popup-template .modal{opacity:0;transition:all .25s ease}.popup-template .modal.is-open{opacity:1;transition:all .25s ease}
.menu-item-object-language_switcher .trp-flag-image{display:inline-block;margin:-1px 5px;vertical-align:baseline;padding:0;border:0;border-radius:0}#wp-admin-bar-wp-rocket .trp-flag-image{width:18px!important;height:12px!important}.trp-language-switcher{height:42px;position:relative;box-sizing:border-box;width:200px;text-overflow:ellipsis;white-space:nowrap}.trp-language-switcher>div{box-sizing:border-box;padding:4px 20px 3px 13px;border:1.5px solid #949494;border-radius:2px;background-image:url(https://de.chillseattrade.com/wp-content/plugins/translatepress-multilingual/assets/css/../../assets/images/arrow-down-3101.svg);background-repeat:no-repeat;background-position:calc(100% - 20px)calc(1em + 2px),calc(100% - 3px)calc(1em + 0px);background-size:8px 8px,8px 8px;background-repeat:no-repeat;background-color:#fff}.trp-language-switcher>div:hover{background-image:none}.trp-language-switcher>div>a{display:block;padding:7px 12px;border-radius:3px;text-decoration:none;color:#1e1e1e;font-style:normal;font-weight:400;font-size:16px}.trp-language-switcher>div>a:hover{background:#f0f0f0;border-radius:2px}.trp-language-switcher>div>a.trp-ls-shortcode-disabled-language{cursor:default}.trp-language-switcher>div>a.trp-ls-shortcode-disabled-language:hover{background:0 0}.trp-language-switcher>div>a>img{display:inline;margin:0 3px;width:18px;height:12px;border-radius:0}.trp-language-switcher .trp-ls-shortcode-current-language{display:inline-block}.trp-language-switcher:focus .trp-ls-shortcode-current-language,.trp-language-switcher:hover .trp-ls-shortcode-current-language{visibility:hidden}.trp-language-switcher .trp-ls-shortcode-language{display:inline-block;height:1px;overflow:hidden;visibility:hidden;z-index:1;max-height:250px;overflow-y:auto;left:0;top:0;min-height:auto}.trp-language-switcher:focus .trp-ls-shortcode-language,.trp-language-switcher:hover .trp-ls-shortcode-language{visibility:visible;max-height:250px;padding:4px 13px;height:auto;overflow-y:auto;position:absolute;left:0;top:0;display:inline-block!important;min-height:auto}#wpadminbar #wp-admin-bar-trp_edit_translation .ab-icon:before{content:'\f326';top:3px}@media screen and (max-width:782px){#wpadminbar #wp-admin-bar-trp_edit_translation>.ab-item{text-indent:0}#wpadminbar li#wp-admin-bar-trp_edit_translation{display:block}}