/* MY Habitat v1.0.1 — independent visual system */
:root {
  --brand-primary: #0b7f5c;
  --brand-primary-dark: #07533d;
  --brand-primary-deep: #033c2d;
  --surface-muted: #dff1e9;
  --surface-soft: #f1f7f4;
  --surface-warm: #fbfaf5;
  --ink: #17352d;
  --muted: #65766f;
  --line: #dce8e2;
  --white: #fff;
  --green: #0f8b67;
  --shadow: 0 24px 70px rgba(4, 71, 51, .13);
  --radius: 26px;
  --container: 1260px;
  --habitat-forest: #064f3a;
  --habitat-deep: #023c2d;
  --habitat-emerald: #0a7d5c;
  --habitat-mint: #15a589;
  --habitat-teal: #149b91;
  --habitat-gold: #c6a75d;
  --habitat-gold-soft: #f2e7c7;
  --habitat-sand: #f4efe2;
  --habitat-ivory: #fbfaf5;
  --habitat-charcoal: #19352e;
}

html { scroll-behavior: smooth; }
body { background: var(--habitat-ivory); color: var(--habitat-charcoal); }
a { text-decoration: none; }
::selection { background: rgba(21,165,137,.22); color: var(--habitat-deep); }

.habitat-topbar { position: relative; z-index: 60; background: linear-gradient(90deg,var(--habitat-deep),var(--habitat-forest) 55%,#0d7458); color:#fff; font-size:12px; }
.habitat-topbar .container { min-height:38px; display:flex; align-items:center; gap:24px; }
.habitat-topbar span { margin-inline-end:auto; }
.habitat-topbar a,.habitat-topbar span { color:#fff; display:inline-flex; align-items:center; gap:8px; font-weight:700; }
.habitat-topbar i { color:#e6d28d; }

.site-header { background:rgba(255,255,255,.96); border-bottom:1px solid rgba(8,91,66,.1); box-shadow:0 10px 35px rgba(3,58,43,.055); backdrop-filter:blur(18px); }
.header-main { min-height:90px; gap:26px; }
.habitat-brand { min-width:270px; gap:14px; }
.habitat-brand .brand-wordmark { width:178px; height:auto; display:flex; align-items:center; }
.habitat-brand .brand-wordmark img { display:block; width:100%; height:auto; object-fit:contain; }
.habitat-brand .brand-copy { padding-inline-start:12px; border-inline-start:1px solid rgba(8,91,66,.15); }
.habitat-brand .brand-copy strong { color:var(--habitat-deep); font-size:14px; letter-spacing:.02em; }
.habitat-brand .brand-copy small { margin-top:3px; color:var(--habitat-emerald); font-size:8px; font-weight:800; white-space:nowrap; }
.brand-light .brand-copy strong,.brand-light .brand-copy small { color:#fff; }
.brand-light .brand-wordmark img { filter:brightness(0) invert(1); }
.header-search { border-color:#dce9e3; background:#f7faf8; border-radius:18px; box-shadow:none; }
.header-search:focus-within { border-color:var(--habitat-mint); box-shadow:0 0 0 4px rgba(21,165,137,.09); background:#fff; }
.header-search button { background:linear-gradient(145deg,var(--habitat-emerald),var(--habitat-forest)); }
.icon-link,.icon-btn,.lang-toggle { border-color:#dce9e3; color:var(--habitat-forest); background:#fff; }
.icon-link:hover,.icon-btn:hover,.lang-toggle:hover { color:#fff; border-color:var(--habitat-emerald); background:var(--habitat-emerald); transform:translateY(-2px); }
.icon-link em { background:var(--habitat-gold); color:var(--habitat-deep); border-color:#fff; }
.main-nav { border-top:1px solid rgba(5,82,58,.07); background:#fff; }
.mega-nav > a,.mega-nav > button { color:#31564c; font-weight:800; }
.mega-nav > a:hover,.mega-nav > button:hover,.mega-nav > a.active { color:var(--habitat-emerald); }
.mega-dropdown,.search-suggestions,.mobile-panel { border-color:#dce9e3; box-shadow:0 28px 80px rgba(3,65,47,.16); }
.mobile-panel { background:var(--habitat-ivory); }

.button { border-radius:14px; font-weight:900; }
.button-primary { border-color:var(--habitat-emerald)!important; background:linear-gradient(135deg,var(--habitat-emerald),var(--habitat-forest))!important; color:#fff!important; box-shadow:0 14px 28px rgba(7,113,83,.2); }
.button-primary:hover { transform:translateY(-3px); box-shadow:0 18px 34px rgba(7,113,83,.28); }
.button-outline { border-color:#cbded5; color:var(--habitat-forest); background:#fff; }
.habitat-button-soft { border:1px solid #d4e5dd; background:#fff; color:var(--habitat-forest); box-shadow:0 10px 30px rgba(5,75,54,.07); }
.habitat-button-soft:hover { border-color:var(--habitat-mint); color:var(--habitat-emerald); transform:translateY(-2px); }

.habitat-hero { position:relative; overflow:hidden; padding:68px 0 54px; background:radial-gradient(circle at 8% 5%,rgba(198,167,93,.18),transparent 24%),linear-gradient(145deg,#fbfaf5 0%,#edf6f1 100%); }
.habitat-hero::before { content:""; position:absolute; width:480px; height:480px; border:1px solid rgba(10,125,92,.11); border-radius:50%; right:-180px; bottom:-300px; }
.habitat-hero__grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(580px,1.18fr); align-items:center; gap:52px; }
.habitat-hero__copy { position:relative; z-index:2; }
.habitat-kicker { margin:0 0 14px; color:var(--habitat-emerald); font-size:11px; font-weight:900; letter-spacing:.08em; }
.habitat-hero h1 { margin:0; display:grid; gap:4px; color:var(--habitat-deep); font-size:clamp(44px,5.2vw,76px); line-height:1.12; letter-spacing:-.035em; }
.habitat-hero h1 b { font-weight:900; }
.habitat-hero h1 span { color:var(--habitat-emerald); font-size:.76em; font-weight:800; }
.habitat-hero__lead { max-width:620px; margin:24px 0 0; color:#526a63; font-size:17px; line-height:2; }
.habitat-hero__actions { margin-top:30px; display:flex; flex-wrap:wrap; gap:12px; }
.habitat-hero__actions .button { min-height:54px; padding-inline:25px; }
.habitat-hero__trust { margin-top:30px; display:flex; flex-wrap:wrap; gap:10px 18px; }
.habitat-hero__trust span { color:#38594f; display:inline-flex; align-items:center; gap:7px; font-size:11px; font-weight:800; }
.habitat-hero__trust i { color:var(--habitat-mint); }
.habitat-hero__visual { position:relative; min-width:0; }
.habitat-hero__visual picture,.habitat-hero__visual > picture img { display:block; width:100%; }
.habitat-hero__visual > picture img { border-radius:42px; box-shadow:0 35px 90px rgba(3,69,50,.2); }
.habitat-hero__visual::after { content:""; position:absolute; inset:18px; border:1px solid rgba(255,255,255,.55); border-radius:31px; pointer-events:none; }
.habitat-hero__badge { position:absolute; z-index:3; left:-20px; bottom:52px; width:210px; min-height:98px; padding:18px 20px; border:1px solid rgba(255,255,255,.68); border-radius:22px; background:rgba(255,255,255,.94); box-shadow:0 20px 45px rgba(3,59,43,.16); display:flex; flex-direction:column; justify-content:center; backdrop-filter:blur(14px); }
.habitat-hero__badge small { color:var(--habitat-gold); font-weight:900; }
.habitat-hero__badge strong { margin-top:5px; color:var(--habitat-deep); font-size:16px; line-height:1.5; }
.habitat-hero__seal { position:absolute; z-index:3; top:-24px; right:-24px; width:112px; height:112px; padding:12px; border-radius:34px; background:#fff; box-shadow:0 18px 45px rgba(3,59,43,.16); transform:rotate(5deg); }
.habitat-hero__seal img { width:100%; height:100%; object-fit:cover; border-radius:24px; }

.habitat-service-ribbon { position:relative; z-index:3; margin-top:-3px; background:#fff; border-bottom:1px solid var(--line); }
.habitat-service-ribbon .container { display:grid; grid-template-columns:repeat(4,1fr); }
.habitat-service-ribbon article { min-height:104px; padding:20px 24px; display:flex; align-items:center; gap:14px; border-inline-end:1px solid var(--line); }
.habitat-service-ribbon article:last-child { border-inline-end:0; }
.habitat-service-ribbon article > i { width:44px; height:44px; flex:0 0 44px; border-radius:15px; background:#e7f4ee; color:var(--habitat-emerald); display:grid; place-items:center; font-size:16px; }
.habitat-service-ribbon b,.habitat-service-ribbon small { display:block; }
.habitat-service-ribbon b { color:var(--habitat-deep); font-size:12px; }
.habitat-service-ribbon small { margin-top:4px; color:var(--muted); font-size:9px; line-height:1.6; }

.section { padding:82px 0; }
.section-soft { background:#f0f6f3; }
.habitat-section-head { margin-bottom:34px; display:flex; align-items:end; justify-content:space-between; gap:36px; }
.habitat-section-head > div { max-width:650px; }
.habitat-section-head h2 { margin:0; color:var(--habitat-deep); font-size:clamp(29px,3vw,44px); line-height:1.35; }
.habitat-section-head > p { max-width:460px; margin:0; color:var(--muted); font-size:13px; line-height:1.9; }
.habitat-section-head--action { align-items:center; }

.habitat-category-grid.category-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.habitat-category-grid .category-card { position:relative; min-height:340px; padding:0; overflow:hidden; border:0; border-radius:28px; background:var(--habitat-forest); box-shadow:0 18px 50px rgba(4,65,48,.1); }
.habitat-category-grid .category-card img { width:100%; height:100%; object-fit:cover; transition:.55s ease; }
.habitat-category-grid .category-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(2,45,33,.88)); }
.habitat-category-grid .category-card > div,.habitat-category-grid .category-card > span { position:absolute; z-index:2; inset:auto 22px 22px; color:#fff; }
.habitat-category-grid .category-card:hover img { transform:scale(1.07); }
.habitat-category-grid .category-card:hover { transform:translateY(-6px); box-shadow:0 26px 65px rgba(4,65,48,.18); }

.habitat-experience-grid { padding:70px 0; }
.habitat-experience-grid .container { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,280px); gap:18px; }
.habitat-story-card { position:relative; overflow:hidden; border-radius:30px; color:#fff; box-shadow:0 22px 55px rgba(4,61,45,.14); }
.habitat-story-card--large { grid-row:span 2; }
.habitat-story-card img { width:100%; height:100%; object-fit:cover; transition:.6s ease; }
.habitat-story-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(2,35,26,.03),rgba(2,47,34,.9)); }
.habitat-story-card--gold::after { background:linear-gradient(180deg,rgba(63,48,16,.03),rgba(75,56,14,.88)); }
.habitat-story-card > span { position:absolute; z-index:2; inset:auto 28px 28px; display:grid; gap:7px; }
.habitat-story-card small { color:#d7eadf; font-size:10px; font-weight:900; }
.habitat-story-card b { max-width:650px; color:#fff; font-size:clamp(18px,2vw,30px); line-height:1.5; }
.habitat-story-card em { color:#fff; font-size:10px; font-style:normal; font-weight:800; }
.habitat-story-card:hover img { transform:scale(1.055); }
.habitat-story-card:hover em i { transform:translateX(-5px); }
.habitat-story-card em i { margin-inline-start:6px; transition:.2s; }

.products-grid { gap:18px; }
.product-card { border-color:#dfe9e4; border-radius:24px; background:#fff; box-shadow:0 14px 38px rgba(4,68,49,.07); }
.product-card:hover { border-color:#b9d8ca; box-shadow:0 24px 58px rgba(4,68,49,.13); transform:translateY(-6px); }
.product-card-image { background:linear-gradient(145deg,#f7faf8,#eef5f1); }
.product-card .product-brand,.product-card .product-category { color:var(--habitat-emerald); }
.product-card .product-price strong { color:var(--habitat-deep); }
.product-card .discount-badge,.product-card .offer-badge { background:var(--habitat-gold); color:var(--habitat-deep); }
.product-card-actions button:hover,.product-card-actions button.active { color:#fff; background:var(--habitat-emerald); border-color:var(--habitat-emerald); }
.stock-dot,.stock-line i { background:var(--habitat-mint); }

.habitat-size-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:13px; }
.habitat-size-grid a { min-height:160px; padding:24px 12px; border:1px solid #dbe9e2; border-radius:24px; background:#fff; color:var(--habitat-deep); display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:0 12px 30px rgba(4,68,49,.055); transition:.25s ease; }
.habitat-size-grid a:nth-child(3n+2) { background:#eaf5ef; }
.habitat-size-grid a:nth-child(4n) { background:#f6f0df; }
.habitat-size-grid b { font-size:34px; line-height:1; }
.habitat-size-grid span { margin-top:4px; color:var(--habitat-emerald); font-weight:900; }
.habitat-size-grid small { margin-top:10px; color:var(--muted); font-size:9px; text-align:center; }
.habitat-size-grid a:hover { border-color:var(--habitat-mint); transform:translateY(-7px) rotate(-1deg); box-shadow:0 20px 40px rgba(4,68,49,.12); }

.habitat-finder { background:linear-gradient(135deg,var(--habitat-deep),#0b6f53); color:#fff; overflow:hidden; }
.habitat-finder__grid { display:grid; grid-template-columns:.9fr 1.1fr; align-items:stretch; border-radius:34px; overflow:hidden; background:#fff; box-shadow:0 32px 80px rgba(0,45,33,.22); }
.habitat-finder__visual { min-height:700px; }
.habitat-finder__visual img { width:100%; height:100%; object-fit:cover; }
.habitat-finder__panel { padding:55px; color:var(--habitat-charcoal); }
.habitat-finder__panel h2 { margin:0; color:var(--habitat-deep); font-size:38px; }
.habitat-finder__panel > p:not(.habitat-kicker) { color:var(--muted); line-height:1.9; }
.habitat-finder__step { margin-top:24px; }
.habitat-finder__step label { display:block; margin-bottom:10px; color:var(--habitat-deep); font-size:12px; font-weight:900; }
.habitat-choice-row { display:flex; flex-wrap:wrap; gap:9px; }
.habitat-choice-row button { min-height:42px; padding:9px 16px; border:1px solid #d8e6df; border-radius:13px; background:#f8faf9; color:#456259; font:800 10px Cairo,sans-serif; cursor:pointer; transition:.2s; }
.habitat-choice-row button:hover,.habitat-choice-row button.active { border-color:var(--habitat-emerald); background:#e5f3ed; color:var(--habitat-emerald); transform:translateY(-2px); }
.habitat-finder form > .button { margin-top:28px; }
.habitat-finder__result { margin-top:20px; padding:18px; border-radius:18px; display:flex; gap:14px; align-items:flex-start; }
.habitat-finder__result > i { width:42px; height:42px; flex:0 0 42px; border-radius:13px; display:grid; place-items:center; }
.habitat-finder__result span { display:block; }
.habitat-finder__result b,.habitat-finder__result small,.habitat-finder__result em { display:block; }
.habitat-finder__result b { margin-top:2px; color:var(--habitat-deep); font-size:17px; }
.habitat-finder__result em { margin-top:5px; color:var(--habitat-emerald); font-size:10px; font-style:normal; font-weight:900; }
.habitat-finder__result p { margin:8px 0; color:#526a63; line-height:1.8; }
.habitat-finder__result a { color:var(--habitat-emerald); font-size:10px; font-weight:900; }
.habitat-finder__result.is-success { background:#e9f5ef; border:1px solid #c8e4d7; }
.habitat-finder__result.is-success > i { background:var(--habitat-emerald); color:#fff; }
.habitat-finder__result.is-warning { background:#faf3df; border:1px solid #ead9aa; }
.habitat-finder__result.is-warning > i { background:var(--habitat-gold); color:var(--habitat-deep); }

.habitat-tech-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:17px; }
.habitat-tech-grid article { min-height:315px; padding:30px; border:1px solid #dce9e3; border-radius:26px; background:#fff; box-shadow:0 14px 38px rgba(4,68,49,.055); transition:.25s; }
.habitat-tech-grid article:nth-child(2) { background:#eaf5ef; }
.habitat-tech-grid article:nth-child(3) { background:#f6f0df; }
.habitat-tech-grid article:nth-child(4) { background:#eef4f3; }
.habitat-tech-grid article > span { width:58px; height:58px; border-radius:19px; background:var(--habitat-deep); color:#fff; display:grid; place-items:center; font-size:20px; }
.habitat-tech-grid h3 { margin:24px 0 0; color:var(--habitat-deep); font-size:18px; }
.habitat-tech-grid p { color:var(--muted); line-height:1.9; }
.habitat-tech-grid a { color:var(--habitat-emerald); font-size:10px; font-weight:900; }
.habitat-tech-grid article:hover { transform:translateY(-8px); box-shadow:0 24px 50px rgba(4,68,49,.12); }

.habitat-bundle-banner { padding-top:30px; }
.habitat-bundle-banner__inner { min-height:420px; padding:54px; border-radius:34px; overflow:hidden; display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:40px; background:linear-gradient(135deg,var(--habitat-deep),var(--habitat-emerald)); color:#fff; }
.habitat-bundle-banner__inner h2 { margin:0; font-size:44px; line-height:1.35; }
.habitat-bundle-banner__inner p { max-width:550px; color:#d8ece3; line-height:1.9; }
.habitat-bundle-banner__inner .button { background:var(--habitat-gold); color:var(--habitat-deep); }
.habitat-bundle-banner__inner img { width:100%; height:320px; border-radius:27px; object-fit:cover; box-shadow:0 25px 55px rgba(0,35,25,.3); }

.habitat-projects { background:#fff; }
.habitat-projects__grid { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:70px; }
.habitat-projects__copy h2 { margin:0; color:var(--habitat-deep); font-size:44px; line-height:1.35; }
.habitat-projects__copy > p { color:var(--muted); line-height:1.9; }
.habitat-projects__copy ul { padding:0; list-style:none; display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.habitat-projects__copy li { position:relative; padding:14px 42px 14px 14px; border-radius:14px; background:#eef6f2; color:#36584e; font-size:11px; font-weight:800; }
.habitat-projects__copy li::before { content:"✓"; position:absolute; right:14px; top:12px; width:22px; height:22px; border-radius:8px; background:var(--habitat-emerald); color:#fff; display:grid; place-items:center; }
.habitat-projects__image { position:relative; }
.habitat-projects__image img { width:100%; border-radius:34px; box-shadow:0 28px 70px rgba(4,68,49,.16); }
.habitat-projects__image span { position:absolute; left:24px; bottom:24px; padding:14px 18px; border-radius:14px; background:rgba(255,255,255,.93); color:var(--habitat-deep); font-size:10px; font-weight:900; box-shadow:0 14px 35px rgba(0,45,32,.13); }

.habitat-authenticity { background:linear-gradient(150deg,#eef6f2,#fbfaf5); }
.habitat-authenticity__grid { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:70px; }
.habitat-authenticity__image img { width:100%; border-radius:32px; box-shadow:0 25px 65px rgba(4,68,49,.12); }
.habitat-authenticity h2 { margin:0; color:var(--habitat-deep); font-size:42px; }
.habitat-authenticity p { color:var(--muted); line-height:1.9; }
.habitat-proof-grid { margin-top:26px; display:grid; grid-template-columns:repeat(2,1fr); gap:13px; }
.habitat-proof-grid article { padding:18px; border:1px solid #d8e6df; border-radius:18px; background:rgba(255,255,255,.72); display:flex; gap:12px; }
.habitat-proof-grid article > i { width:40px; height:40px; flex:0 0 40px; border-radius:13px; background:var(--habitat-emerald); color:#fff; display:grid; place-items:center; }
.habitat-proof-grid b,.habitat-proof-grid small { display:block; }
.habitat-proof-grid b { color:var(--habitat-deep); font-size:11px; }
.habitat-proof-grid small { margin-top:4px; color:var(--muted); font-size:9px; line-height:1.6; }

.habitat-branches__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.habitat-branches__grid article { overflow:hidden; border-radius:28px; background:#fff; border:1px solid #dce9e3; box-shadow:0 16px 42px rgba(4,68,49,.07); }
.habitat-branches__grid img { width:100%; height:245px; object-fit:cover; }
.habitat-branches__grid article > div { padding:24px; }
.habitat-branches__grid small { color:var(--habitat-gold); font-weight:900; }
.habitat-branches__grid h3 { margin:7px 0 0; color:var(--habitat-deep); font-size:18px; }
.habitat-branches__grid p { color:var(--muted); line-height:1.8; }
.habitat-branches__grid a { color:var(--habitat-emerald); font-size:12px; font-weight:900; }
.habitat-branches__grid article:hover { transform:translateY(-7px); box-shadow:0 25px 58px rgba(4,68,49,.13); }

.habitat-faq__grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:70px; align-items:start; }
.habitat-faq__grid > div:first-child h2 { margin:0; color:var(--habitat-deep); font-size:42px; }
.habitat-faq__grid > div:first-child p { color:var(--muted); line-height:1.9; }
.habitat-faq__grid > div:first-child img { width:230px; margin-top:30px; }
[data-habitat-faq] { display:grid; gap:11px; }
[data-habitat-faq] article { border:1px solid #dce8e2; border-radius:18px; background:#fff; overflow:hidden; }
[data-habitat-faq] button { width:100%; min-height:62px; padding:16px 20px; border:0; background:transparent; color:var(--habitat-deep); display:flex; align-items:center; justify-content:space-between; gap:20px; text-align:right; font:900 12px Cairo,sans-serif; cursor:pointer; }
[data-habitat-faq] button i { width:28px; height:28px; border-radius:9px; background:#edf5f1; color:var(--habitat-emerald); display:grid; place-items:center; transition:.25s; }
[data-habitat-faq] p { display:none; margin:0; padding:0 20px 20px; color:var(--muted); line-height:1.9; }
[data-habitat-faq] article.open { border-color:#bcdaca; box-shadow:0 12px 30px rgba(4,68,49,.07); }
[data-habitat-faq] article.open p { display:block; }
[data-habitat-faq] article.open button i { transform:rotate(45deg); background:var(--habitat-emerald); color:#fff; }

.site-footer { background:linear-gradient(145deg,#023c2d,#07583f 72%,#0b6e54); }
.footer-glow { background:radial-gradient(circle,rgba(198,167,93,.23),transparent 68%); }
.footer-shop-button { background:var(--habitat-gold); color:var(--habitat-deep); }
.footer-brand-card,.footer-contact-card { border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.055); }
.footer-social a:hover,.back-to-top,.whatsapp-float { background:var(--habitat-mint); }
.footer-links a:hover { color:#ead797; }

/* Product detail: reinterpret the old variant UI as mattress sizes. */
.product-variant-picker { border-color:#d6e5de; background:#f8fbf9; }
.product-variant-heading i { color:var(--habitat-emerald); }
.product-variant-swatches { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.product-variant-swatch { min-height:66px!important; padding:10px 12px!important; border:1px solid #d8e6df!important; border-radius:15px!important; background:#fff!important; color:var(--habitat-deep)!important; display:flex!important; align-items:center!important; justify-content:center!important; }
.product-variant-swatch > i { display:none!important; }
.product-variant-swatch > span { font-size:11px!important; font-weight:900!important; }
.product-variant-swatch.active { border-color:var(--habitat-emerald)!important; background:#e8f4ee!important; box-shadow:0 0 0 3px rgba(10,125,92,.08)!important; }
.product-variant-swatch.active::after { content:"✓"; margin-inline-start:7px; color:var(--habitat-emerald); font-weight:900; }
.detail-price strong { color:var(--habitat-deep); }
.detail-price span { background:var(--habitat-gold); color:var(--habitat-deep); }
.product-detail-benefits article i { background:#e7f4ee; color:var(--habitat-emerald); }
.cart-variant i,.checkout-variant i,.tracking-items-list small i { display:none!important; }
.cart-variant,.checkout-variant,.tracking-items-list small { color:var(--habitat-emerald)!important; font-weight:900!important; }

/* Catalog and generic pages */
.catalog-hero,.page-hero { background:linear-gradient(135deg,#eaf5ef,#f9f7ef); }
.catalog-filter-panel,.products-toolbar,.order-summary,.checkout-panel { border-color:#dce8e2; box-shadow:0 16px 42px rgba(4,68,49,.065); }
.custom-select.open .custom-select-trigger,.field input:focus,.field textarea:focus { border-color:var(--habitat-mint)!important; box-shadow:0 0 0 4px rgba(21,165,137,.08)!important; }
.toast-success .toast-icon { background:var(--habitat-emerald); }
.site-dialog > i { background:#e7f4ee; color:var(--habitat-emerald); }

@media (max-width:1100px) {
  .habitat-hero__grid { grid-template-columns:1fr; }
  .habitat-hero__copy { max-width:760px; }
  .habitat-hero__visual { max-width:900px; }
  .habitat-category-grid.category-grid { grid-template-columns:repeat(3,1fr); }
  .habitat-size-grid { grid-template-columns:repeat(4,1fr); }
  .habitat-tech-grid { grid-template-columns:repeat(2,1fr); }
  .habitat-projects__grid,.habitat-authenticity__grid { gap:40px; }
  .header-main { min-height:82px; }
  .habitat-brand { min-width:220px; }
  .habitat-brand .brand-wordmark { width:145px; }
}

@media (max-width:820px) {
  .habitat-topbar .container { min-height:36px; justify-content:center; }
  .habitat-topbar span { margin:0; }
  .habitat-topbar a { display:none; }
  .habitat-brand { min-width:0; }
  .habitat-brand .brand-wordmark { width:132px; }
  .habitat-brand .brand-copy { display:none; }
  .habitat-hero { padding:34px 0 40px; }
  .habitat-hero__grid { gap:30px; }
  .habitat-hero h1 { font-size:44px; }
  .habitat-hero__visual > picture img { border-radius:28px; }
  .habitat-hero__badge { left:12px; bottom:15px; width:185px; min-height:82px; }
  .habitat-hero__seal { width:80px; height:80px; right:12px; top:-18px; border-radius:23px; }
  .habitat-hero__seal img { border-radius:16px; }
  .habitat-service-ribbon .container { grid-template-columns:repeat(2,1fr); }
  .habitat-service-ribbon article:nth-child(2) { border-inline-end:0; }
  .habitat-service-ribbon article { min-height:92px; }
  .section { padding:62px 0; }
  .habitat-section-head { align-items:start; flex-direction:column; gap:12px; }
  .habitat-category-grid.category-grid { grid-template-columns:repeat(2,1fr); }
  .habitat-category-grid .category-card { min-height:290px; }
  .habitat-experience-grid .container { grid-template-columns:1fr; grid-template-rows:none; }
  .habitat-story-card,.habitat-story-card--large { min-height:330px; grid-row:auto; }
  .habitat-size-grid { grid-template-columns:repeat(3,1fr); }
  .habitat-finder__grid { grid-template-columns:1fr; }
  .habitat-finder__visual { min-height:370px; }
  .habitat-finder__panel { padding:34px 24px; }
  .habitat-projects__grid,.habitat-authenticity__grid,.habitat-faq__grid { grid-template-columns:1fr; }
  .habitat-projects__image { order:-1; }
  .habitat-bundle-banner__inner { grid-template-columns:1fr; padding:35px; }
  .habitat-bundle-banner__inner img { height:250px; }
  .habitat-branches__grid { grid-template-columns:1fr; }
  .product-variant-swatches { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:560px) {
  .habitat-topbar { font-size:10px; }
  .habitat-hero h1 { font-size:36px; }
  .habitat-hero__lead { font-size:14px; }
  .habitat-hero__actions .button { width:100%; }
  .habitat-hero__trust { display:grid; }
  .habitat-service-ribbon .container { grid-template-columns:1fr; }
  .habitat-service-ribbon article { border-inline-end:0; border-bottom:1px solid var(--line); }
  .habitat-category-grid.category-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .habitat-category-grid .category-card { min-height:220px; border-radius:20px; }
  .habitat-category-grid .category-card > div,.habitat-category-grid .category-card > span { inset:auto 15px 15px; }
  .habitat-size-grid { grid-template-columns:repeat(2,1fr); }
  .habitat-size-grid a { min-height:135px; }
  .habitat-tech-grid { grid-template-columns:1fr; }
  .habitat-proof-grid { grid-template-columns:1fr; }
  .habitat-projects__copy ul { grid-template-columns:1fr; }
  .habitat-projects__copy h2,.habitat-authenticity h2,.habitat-faq__grid > div:first-child h2 { font-size:32px; }
  .habitat-bundle-banner__inner h2 { font-size:32px; }
  .habitat-finder__panel h2 { font-size:31px; }
  .product-variant-swatches { grid-template-columns:1fr 1fr; }
}

.product-card-sizes { display:flex!important; flex-wrap:wrap; gap:6px; }
.product-card-sizes i { width:auto!important; min-width:38px; height:25px!important; padding:0 7px; border:1px solid #d9e7e0; border-radius:8px!important; background:#f4f8f6!important; color:var(--habitat-forest); display:inline-grid!important; place-items:center; font:800 7px Cairo,sans-serif; font-style:normal; }
.product-card-sizes b { min-width:25px; height:25px; border-radius:8px; background:var(--habitat-gold-soft); color:#7b652f; display:grid; place-items:center; font-size:7px; }
.habitat-size-option { flex-direction:column!important; gap:3px!important; }
.habitat-size-option > span { font-size:11px!important; }
.habitat-size-option > small { color:var(--habitat-emerald); font-size:9px; font-weight:900; }
.habitat-size-option > em { color:var(--muted); font-size:7px; font-style:normal; }
.habitat-size-option.active > small,.habitat-size-option.active > em { color:var(--habitat-forest); }


/* Product technical story */
.habitat-product-specs{margin-top:38px;display:grid;gap:18px}
.habitat-spec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.habitat-spec-item{min-height:116px;padding:18px;border:1px solid #dce8e2;border-radius:20px;background:linear-gradient(145deg,#fff,#f5faf7);box-shadow:0 10px 28px rgba(3,60,44,.045)}
.habitat-spec-item i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e4f2eb;color:var(--habitat-emerald);font-style:normal;font-weight:900}
.habitat-spec-item small{display:block;margin-top:10px;color:#70827a;font-size:10px;font-weight:700}.habitat-spec-item strong{display:block;color:#153c31;font-size:14px}
.habitat-detail-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.habitat-detail-panel{padding:24px;border-radius:24px;background:#fff;border:1px solid #dce8e2}.habitat-detail-panel h3{margin:0 0 10px;color:#07533d}.habitat-detail-panel p{margin:0;color:#65766f;line-height:2}
@media(max-width:900px){.habitat-spec-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.habitat-spec-grid,.habitat-detail-panels{grid-template-columns:1fr}}

/* Branch directory */
.habitat-branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.habitat-branch-grid article{overflow:hidden;border:1px solid #dce8e2;border-radius:26px;background:#fff;box-shadow:0 16px 38px rgba(3,60,44,.06)}
.habitat-branch-grid img{width:100%;height:220px;object-fit:cover}
.habitat-branch-grid h3{margin:20px 20px 6px;color:#07533d}.habitat-branch-grid p{margin:0 20px 22px;color:#6b7d75;line-height:1.9}
@media(max-width:900px){.habitat-branch-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.habitat-branch-grid{grid-template-columns:1fr}.habitat-branch-grid img{height:200px}}
