html,body{overflow-x:hidden; max-width:100%;} *{min-width:0;}
/* =========================================================
   Reclaim — main stylesheet
   Visual language: Apple (light surfaces, pill buttons, large
   confident type, glass nav) + Microsoft Fluent (acrylic blur,
   soft elevation, rounded 8/14/20 corner scale, Segoe stack).
   ========================================================= */

:root{
  --bg:#FFFFFF;
  --bg-soft:#F5F5F7;
  --surface:#FFFFFF;
  --text:#1D1D1F;
  --text-secondary:#6E6E73;
  --accent:#0071E3;
  --accent-hover:#0077ED;
  --accent-dark:#0058B0;
  --accent-2:#2564CF;
  --divider:#D2D2D7;
  --divider-soft:#E8E8ED;
  --ink:#1D1D1F;
  --green:#2FA968;
  --amber:#D98E2D;
  --steel:#2564CF;

  --radius-lg:20px;
  --radius-md:14px;
  --radius-sm:10px;
  --radius-pill:980px;

  --shadow-sm:0 2px 8px rgba(0,0,0,0.06);
  --shadow-md:0 8px 30px rgba(0,0,0,0.08);
  --shadow-lg:0 20px 60px rgba(0,0,0,0.12);

  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Segoe UI Variable", Roboto, Helvetica, Arial, sans-serif;
  --font-mono: "Cascadia Code", "SF Mono", ui-monospace, "JetBrains Mono", monospace;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  font-size:16px;
  line-height:1.5;
}
h1,h2,h3,h4{margin:0; font-weight:600; letter-spacing:-0.015em;}
p{margin:0;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
button{font-family:var(--font);}
::selection{background:var(--accent); color:#fff;}

.mono{font-family:var(--font-mono);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:13px 26px; border-radius:var(--radius-pill); font-size:15px; font-weight:500;
  cursor:pointer; border:none; transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  white-space:nowrap;
}
.btn-primary{background:var(--accent); color:#fff;}
.btn-primary:hover{background:var(--accent-hover); box-shadow:0 8px 20px rgba(0,113,227,0.32);}
.btn-dark{background:var(--ink); color:#fff;}
.btn-dark:hover{background:#000; box-shadow:0 8px 20px rgba(0,0,0,0.25);}
.btn-outline{background:transparent; border:1px solid var(--divider); color:var(--text);}
.btn-outline:hover{border-color:var(--text); background:var(--bg-soft);}
.btn-outline-light{background:transparent; border:1px solid rgba(255,255,255,0.6); color:#fff;}
.btn-outline-light:hover{background:rgba(255,255,255,0.14);}
.btn-sm{padding:9px 18px; font-size:13.5px;}
.btn-block{width:100%;}
.btn-whatsapp{background:#25D366; color:#fff; display:inline-flex; align-items:center; gap:8px;}
.btn-whatsapp:hover{background:#1EBE5A; box-shadow:0 8px 20px rgba(37,211,102,0.4);}

/* ---------- Header (glass nav) ---------- */
.site-header{
  position:sticky; top:0; z-index:100;
  background:rgba(255,255,255,0.72);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid var(--divider-soft);
}
.header-inner{
  max-width:1200px; margin:0 auto; padding:0 24px; height:52px;
  display:flex; align-items:center; justify-content:space-between;
}
.brand{display:flex; align-items:center; gap:9px;}
.brand-mark{
  width:12px; height:12px; display:inline-block; flex-shrink:0;
}
.brand-name{font-size:15px; font-weight:600; letter-spacing:-0.01em;}

.primary-nav{display:flex; align-items:center; gap:34px;}
.primary-nav a{font-size:13px; font-weight:400; color:var(--text); opacity:0.85; transition:opacity .15s;}
.primary-nav a:hover{opacity:1;}

.header-actions{display:flex; align-items:center; gap:16px;}
.cart-icon-link{position:relative; display:flex; align-items:center; color:var(--text); opacity:0.85;}
.cart-icon-link:hover{opacity:1;}
.reclaim-cart-count{
  position:absolute; top:-8px; right:-9px; background:var(--accent); color:#fff;
  font-size:10px; font-weight:600; width:16px; height:16px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.menu-toggle{display:none; background:none; border:none; cursor:pointer; padding:6px; flex-direction:column; gap:4px;}
.menu-toggle span{width:18px; height:1.5px; background:var(--text); display:block;}

/* ---------- Trust strip ---------- */
.trust-strip{background:var(--bg-soft); border-bottom:1px solid var(--divider-soft); padding:9px 0; overflow:hidden;}
.trust-track{display:flex; gap:44px; white-space:nowrap; width:max-content; animation:scroll 28s linear infinite;}
.trust-strip:hover .trust-track{animation-play-state:paused;}
@keyframes scroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }
.trust-item{font-size:12px; font-weight:500; color:var(--text-secondary); letter-spacing:0.01em;}

/* ---------- Hero ---------- */
.hero{padding:72px 24px 0; text-align:center;}
.hero-grid{max-width:1300px; margin:0 auto; display:grid; grid-template-columns:200px 1fr 200px; gap:28px; align-items:start;}
.hero-inner{max-width:640px; margin:0 auto;}
.hero-image-card{background:var(--bg-soft); border-radius:var(--radius-lg); padding:18px; box-shadow:var(--shadow-sm); position:sticky; top:90px;}
.hero-photo{width:100%; height:auto; display:block; border-radius:var(--radius-md); object-fit:cover; aspect-ratio:3/4;}
.hero-mission{
  font-size:13.5px; line-height:1.6; color:var(--text-secondary); max-width:560px; margin:0 auto 32px;
  padding:14px 18px; background:var(--bg-soft); border-radius:var(--radius-md);
}
.eyebrow{
  font-size:13px; font-weight:600; color:var(--accent); letter-spacing:0.02em;
  margin-bottom:14px;
}
.hero h1{font-size:clamp(34px,5vw,56px); line-height:1.08; margin-bottom:18px;}
.hero-sub{
  font-size:18px; line-height:1.5; color:var(--text-secondary); max-width:620px;
  margin:0 auto 40px;
}

.path-tabs{
  display:flex; gap:0; max-width:640px; margin:0 auto; background:var(--bg-soft);
  border-radius:var(--radius-pill); padding:5px; position:relative;
}
.path-tab{
  flex:1; border:none; background:transparent; cursor:pointer; padding:11px 20px;
  border-radius:var(--radius-pill); font-family:var(--font); transition:background .2s, color .2s;
  display:flex; flex-direction:column; gap:2px;
}
.path-tab.active{background:#fff; box-shadow:var(--shadow-sm);}
.path-tab .tag{font-size:11px; color:var(--text-secondary); font-weight:500;}
.path-tab.active .tag{color:var(--accent);}
.path-tab .path-title{font-size:14.5px; font-weight:600;}

.path-panel{display:none; text-align:left; max-width:960px; margin:40px auto 0; padding-bottom:70px;}
.path-panel.active{display:grid; grid-template-columns:1.4fr 1fr; gap:50px; align-items:center;}
.panel-steps{display:flex; flex-direction:column; gap:20px;}
.pstep{display:flex; gap:14px;}
.pstep-num{font-size:12px; font-weight:600; color:var(--accent); width:20px; flex-shrink:0; padding-top:2px; font-family:var(--font-mono);}
.pstep h4{font-size:15px; margin-bottom:3px;}
.pstep p{font-size:13.5px; color:var(--text-secondary); line-height:1.5;}
.panel-cta{
  background:var(--bg-soft); border-radius:var(--radius-lg); padding:32px 28px; text-align:center;
  box-shadow:var(--shadow-sm);
}
.panel-cta-big{font-size:32px; font-weight:700; letter-spacing:-0.02em; margin-bottom:6px;}
.panel-cta-sub{font-size:13px; color:var(--text-secondary); margin-bottom:22px; line-height:1.5;}
.panel-cta-message{font-size:19px; font-weight:700; letter-spacing:-0.01em; line-height:1.35; margin-bottom:22px;}

/* ---------- Section shell ---------- */
.value-props{background:var(--bg-soft); border-top:1px solid var(--divider-soft); border-bottom:1px solid var(--divider-soft);}
.value-props-inner{max-width:1180px; margin:0 auto; padding:40px 24px; display:grid; grid-template-columns:repeat(4,1fr); gap:28px;}
.value-prop{display:flex; gap:12px; align-items:flex-start;}
.vp-icon{width:22px; height:22px; flex-shrink:0; color:var(--accent); margin-top:2px;}
.value-prop h4{font-size:14px; margin-bottom:4px;}
.value-prop p{font-size:12.5px; color:var(--text-secondary); line-height:1.5; margin:0;}

.shop-modal-overlay{
  display:none; position:fixed; inset:0; z-index:200; align-items:center; justify-content:center;
  background:rgba(16,35,28,0.6); padding:24px;
}
.shop-modal-overlay.open{display:flex;}
.shop-modal{
  position:relative; max-width:480px; width:100%;
  background:linear-gradient(120deg, var(--accent-dark), var(--accent-2)); color:#fff; border-radius:var(--radius-lg);
  padding:40px 36px; text-align:center; box-shadow:var(--shadow-lg);
}
.shop-modal-close{
  position:absolute; top:14px; right:14px; background:rgba(255,255,255,0.15); border:none; color:#fff;
  width:28px; height:28px; border-radius:50%; font-size:18px; line-height:1; cursor:pointer;
}
.shop-modal-close:hover{background:rgba(255,255,255,0.28);}
.shop-banner-eyebrow{font-size:12.5px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:#bfe0ff; margin-bottom:10px;}
.shop-modal h3{font-size:24px; color:#fff; margin-bottom:10px;}
.shop-modal p{font-size:14px; color:rgba(255,255,255,0.88); margin:0 auto 22px; line-height:1.6;}
.shop-banner-btn{background:#25D366; color:#fff; display:inline-flex; align-items:center; gap:8px;}
.shop-banner-btn:hover{background:#1EBE5A; box-shadow:0 8px 20px rgba(37,211,102,0.4);}

.section{max-width:1180px; margin:0 auto; padding:90px 24px;}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:44px; flex-wrap:wrap;}
.section-head h2{font-size:32px; letter-spacing:-0.02em;}
.section-sub{color:var(--text-secondary); font-size:14.5px; max-width:340px; line-height:1.6; margin:0;}
.kicker{font-size:12.5px; font-weight:600; color:var(--accent); text-transform:uppercase; letter-spacing:0.06em; display:block; margin-bottom:10px;}

/* ---------- Process loop ---------- */
.loop{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.loop-step{
  background:var(--bg-soft); border-radius:var(--radius-md); padding:26px 22px; cursor:pointer;
  transition:background .2s, transform .2s; border:1px solid transparent;
}
.loop-step:hover{transform:translateY(-2px);}
.loop-step.active{background:var(--ink); color:#fff; box-shadow:var(--shadow-md);}
.loop-step.active .loop-num{color:#8ecdff;}
.loop-step.active p{color:rgba(255,255,255,0.75);}
.loop-num{font-family:var(--font-mono); font-size:12px; color:var(--accent); display:block; margin-bottom:12px;}
.loop-step h4{font-size:15px; margin-bottom:8px;}
.loop-step p{font-size:12.5px; color:var(--text-secondary); line-height:1.55; margin:0;}

/* ---------- Compliance ---------- */
.compliance{background:var(--bg-soft);}
.section-inner{max-width:1180px; margin:0 auto; padding:90px 24px;}
.comp-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px;}
.comp-card{background:#fff; border-radius:var(--radius-md); padding:24px; box-shadow:var(--shadow-sm);}
.comp-badge{
  width:38px; height:38px; border-radius:var(--radius-sm); background:var(--ink); color:#fff;
  display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:12.5px; font-weight:600;
  margin-bottom:16px;
}
.comp-card h4{font-size:14.5px; margin-bottom:8px;}
.comp-card p{font-size:12.5px; color:var(--text-secondary); line-height:1.55; margin:0;}

/* ---------- Shop / WooCommerce product loop ---------- */
.reclaim-shop-preview ul.products,
ul.products{
  display:grid !important; grid-template-columns:repeat(3,1fr); gap:22px; list-style:none; margin:0; padding:0;
}
ul.products li.product{
  background:#fff; border-radius:var(--radius-md); padding:0; overflow:hidden;
  box-shadow:var(--shadow-sm); transition:box-shadow .2s, transform .2s; position:relative;
}
ul.products li.product:hover{box-shadow:var(--shadow-md); transform:translateY(-3px);}
ul.products li.product a img{
  width:100%; aspect-ratio:4/3; object-fit:cover; background:var(--bg-soft);
}
ul.products li.product .woocommerce-loop-product__title{
  font-size:15.5px; font-weight:600; padding:16px 18px 0; margin:0;
}
ul.products li.product .price{
  font-size:16px; font-weight:700; padding:6px 18px 18px; display:block; color:var(--text);
}
ul.products li.product .price del{color:var(--text-secondary); font-weight:400; font-size:13px; margin-right:6px;}
ul.products li.product .price ins{text-decoration:none;}
ul.products li.product .button{
  margin:0 18px 18px; display:inline-flex; padding:9px 16px; font-size:13px;
  background:var(--accent); color:#fff; border-radius:var(--radius-pill); text-align:center;
}
ul.products li.product .button:hover{background:var(--accent-hover);}
ul.products li.product .added_to_cart{display:block; margin:8px 18px 0; font-size:12px; color:var(--accent);}

.reclaim-card-meta{display:flex; align-items:center; justify-content:space-between; padding:14px 18px 0;}
.sold-stamp{
  position:absolute; top:36%; left:50%; transform:translate(-50%,-50%) rotate(-10deg); z-index:2;
  background:rgba(255,255,255,0.92); color:#C6362E; border:2px solid #C6362E; border-radius:4px;
  padding:6px 22px; font-size:15px; font-weight:700; letter-spacing:3px; text-transform:uppercase;
  pointer-events:none;
}.reclaim-asset-tag{font-family:var(--font-mono); font-size:10.5px; color:var(--text-secondary);}
.reclaim-grade-disc{
  width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:12px; font-weight:700; flex-shrink:0;
}
.grade-A{background:var(--green);} .grade-B{background:var(--amber);} .grade-C{background:var(--steel);}

.shop-cta{text-align:center; margin-top:40px;}

/* Single product page tidy-up */
.reclaim-shop-wrap{max-width:1180px; margin:0 auto; padding:60px 24px;}
.woocommerce div.product div.images, .woocommerce div.product div.summary{width:100% !important; float:none !important;}
.woocommerce div.product{display:grid; grid-template-columns:1fr 1fr; gap:50px;}
.woocommerce div.product img{border-radius:var(--radius-lg);}
.woocommerce ul.tabs{list-style:none; display:flex; gap:24px; padding:0; border-bottom:1px solid var(--divider); margin:60px 0 24px;}
.woocommerce div.product p.price{font-size:26px; font-weight:700;}
.woocommerce div.product form.cart .button{
  background:var(--accent); color:#fff; border-radius:var(--radius-pill); padding:13px 30px; border:none; font-size:15px; cursor:pointer;
}
.woocommerce div.product form.cart .button:hover{background:var(--accent-hover);}
.reclaim-breadcrumb{max-width:1180px; margin:24px auto 0; padding:0 24px; font-size:13px; color:var(--text-secondary);}
.reclaim-breadcrumb a{color:var(--accent);}

/* Cart / checkout minimal tidy-up */
.woocommerce table.shop_table{border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--divider-soft);}
.woocommerce #payment #place_order,
.woocommerce a.checkout-button{
  background:var(--accent); color:#fff; border-radius:var(--radius-pill); padding:14px 28px; font-size:15px;
}

/* ---------- Why / stats (dark section) ---------- */

/* ---------- FAQ ---------- */
.faq-list{max-width:760px; margin:0 auto;}
.faq-item{border-bottom:1px solid var(--divider-soft);}
.faq-q{
  width:100%; background:none; border:none; cursor:pointer; padding:20px 2px;
  display:flex; justify-content:space-between; align-items:center; font-size:15px; font-weight:600; text-align:left;
  font-family:var(--font); color:var(--text);
}
.faq-q .plus{color:var(--accent); font-size:18px; transition:transform .25s; font-weight:400;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.faq-item.open .faq-a{max-height:200px;}
.faq-a p{margin:0 2px 20px; font-size:13.5px; color:var(--text-secondary); line-height:1.7; max-width:640px;}

/* ---------- CTA banner ---------- */
.cta-banner-wrap{max-width:1180px; margin:0 auto 90px; padding:0 24px;}
.cta-banner{
  background:linear-gradient(120deg, var(--accent-dark), var(--accent-2));
  color:#fff; border-radius:var(--radius-lg); padding:56px 48px;
  display:flex; justify-content:space-between; align-items:center; gap:30px; flex-wrap:wrap;
}
.cta-banner h2{font-size:26px; margin-bottom:8px;}
.cta-banner p{font-size:14px; opacity:0.9; max-width:420px; margin:0;}
.cta-actions{display:flex; gap:12px; flex-wrap:wrap;}

/* ---------- Footer ---------- */
.site-footer{background:var(--bg-soft); border-top:1px solid var(--divider-soft);}
.footer-inner{max-width:1180px; margin:0 auto; padding:60px 24px 30px;}
.footer-top{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; margin-bottom:40px;}
.footer-brand{display:flex; flex-direction:column; gap:10px;}
.footer-tagline{font-size:13px; color:var(--text-secondary); line-height:1.6; max-width:260px;}
.footer-widget-title{font-size:13px; font-weight:600; margin-bottom:12px;}
.footer-nav{display:flex; flex-direction:column; gap:10px;}
.footer-nav a{font-size:13px; color:var(--text-secondary);}
.footer-nav a:hover{color:var(--text);}
.footer-bottom{
  border-top:1px solid var(--divider-soft); padding-top:22px; display:flex; justify-content:space-between;
  font-size:12.5px; color:var(--text-secondary); flex-wrap:wrap; gap:10px;
}

/* ---------- Generic page ---------- */
.page-title{font-size:34px; margin-bottom:24px;}
.page-body{font-size:16px; line-height:1.7; color:var(--text-secondary); max-width:760px;}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .primary-nav{display:none;}
  .primary-nav.mobile-open{
    display:flex; flex-direction:column; position:absolute; top:52px; left:0; right:0;
    background:#fff; padding:16px 24px; gap:14px; box-shadow:var(--shadow-md); border-bottom:1px solid var(--divider-soft);
  }
  .menu-toggle{display:flex;}
  .hero-grid{grid-template-columns:1fr 1fr; grid-template-areas:"content content" "left right";}
  .hero-image-left{grid-area:left;} .hero-image-right{grid-area:right;} .hero-inner{grid-area:content; max-width:100%;}
  .hero-image-card{position:static;}
  .path-panel.active{grid-template-columns:1fr;}
  .loop{grid-template-columns:1fr 1fr;}
  .comp-grid{grid-template-columns:1fr 1fr;}
  ul.products{grid-template-columns:1fr 1fr !important;}
  .woocommerce div.product{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .path-tabs{flex-direction:column; border-radius:var(--radius-md);}
  .loop{grid-template-columns:1fr;}
  .comp-grid{grid-template-columns:1fr;}
  ul.products{grid-template-columns:1fr !important;}
  .cta-banner{padding:36px 26px;}
  .section{padding:60px 20px;}
}
