/*
Theme Name: FUXTIN Warm Industrial
Theme URI: https://www.fuxtinc.com
Author: FUXTIN
Description: A warm brown and beige B2B WordPress theme for custom metal packaging manufacturers.
Version: 1.0.0
Text Domain: fuxtin
*/

:root {
  --ink: #2b1b13;
  --brown: #4a2d20;
  --brown-2: #654332;
  --copper: #a56f4f;
  --sand: #d8bda4;
  --cream: #f4eadf;
  --paper: #fbf6ef;
  --line: rgba(74,45,32,.18);
  --white: #fffdf9;
  --shadow: 0 24px 70px rgba(55,32,21,.14);
  --radius: 26px;
  --wrap: min(1240px, calc(100vw - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; line-height: 1.65; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
.wrap { width: var(--wrap); margin-inline: auto; }
.section { padding: 112px 0; }
.section--brown { color: var(--cream); background: var(--brown); }
.section--cream { background: var(--cream); }
.section-kicker { margin: 0 0 14px; color: var(--copper); font-size: 12px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.section--brown .section-kicker { color: var(--sand); }
h1,h2,h3,h4 { margin-top: 0; font-family: Georgia, "Times New Roman", serif; line-height: 1.05; letter-spacing: -.035em; }
h1 { font-size: clamp(52px, 7.4vw, 112px); }
h2 { font-size: clamp(38px, 5vw, 70px); }
h3 { font-size: clamp(24px, 2.4vw, 34px); }
p { margin: 0 0 1.15em; }
.lead { max-width: 720px; font-size: clamp(18px, 2vw, 23px); color: rgba(43,27,19,.72); }
.section--brown .lead { color: rgba(244,234,223,.74); }

.site-header { position: absolute; inset: 0 0 auto; z-index: 50; color: var(--cream); }
body:not(.home) .site-header { position: relative; color: var(--cream); background: var(--brown); }
.nav-shell { width: var(--wrap); min-height: 92px; margin: auto; display: flex; align-items: center; gap: 34px; border-bottom: 1px solid rgba(255,255,255,.24); }
.brand { display: inline-flex; align-items: center; gap: 11px; font-size: 22px; font-weight: 900; letter-spacing: .13em; }
.brand-mark { width: 34px; aspect-ratio: 1; border: 1px solid currentColor; border-radius: 50%; display: grid; place-items: center; font-family: Georgia,serif; font-size: 16px; }
.primary-nav { margin-left: auto; }
.primary-nav ul { display: flex; align-items: center; gap: 32px; margin: 0; padding: 0; list-style: none; }
.primary-nav a { font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.nav-quote { padding: 13px 19px; border: 1px solid rgba(255,255,255,.55); border-radius: 999px; transition: .25s; }
.nav-quote:hover { color: var(--brown); background: var(--cream); }
.menu-toggle { display: none; margin-left: auto; width: 44px; height: 44px; padding: 0; color: inherit; background: transparent; border: 1px solid currentColor; border-radius: 50%; }
.menu-toggle span { display: block; width: 18px; height: 1px; margin: 5px auto; background: currentColor; }

.hero { position: relative; min-height: 780px; height: min(900px, 100vh); color: var(--cream); background: #2b1b13; overflow: hidden; }
.hero-media { position: absolute; inset: 0; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(38,22,14,.92) 0%, rgba(38,22,14,.72) 36%, rgba(38,22,14,.12) 69%, rgba(38,22,14,.28) 100%); }
.hero-inner { position: relative; z-index: 2; width: var(--wrap); height: 100%; margin: auto; padding-top: 180px; display: flex; align-items: center; }
.hero-copy { width: min(650px, 56vw); }
.hero-kicker { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 28px; font-size: 12px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.hero-kicker::before { content: ""; width: 44px; height: 1px; background: var(--sand); }
.hero h1 { margin-bottom: 26px; }
.hero p { max-width: 590px; color: rgba(255,248,239,.78); font-size: 18px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.button { display: inline-flex; min-height: 52px; padding: 0 25px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 999px; font-size: 12px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button--light { color: var(--brown); background: var(--cream); }
.button--outline { color: var(--cream); border-color: rgba(255,255,255,.58); }
.button--brown { color: var(--cream); background: var(--brown); }
.button--copper { color: var(--white); background: var(--copper); }
.hero-stat { position: absolute; z-index: 3; right: max(24px, calc((100vw - 1240px)/2)); bottom: 42px; display: grid; grid-template-columns: repeat(3, auto); gap: 34px; padding: 21px 26px; background: rgba(43,27,19,.72); border: 1px solid rgba(255,255,255,.22); backdrop-filter: blur(12px); border-radius: 18px; }
.hero-stat strong { display: block; font-family: Georgia,serif; font-size: 27px; }
.hero-stat span { color: rgba(255,255,255,.65); font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }

.intro-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 9vw; align-items: start; }
.intro-grid h2 { margin-bottom: 0; }
.feature-list { display: grid; grid-template-columns: 1fr 1fr; gap: 34px 28px; margin-top: 48px; }
.feature { padding-top: 18px; border-top: 1px solid var(--line); }
.feature b { display: block; margin-bottom: 8px; font-family: Georgia,serif; font-size: 22px; }
.feature p { color: rgba(43,27,19,.65); font-size: 14px; }

.category-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 48px; }
.category-head h2 { max-width: 770px; margin-bottom: 0; }
.text-link { padding-bottom: 5px; border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.category-card { position: relative; min-height: 410px; padding: 28px; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; color: var(--cream); background: linear-gradient(145deg, #6c4c3b, #2f1e17); border-radius: var(--radius); }
.category-card::before { content: ""; position: absolute; width: 210px; height: 210px; top: 54px; left: 50%; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle at 35% 30%, #f0ddc9, #98725b 57%, #3a251a 60%, #1f140f 100%); box-shadow: 0 34px 38px rgba(0,0,0,.28); transition: transform .45s; }
.category-card:nth-child(2)::before { border-radius: 24px; }
.category-card:nth-child(3)::before { width: 170px; height: 250px; border-radius: 35px; }
.category-card:nth-child(4)::before { clip-path: polygon(50% 0, 100% 38%, 82% 100%, 18% 100%, 0 38%); border-radius: 20px; }
.category-card:hover::before { transform: translateX(-50%) translateY(-9px) rotate(-3deg); }
.category-card > * { position: relative; z-index: 1; }
.category-card small { color: var(--sand); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
.category-card h3 { margin: 8px 0 4px; font-size: 31px; }
.category-card span { color: rgba(255,255,255,.65); font-size: 13px; }

.capability-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7vw; align-items: center; }
.material-art { position: relative; min-height: 560px; border-radius: 0 140px 0 140px; background: linear-gradient(135deg,#c5a385,#6f4b37 50%,#302017); box-shadow: var(--shadow); overflow: hidden; }
.material-art::before,.material-art::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.45); border-radius:50%; }
.material-art::before { width:360px; height:360px; right:-70px; top:65px; box-shadow: inset 0 0 0 42px rgba(255,255,255,.06), inset 0 0 0 90px rgba(43,27,19,.12); }
.material-art::after { width:220px; height:220px; left:70px; bottom:-50px; background:rgba(239,223,207,.18); }
.capability-list { margin-top: 42px; border-top: 1px solid rgba(255,255,255,.2); }
.capability-row { display: grid; grid-template-columns: 54px 1fr auto; gap: 20px; align-items: center; padding: 21px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.capability-row i { color: var(--sand); font-family: Georgia,serif; font-size: 18px; font-style: normal; }
.capability-row b { font-size: 15px; }
.capability-row span { color: rgba(255,255,255,.5); font-size: 12px; }

.process-grid { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 58px; border-top: 1px solid var(--line); }
.process-step { position: relative; padding: 32px 30px 20px 0; border-right: 1px solid var(--line); }
.process-step + .process-step { padding-left: 30px; }
.process-step:last-child { border-right: 0; }
.process-step i { display: block; margin-bottom: 55px; color: var(--copper); font-family: Georgia,serif; font-size: 16px; font-style: normal; }
.process-step h3 { margin-bottom: 12px; }
.process-step p { color: rgba(43,27,19,.64); font-size: 14px; }

.industries { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8vw; align-items: start; }
.industry-list { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.2); }
.industry-item { padding: 25px 16px 25px 0; border-bottom: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.76); }
.industry-item:nth-child(even) { padding-left: 24px; border-left: 1px solid rgba(255,255,255,.2); }
.industry-item b { display:block; color:var(--cream); font-family:Georgia,serif; font-size:22px; }

.faq-wrap { display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; }
.faq-item { border-top: 1px solid var(--line); }
.faq-item:last-child { border-bottom: 1px solid var(--line); }
.faq-question { width: 100%; padding: 25px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--ink); background: none; border: 0; text-align: left; font-family: Georgia,serif; font-size: 22px; cursor: pointer; }
.faq-question::after { content:"+"; font-family:Inter,sans-serif; font-size:24px; font-weight:300; }
.faq-item.open .faq-question::after { content:"−"; }
.faq-answer { max-height: 0; overflow: hidden; color: rgba(43,27,19,.68); transition: max-height .35s; }
.faq-answer p { padding: 0 40px 25px 0; }

.cta-panel { position: relative; padding: 78px; color: var(--cream); background: linear-gradient(125deg,#301e16,#684735); border-radius: 40px; overflow: hidden; }
.cta-panel::after { content:""; position:absolute; width:390px; height:390px; right:-80px; top:-140px; border:1px solid rgba(255,255,255,.18); border-radius:50%; box-shadow: inset 0 0 0 60px rgba(255,255,255,.025); }
.cta-panel h2 { max-width: 770px; margin-bottom: 22px; }
.cta-panel p { max-width:620px; color:rgba(255,255,255,.66); }
.cta-panel .button { margin-top:20px; }

.site-footer { padding: 72px 0 30px; color: var(--cream); background: #20140f; }
.footer-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:50px; padding-bottom:65px; }
.footer-brand p { max-width:340px; margin-top:24px; color:rgba(255,255,255,.56); }
.footer-col h4 { margin-bottom:18px; color:var(--sand); font-family:Inter,sans-serif; font-size:11px; letter-spacing:.15em; text-transform:uppercase; }
.footer-col a { display:block; margin:9px 0; color:rgba(255,255,255,.68); font-size:14px; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:25px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.42); font-size:12px; }

.content-page { padding: 100px 0; min-height: 65vh; }
.content-page article { max-width: 840px; margin: auto; }
.content-page .entry-title { font-size: clamp(42px,6vw,74px); }
.posts-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.post-card { padding:28px; background:var(--white); border:1px solid var(--line); border-radius:22px; }
.post-card h2 { font-size:30px; }
.screen-reader-text { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.reveal { opacity:0; transform:translateY(20px); transition:opacity .6s, transform .6s; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 980px) {
  :root { --wrap: min(100% - 32px, 760px); }
  .section { padding: 78px 0; }
  .primary-nav { position:fixed; inset:0; padding:120px 28px 40px; background:var(--brown); transform:translateX(100%); transition:.3s; }
  .menu-open .primary-nav { transform:none; }
  .primary-nav ul { align-items:flex-start; flex-direction:column; gap:22px; }
  .primary-nav a { font-size:17px; }
  .nav-quote { display:none; }
  .menu-toggle { position:relative; z-index:2; display:block; }
  .hero { height:auto; min-height:760px; }
  .hero-inner { padding:165px 0 155px; }
  .hero-copy { width:min(610px,90%); }
  .hero::after { background:linear-gradient(90deg,rgba(38,22,14,.92),rgba(38,22,14,.55)); }
  .hero-stat { left:16px; right:16px; bottom:24px; justify-content:space-around; }
  .intro-grid,.capability-grid,.industries,.faq-wrap { grid-template-columns:1fr; gap:45px; }
  .category-grid { grid-template-columns:1fr 1fr; }
  .process-grid { grid-template-columns:1fr 1fr; }
  .process-step:nth-child(2) { border-right:0; }
  .footer-grid { grid-template-columns:1.5fr 1fr 1fr; }
  .footer-brand { grid-column:1/-1; }
}

@media (max-width: 620px) {
  :root { --wrap: calc(100% - 28px); }
  h1 { font-size: clamp(48px,15vw,70px); }
  .nav-shell { min-height:76px; }
  .hero { min-height:720px; }
  .hero-inner { align-items:flex-start; padding-top:150px; }
  .hero-copy { width:100%; }
  .hero p { font-size:16px; }
  .hero-stat { gap:10px; padding:15px 12px; }
  .hero-stat strong { font-size:20px; }
  .hero-stat span { font-size:8px; }
  .feature-list,.category-grid,.industry-list,.process-grid,.posts-grid { grid-template-columns:1fr; }
  .category-card { min-height:380px; }
  .category-head { align-items:flex-start; flex-direction:column; }
  .process-step,.process-step + .process-step { padding:25px 0; border-right:0; }
  .process-step i { margin-bottom:20px; }
  .industry-item:nth-child(even) { padding-left:0; border-left:0; }
  .material-art { min-height:410px; border-radius:0 80px 0 80px; }
  .cta-panel { padding:48px 28px; border-radius:26px; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-brand { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; }
}

/* Product, multilingual and conversion experience */
button { font: inherit; }
.skip-link { position:fixed; z-index:9999; top:10px; left:10px; padding:10px 16px; color:var(--brown); background:var(--cream); transform:translateY(-150%); }
.skip-link:focus { transform:none; }
:focus-visible { outline:3px solid #d59a70; outline-offset:3px; }
.language-switch { display:flex; gap:5px; align-items:center; font-size:11px; font-weight:800; letter-spacing:.08em; white-space:nowrap; }
.language-switch a { opacity:.58; }
.language-switch a[aria-current="page"] { opacity:1; text-decoration:underline; text-underline-offset:4px; }
.nav-quote { color:inherit; background:transparent; cursor:pointer; font-size:12px; font-weight:800; letter-spacing:.08em; }
.category-grid--three { grid-template-columns:repeat(3,1fr); }
.category-card.product-card { min-height:470px; padding:0; justify-content:flex-end; background:#281914; }
.category-card.product-card::before { display:none; }
.product-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.product-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(31,18,12,.93),rgba(31,18,12,.06) 72%); }
.product-card:hover img { transform:scale(1.035); }
.product-card-copy { position:relative; z-index:2; padding:30px; }
.material-photo { min-height:560px; border-radius:0 140px 0 140px; overflow:hidden; box-shadow:var(--shadow); }
.material-photo img { width:100%; height:560px; object-fit:cover; }
.footer-button { padding:0; color:rgba(255,255,255,.68); background:none; border:0; cursor:pointer; }
.archive-hero { padding:185px 0 95px; color:var(--cream); background:linear-gradient(125deg,#2a1912,#694734); }
.archive-hero h1 { max-width:900px; margin-bottom:25px; }
.archive-hero p:last-child { max-width:720px; color:rgba(255,255,255,.72); font-size:18px; }
.archive-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.archive-card { overflow:hidden; background:var(--white); border:1px solid var(--line); border-radius:26px; box-shadow:0 18px 45px rgba(43,27,19,.08); }
.archive-card img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.archive-card-copy { padding:28px; }
.archive-card h2 { margin-bottom:14px; font-size:32px; }
.archive-card p { min-height:88px; color:rgba(43,27,19,.67); font-size:14px; }
.archive-price { display:flex; align-items:baseline; gap:7px; margin:20px 0 24px; padding-top:18px; border-top:1px solid var(--line); }
.archive-price span,.archive-price small { color:rgba(43,27,19,.55); font-size:12px; }
.archive-price strong { font-family:Georgia,serif; font-size:32px; }
.breadcrumbs { padding-top:130px; display:flex; flex-wrap:wrap; gap:10px; color:rgba(43,27,19,.55); font-size:12px; }
.product-main { padding:40px 0 110px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr); gap:6vw; align-items:start; }
.product-main-image { overflow:hidden; background:#eee3d7; border-radius:28px; }
.product-main-image img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.product-thumbs { display:grid; grid-template-columns:repeat(2,100px); gap:12px; margin-top:14px; }
.product-thumbs img { width:100px; height:76px; object-fit:cover; border:2px solid transparent; border-radius:12px; }
.product-thumbs img:first-child { border-color:var(--brown); }
.product-summary { position:sticky; top:30px; padding-top:18px; }
.product-summary h1 { margin-bottom:23px; font-size:clamp(44px,5vw,72px); }
.product-lead { color:rgba(43,27,19,.7); font-size:18px; }
.price-range { margin:32px 0; padding:23px 0; border-block:1px solid var(--line); }
.price-range span,.price-range small { display:block; color:rgba(43,27,19,.58); font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
.price-range strong { display:block; margin:6px 0 4px; color:var(--brown); font-family:Georgia,serif; font-size:38px; }
.quick-specs { margin:0; }
.quick-specs div { display:grid; grid-template-columns:95px 1fr; gap:20px; padding:13px 0; border-bottom:1px solid var(--line); }
.quick-specs dt { color:rgba(43,27,19,.52); font-size:12px; text-transform:uppercase; }
.quick-specs dd { margin:0; font-weight:650; font-size:14px; }
.product-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.button--ghost { color:var(--brown); background:transparent; border-color:var(--brown); cursor:pointer; }
.product-actions .button { flex:1; cursor:pointer; }
.response-note { display:flex; gap:8px; align-items:center; margin-top:14px; color:rgba(43,27,19,.56); font-size:11px; }
.response-note span,.chat-dot { width:8px; height:8px; display:inline-block; background:#69a36d; border-radius:50%; box-shadow:0 0 0 4px rgba(105,163,109,.15); }
.product-info-grid,.detail-columns,.product-story { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; align-items:start; }
.price-table { overflow:hidden; background:var(--white); border:1px solid var(--line); border-radius:22px; }
.price-row { display:grid; grid-template-columns:1fr 1fr; padding:20px 24px; border-bottom:1px solid var(--line); }
.price-row:last-child { border-bottom:0; }
.price-row strong { color:var(--brown); text-align:right; font-family:Georgia,serif; font-size:25px; }
.price-head { color:rgba(43,27,19,.56); background:#eee0d2; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.price-head span:last-child { text-align:right; }
.spec-table { border-top:1px solid var(--line); }
.spec-table div { display:grid; grid-template-columns:155px 1fr; gap:25px; padding:22px 0; border-bottom:1px solid var(--line); }
.spec-table span { color:rgba(43,27,19,.55); font-size:12px; text-transform:uppercase; }
.product-story { align-items:center; }
.product-story img { width:100%; min-height:450px; object-fit:cover; border-radius:0 100px 0 100px; }
.product-story ul { padding-left:20px; color:rgba(255,255,255,.74); }
.product-story li { margin:13px 0; }
.chat-fab { position:fixed; z-index:80; right:22px; bottom:22px; min-height:52px; padding:0 20px; display:flex; align-items:center; gap:10px; color:var(--cream); background:var(--brown); border:1px solid rgba(255,255,255,.22); border-radius:999px; box-shadow:0 14px 40px rgba(43,27,19,.3); cursor:pointer; font-size:12px; font-weight:850; }
.inquiry-modal[hidden] { display:none; }
.inquiry-modal { position:fixed; z-index:1000; inset:0; display:grid; place-items:center; padding:20px; }
.modal-backdrop { position:absolute; inset:0; background:rgba(28,16,10,.76); backdrop-filter:blur(5px); }
.modal-panel { position:relative; width:min(680px,100%); max-height:calc(100vh - 40px); padding:42px; overflow:auto; background:var(--paper); border-radius:28px; box-shadow:0 28px 100px rgba(0,0,0,.35); }
.modal-panel h2 { margin-bottom:14px; font-size:clamp(34px,5vw,52px); }
.modal-intro { color:rgba(43,27,19,.65); }
.modal-close { position:absolute; top:15px; right:15px; width:42px; height:42px; color:var(--brown); background:var(--cream); border:0; border-radius:50%; cursor:pointer; font-size:25px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.inquiry-form label { display:block; margin:12px 0; font-size:12px; font-weight:750; }
.inquiry-form label span { color:#a5412e; }
.inquiry-form input,.inquiry-form textarea { width:100%; margin-top:6px; padding:13px 14px; color:var(--ink); background:#fffdf9; border:1px solid var(--line); border-radius:10px; font:inherit; font-size:14px; }
.inquiry-form textarea { min-height:125px; resize:vertical; }
.inquiry-form .button { margin-top:8px; cursor:pointer; }
.form-status { min-height:25px; margin-top:12px; color:#356a39; font-size:13px; }
.honey { position:absolute!important; left:-10000px!important; }
.mobile-actions { display:none; }
body.modal-open { overflow:hidden; }

@media (max-width:980px) {
  .language-switch { margin-left:auto; }
  .category-grid--three,.archive-grid { grid-template-columns:1fr 1fr; }
  .product-main { grid-template-columns:1fr; }
  .product-summary { position:static; }
  .product-info-grid,.detail-columns,.product-story { grid-template-columns:1fr; gap:45px; }
}
@media (max-width:620px) {
  body { padding-bottom:61px; }
  .language-switch { margin-left:auto; }
  .category-grid--three,.archive-grid { grid-template-columns:1fr; }
  .category-card.product-card { min-height:420px; }
  .material-photo,.material-photo img { min-height:390px; height:390px; border-radius:0 75px 0 75px; }
  .archive-hero { padding:125px 0 65px; }
  .breadcrumbs { padding-top:95px; }
  .product-main { padding:25px 0 70px; }
  .product-summary h1 { font-size:45px; }
  .quick-specs div,.spec-table div { grid-template-columns:1fr; gap:5px; }
  .product-actions .button { width:100%; flex-basis:100%; }
  .product-story img { min-height:300px; border-radius:0 60px 0 60px; }
  .chat-fab { display:none; }
  .mobile-actions { position:fixed; z-index:90; left:0; right:0; bottom:0; height:61px; display:grid; grid-template-columns:1fr 1fr; padding:7px 10px; gap:8px; background:rgba(251,246,239,.96); border-top:1px solid var(--line); backdrop-filter:blur(12px); }
  .mobile-actions button { color:var(--cream); background:var(--brown); border:0; border-radius:999px; font-size:13px; font-weight:800; }
  .mobile-actions button:last-child { color:var(--brown); background:var(--cream); border:1px solid var(--brown); }
  .modal-panel { padding:35px 20px 24px; border-radius:22px; }
  .form-grid { grid-template-columns:1fr; gap:0; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}
