/*
Theme Name: Cola Machines Redline v2.6
Theme URI: https://colamachines.com/newsite-ai/
Author: Cola Machines
Description: A modern editorial archive and shop concept for ColaMachines.com.
Version: 0.3.1
Text Domain: cola-archive
*/

:root {
  --red: #d52727;
  --red-dark: #9e171b;
  --cream: #f3eadb;
  --cream-2: #e8dcc8;
  --ink: #161614;
  --muted: #6d6960;
  --steel: #aab0ae;
  --brass: #b9955b;
  --line: rgba(22, 22, 20, .14);
  --radius: 18px;
  --display: "Arial Narrow", "Helvetica Neue", sans-serif;
  --body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.page-hero { padding:190px 0 70px; background:#121210; color:#fff; }
.page-hero h1 { max-width:900px; margin:0; font-family:var(--display); font-size:clamp(64px,9vw,130px); letter-spacing:-.065em; line-height:.8; text-transform:uppercase; }
.page-content { padding:70px 0 110px; }
.page-intro { max-width:750px; margin:0 0 55px; color:var(--muted); font-size:18px; }
.page-content .ngg-galleryoverview { display:grid!important; grid-template-columns:repeat(4,1fr); gap:14px; width:100%!important; }
.page-content .ngg-gallery-thumbnail-box { width:auto!important; margin:0!important; }
.page-content .ngg-gallery-thumbnail { width:100%; overflow:hidden; border-radius:12px; background:#ded2c0; }
.page-content .ngg-gallery-thumbnail img { width:100%!important; height:260px!important; margin:0!important; padding:0!important; border:0!important; object-fit:cover; transition:transform .3s; }
.page-content .ngg-gallery-thumbnail:hover img { transform:scale(1.035); }
@media(max-width:900px){.page-content .ngg-galleryoverview{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.page-content .ngg-galleryoverview{grid-template-columns:1fr}.page-content .ngg-gallery-thumbnail img{height:310px!important}}
.gallery-index-placeholder { margin-bottom:45px; color:var(--muted); font-size:18px; }
.machine-record { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.82fr); gap:52px; align-items:start; }
.machine-record-kicker { margin:0 0 12px; color:var(--red); font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.machine-record-intro { margin:0 0 32px; color:var(--muted); font-size:18px; line-height:1.65; }
.machine-specs { margin:0; border-top:2px solid var(--ink); }
.machine-spec { display:grid; grid-template-columns:minmax(150px,.38fr) 1fr; gap:24px; padding:18px 0; border-bottom:1px solid var(--line); }
.machine-spec dt { font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.machine-spec dd { margin:0; line-height:1.55; }
.machine-spec--comments { display:block; padding:25px 0; }
.machine-spec--comments dt { margin-bottom:10px; color:var(--red); }
.machine-machine-gallery { position:sticky; top:110px; padding:24px; border:1px solid var(--line); border-radius:var(--radius); background:#eee4d4; }
.machine-machine-gallery h2,.machine-community-gallery h2 { margin:0 0 18px; font-family:var(--display); font-size:30px; letter-spacing:-.04em; text-transform:uppercase; }
.machine-photo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.machine-photo-grid a:first-child:nth-last-child(odd) { grid-column:1/-1; }
.machine-photo-grid img { width:100%; height:280px; display:block; object-fit:contain; border-radius:10px; background:#ded2c0; }
.machine-photo-grid a:first-child:nth-last-child(n+2) img { height:380px; }
.machine-photo-caption { display:block; padding:7px 3px 0; color:var(--muted); font-size:11px; }
.machine-gallery-empty { padding:40px 22px; border:1px dashed rgba(22,22,20,.24); border-radius:12px; color:var(--muted); text-align:center; }
.machine-community-gallery { margin-top:70px; padding-top:35px; border-top:2px solid var(--ink); }
.machine-source-note { margin-top:40px; padding:18px 20px; border-left:3px solid var(--brass); background:#eee4d4; color:var(--muted); font-size:12px; line-height:1.6; }
@media(max-width:850px){.machine-record{grid-template-columns:1fr}.machine-machine-gallery{position:static}.machine-photo-grid img,.machine-photo-grid a:first-child:nth-last-child(n+2) img{height:330px}}
@media(max-width:520px){.machine-spec{display:block}.machine-spec dt{margin-bottom:7px}.machine-photo-grid{grid-template-columns:1fr}.machine-photo-grid a:first-child:nth-last-child(odd){grid-column:auto}.machine-photo-grid img,.machine-photo-grid a:first-child:nth-last-child(n+2) img{height:300px}}
.maker-intro { display:grid; grid-template-columns:1.2fr .8fr; gap:50px; margin-bottom:60px; }
.maker-lede { margin:0 0 22px; font-size:clamp(22px,2.4vw,32px); line-height:1.35; letter-spacing:-.025em; }
.maker-history { color:var(--muted); font-size:17px; line-height:1.7; }
.maker-facts { display:grid; grid-template-columns:repeat(2,1fr); align-self:start; border-top:2px solid var(--ink); }
.maker-fact { padding:20px 0; border-bottom:1px solid var(--line); }
.maker-fact:nth-child(odd) { padding-right:18px; }
.maker-fact strong { display:block; font-family:var(--display); font-size:32px; letter-spacing:-.04em; }
.maker-fact span { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.maker-section { margin-top:65px; }
.maker-section-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:22px; padding-bottom:14px; border-bottom:2px solid var(--ink); }
.maker-section h2 { margin:0; font-family:var(--display); font-size:clamp(30px,4vw,48px); letter-spacing:-.045em; text-transform:uppercase; }
.maker-model-count { color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.maker-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.maker-model { min-height:108px; display:flex; flex-direction:column; justify-content:space-between; padding:18px; border:1px solid var(--line); border-radius:12px; background:#eee4d4; transition:transform .2s,background .2s,color .2s; }
.maker-model:hover { transform:translateY(-2px); background:var(--red); color:#fff; }
.maker-model strong { font-size:16px; }
.maker-model span { color:var(--muted); font-size:10px; letter-spacing:.07em; text-transform:uppercase; }
.maker-model:hover span { color:rgba(255,255,255,.7); }
.maker-gallery { margin-top:70px; padding:32px; border-radius:var(--radius); background:#eee4d4; }
.maker-source { margin-top:50px; color:var(--muted); font-size:12px; line-height:1.6; }
.maker-index-intro { max-width:780px; margin-bottom:45px; color:var(--muted); font-size:18px; line-height:1.65; }
.maker-index-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.maker-index-card { min-height:145px; display:flex; flex-direction:column; justify-content:space-between; padding:22px; border:1px solid var(--line); border-radius:14px; background:#eee4d4; }
.maker-index-card:hover { background:var(--ink); color:#fff; }
.maker-index-card strong { font-family:var(--display); font-size:25px; text-transform:uppercase; }
.maker-index-card span { color:var(--muted); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.machine-record-kicker a { color:inherit; border-bottom:1px solid currentColor; }
@media(max-width:850px){.maker-intro{grid-template-columns:1fr}.maker-model-grid,.maker-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.maker-model-grid,.maker-index-grid{grid-template-columns:1fr}.maker-section-head{align-items:start;flex-direction:column}.maker-gallery{padding:18px}}
.gallery-index-group { margin:0 0 58px; }
.gallery-index-group h2 { margin:0 0 18px; padding-bottom:12px; border-bottom:2px solid var(--ink); font-family:var(--display); font-size:34px; letter-spacing:-.04em; text-transform:uppercase; }
.gallery-index-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.gallery-index-grid a { min-height:95px; display:flex; flex-direction:column; justify-content:space-between; padding:18px; border:1px solid var(--line); border-radius:12px; background:#eee4d4; transition:background .2s,color .2s,transform .2s; }
.gallery-index-grid a:hover { background:var(--red); color:#fff; transform:translateY(-2px); }
.gallery-index-grid strong { font-size:13px; }
.gallery-index-grid span { margin-top:12px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.gallery-index-grid a:hover span { color:rgba(255,255,255,.65); }
@media(max-width:850px){.gallery-index-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gallery-index-grid{grid-template-columns:1fr}}

/* v2: editorial enamel direction */
.v2-kicker { position:absolute; z-index:21; top:0; left:0; width:100%; padding:8px 20px; background:var(--red); color:#fff; text-align:center; font-size:10px; font-weight:850; letter-spacing:.17em; text-transform:uppercase; }
.v2-kicker span { opacity:.62; margin:0 12px; }
.site-header .nav { margin-top:32px; }
.hero-v2 { min-height:900px; position:relative; display:grid; align-items:end; overflow:hidden; color:#fff; background:#121210; }
.hero-v2::before { content:""; position:absolute; inset:0; background:url('assets/images/hero-machine.png') 84% 70%/auto 76% no-repeat,radial-gradient(circle at 78% 48%,rgba(213,39,39,.34),transparent 30%),linear-gradient(105deg,#0c0c0b 0%,#1e1d1a 62%,#0e0e0d 100%); filter:saturate(.92) contrast(1.04); }
.hero-v2::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#121210 0%,transparent 32%); }
.hero-v2-inner { position:relative; z-index:2; padding:190px 0 65px; }
.hero-v2 h1 { max-width:1000px; margin:0; font-family:var(--display); font-size:clamp(82px,10.5vw,168px); font-weight:950; letter-spacing:-.075em; line-height:.72; text-transform:uppercase; }
.hero-v2 h1 em { display:block; color:var(--red); font-style:normal; }
.hero-v2-lede { display:grid; grid-template-columns:1fr 1.4fr; align-items:end; gap:60px; max-width:850px; margin-top:48px; }
.hero-v2-lede p { margin:0; color:rgba(255,255,255,.7); font-size:17px; }
.archive-search { width:min(1180px,calc(100% - 40px)); position:relative; z-index:5; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; margin:-1px auto 0; padding:21px 24px; border-radius:0 0 18px 18px; background:#fff; color:var(--ink); box-shadow:0 24px 55px rgba(22,22,20,.11); }
.archive-search label { color:var(--red); font-size:10px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
.archive-search input { padding:8px 0; border:0; outline:0; color:var(--ink); font-family:var(--display); font-size:22px; font-weight:700; }
.archive-search button { width:44px; height:44px; border:0; border-radius:50%; background:var(--ink); color:#fff; cursor:pointer; }
.archive-stats { display:flex; gap:45px; margin-top:55px; padding-top:25px; border-top:1px solid rgba(255,255,255,.18); }
.archive-stats strong { display:block; font-family:var(--display); font-size:29px; }
.archive-stats span { color:rgba(255,255,255,.45); font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.story { padding:120px 0; background:#e0d3be; }
.story-grid { display:grid; grid-template-columns:1.1fr .9fr; min-height:650px; overflow:hidden; border-radius:24px; background:#171715; color:#fff; }
.story-photo { position:relative; min-height:650px; background:url('assets/images/vendo81-detail.jpg') center 42%/cover; }
.story-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 62%,#171715); }
.story-content { display:flex; flex-direction:column; justify-content:center; padding:70px 65px 70px 25px; }
.story-content h2 { margin:0; font-family:var(--display); font-size:clamp(52px,6vw,84px); letter-spacing:-.06em; line-height:.86; text-transform:uppercase; }
.story-content p:not(.eyebrow) { color:rgba(255,255,255,.62); font-size:16px; }
.story-specs { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:30px 0; }
.story-specs div { padding-top:13px; border-top:1px solid rgba(255,255,255,.16); }
.story-specs strong { display:block; font-size:14px; }
.story-specs span { color:rgba(255,255,255,.4); font-size:10px; text-transform:uppercase; }
.machine-card { border:1px solid rgba(22,22,20,.07); background:#e8dfd0; }
.machine-card:first-child { background:linear-gradient(145deg,#df3030,#b8181d); }
.timeline { background:#10100f; }
.ai-section { background:#dfd3c0; }
.chat { box-shadow:0 35px 90px rgba(67,48,22,.2); }
@media(max-width:950px){.hero-v2::before{background:url('assets/images/hero-machine.png') 112% 78%/auto 68% no-repeat,radial-gradient(circle at 78% 48%,rgba(213,39,39,.34),transparent 30%),linear-gradient(105deg,#0c0c0b,#1e1d1a)}.story-grid{grid-template-columns:1fr}.story-photo{min-height:500px}.story-photo::after{background:linear-gradient(0deg,#171715,transparent 45%)}.story-content{padding:20px 35px 55px}.hero-v2-lede{grid-template-columns:1fr}.archive-search{width:calc(100% - 28px)}}
@media(max-width:640px){.v2-kicker{font-size:8px}.site-header .nav{margin-top:27px}.hero-v2{min-height:820px}.hero-v2::before{background:url('assets/images/hero-machine.png') 150% 82%/auto 56% no-repeat,radial-gradient(circle at 75% 55%,rgba(213,39,39,.3),transparent 30%),#11110f}.hero-v2-inner{padding-top:175px}.hero-v2 h1{font-size:clamp(76px,24vw,110px)}.hero-v2-lede{gap:25px;margin-top:35px}.archive-stats{gap:22px}.archive-search{grid-template-columns:1fr auto}.archive-search label{grid-column:1/-1}.archive-search input{font-size:16px}.story{padding:75px 0}.story-photo{min-height:410px}.story-content{padding:15px 24px 42px}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: var(--body); line-height: 1.5; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
.wrap { width: min(1220px, calc(100% - 40px)); margin-inline: auto; }
.eyebrow { margin: 0 0 12px; color: var(--red); font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.section-title { max-width: 720px; margin: 0; font-family: var(--display); font-size: clamp(38px, 5vw, 68px); font-stretch: condensed; letter-spacing: -.045em; line-height: .96; text-transform: uppercase; }
.section-copy { max-width: 600px; margin: 22px 0 0; color: var(--muted); font-size: 17px; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 0 22px; border: 1px solid transparent; border-radius: 999px; background: var(--red); color: white; font-size: 13px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; transition: transform .2s, background .2s; }
.button:hover { background: var(--red-dark); transform: translateY(-2px); }
.button--ghost { border-color: rgba(255,255,255,.35); background: transparent; }
.button--ghost:hover { background: rgba(255,255,255,.1); }

.site-header { position: absolute; z-index: 20; top: 0; left: 0; width: 100%; color: white; }
.nav { display: grid; grid-template-columns: 210px 1fr auto; min-height: 88px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.2); }
.brand { display: flex; align-items: center; gap: 12px; font-family: var(--display); font-size: 22px; font-weight: 900; letter-spacing: -.02em; text-transform: uppercase; }
.brand-mark { width: 35px; height: 35px; border: 2px solid currentColor; border-radius: 50%; position: relative; }
.brand-mark::after { content: "5¢"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 11px; }
.nav-links { display: flex; justify-content: center; gap: clamp(18px, 3vw, 38px); font-size: 12px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.nav-icon { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.menu-toggle { display: none; }

.hero { min-height: 860px; position: relative; display: grid; align-items: center; overflow: hidden; background: #1b1a17; color: white; }
.hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 72% 48%, rgba(213,39,39,.34), transparent 25%), radial-gradient(circle at 10% 100%, rgba(185,149,91,.13), transparent 35%), linear-gradient(105deg, #11110f 0%, #20201d 54%, #121210 100%); }
.hero::after { content: ""; pointer-events: none; position: absolute; inset: 0; opacity: .12; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E"); }
.hero-inner { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr); align-items: center; gap: 40px; padding-top: 110px; }
.hero h1 { max-width: 750px; margin: 0; font-family: var(--display); font-size: clamp(68px, 8.6vw, 132px); font-weight: 900; letter-spacing: -.065em; line-height: .78; text-transform: uppercase; }
.hero h1 span { color: var(--red); }
.hero-lede { max-width: 570px; margin: 30px 0; color: rgba(255,255,255,.76); font-size: clamp(17px, 1.5vw, 21px); }
.hero-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-machine { position: relative; min-height: 650px; display: grid; place-items: center; }
.hero-machine::before { content: ""; position: absolute; width: 440px; height: 440px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; box-shadow: 0 0 0 80px rgba(255,255,255,.025), 0 0 0 160px rgba(255,255,255,.018); }
.hero-machine img { position: relative; z-index: 2; max-height: 650px; object-fit: contain; filter: drop-shadow(0 35px 45px rgba(0,0,0,.7)); transform: rotate(1.5deg); }
.hero-plate { position: absolute; z-index: 3; right: 0; bottom: 80px; width: 220px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.24); border-radius: 12px; background: rgba(22,22,20,.78); backdrop-filter: blur(12px); }
.hero-plate strong { display: block; font-size: 17px; }
.hero-plate span { color: rgba(255,255,255,.58); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.hero-index { position: absolute; z-index: 3; bottom: 30px; left: 0; width: 100%; }
.hero-index .wrap { display: flex; justify-content: space-between; color: rgba(255,255,255,.48); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }

.purpose { position: relative; z-index: 4; margin-top: -1px; background: var(--cream); }
.purpose-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-left: 1px solid var(--line); }
.purpose-card { min-height: 240px; padding: 36px 30px; position: relative; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .25s, color .25s; }
.purpose-card:hover { background: var(--red); color: white; }
.purpose-num { color: var(--red); font-size: 11px; font-weight: 800; }
.purpose-card:hover .purpose-num, .purpose-card:hover p { color: rgba(255,255,255,.72); }
.purpose-card h3 { margin: 50px 0 10px; font-family: var(--display); font-size: 28px; letter-spacing: -.03em; text-transform: uppercase; }
.purpose-card p { margin: 0; color: var(--muted); font-size: 14px; }
.purpose-arrow { position: absolute; right: 25px; top: 30px; font-size: 22px; }

.archive { padding: 120px 0; }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 50px; }
.text-link { padding-bottom: 5px; border-bottom: 1px solid var(--ink); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.machine-grid { display: grid; grid-template-columns: 1.25fr .75fr .75fr; gap: 18px; }
.machine-card { min-height: 470px; position: relative; overflow: hidden; border-radius: var(--radius); background: var(--cream-2); }
.machine-card:first-child { grid-row: span 2; min-height: 680px; background: #cf2c2c; color: white; }
.machine-card img { width: 100%; height: 355px; padding: 30px 35px 10px; object-fit: contain; transition: transform .4s; filter: drop-shadow(0 25px 25px rgba(0,0,0,.2)); }
.machine-card:first-child img { height: 535px; padding-top: 45px; }
.machine-card:hover img { transform: translateY(-8px) scale(1.025); }
.machine-info { position: absolute; left: 0; right: 0; bottom: 0; padding: 25px; background: linear-gradient(transparent, rgba(0,0,0,.12)); }
.machine-info h3 { margin: 0; font-family: var(--display); font-size: 26px; text-transform: uppercase; }
.machine-info p { margin: 4px 0 0; color: currentColor; opacity: .65; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }

.timeline { padding: 115px 0; background: var(--ink); color: white; overflow: hidden; }
.timeline .section-copy { color: rgba(255,255,255,.6); }
.era-track { display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 75px; border-top: 1px solid rgba(255,255,255,.2); }
.era { position: relative; padding: 35px 22px 0 0; }
.era::before { content: ""; width: 11px; height: 11px; position: absolute; top: -6px; left: 0; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 7px rgba(213,39,39,.14); }
.era strong { display: block; font-family: var(--display); font-size: clamp(28px, 3vw, 42px); letter-spacing: -.04em; }
.era span { display: block; max-width: 150px; margin-top: 10px; color: rgba(255,255,255,.48); font-size: 12px; }

.ai-section { position: relative; padding: 120px 0; overflow: hidden; background: #d3c5ae; }
.ai-section::after { content: "AI"; position: absolute; right: -30px; bottom: -145px; color: rgba(255,255,255,.18); font-family: var(--display); font-size: 450px; font-weight: 900; line-height: 1; }
.ai-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 90px; }
.ai-badge { width: 62px; height: 62px; display: grid; place-items: center; margin-bottom: 25px; border-radius: 50%; background: var(--red); color: white; font-family: Georgia, serif; font-size: 27px; font-style: italic; }
.chat { padding: 24px; border: 1px solid rgba(22,22,20,.12); border-radius: 24px; background: rgba(245,238,225,.88); box-shadow: 0 30px 80px rgba(65,48,25,.16); backdrop-filter: blur(16px); }
.chat-top { display: flex; align-items: center; gap: 12px; padding-bottom: 20px; border-bottom: 1px solid var(--line); font-size: 13px; font-weight: 800; }
.online { width: 8px; height: 8px; border-radius: 50%; background: #4d9d69; box-shadow: 0 0 0 4px rgba(77,157,105,.13); }
.chat-question { width: 84%; margin: 25px 0 20px auto; padding: 16px 18px; border-radius: 14px 14px 3px 14px; background: var(--ink); color: white; font-size: 14px; }
.chat-answer { width: 92%; padding: 18px; border: 1px solid var(--line); border-radius: 3px 14px 14px 14px; background: white; font-size: 14px; }
.chat-answer strong { color: var(--red); }
.chat-sources { margin-top: 12px; color: var(--muted); font-size: 11px; }
.chat-input { display: flex; gap: 10px; margin-top: 22px; }
.chat-input input { flex: 1; min-width: 0; padding: 15px 18px; border: 1px solid var(--line); border-radius: 999px; background: white; }
.chat-input button { width: 50px; border: 0; border-radius: 50%; background: var(--red); color: white; cursor: pointer; }
.prompt-list { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.prompt-list button { padding: 9px 12px; border: 1px solid rgba(22,22,20,.16); border-radius: 999px; background: transparent; color: var(--ink); font-size: 11px; cursor: pointer; }

.shop { padding: 120px 0; }
.shop-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.shop-card { min-height: 300px; position: relative; display: flex; flex-direction: column; justify-content: end; padding: 30px; overflow: hidden; border-radius: var(--radius); background: var(--ink); color: white; }
.shop-card:nth-child(2) { background: var(--red); }
.shop-card:nth-child(3) { background: var(--brass); }
.shop-card .shop-icon { position: absolute; top: 24px; right: 26px; font-size: 58px; opacity: .2; }
.shop-card small { opacity: .65; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.shop-card h3 { margin: 7px 0 0; font-family: var(--display); font-size: 34px; letter-spacing: -.04em; text-transform: uppercase; }

.dispatch { padding: 85px 0; background: var(--red); color: white; }
.dispatch-grid { display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 70px; }
.dispatch h2 { margin: 0; font-family: var(--display); font-size: clamp(44px, 6vw, 78px); letter-spacing: -.05em; line-height: .9; text-transform: uppercase; }
.signup { display: flex; padding: 7px; border: 1px solid rgba(255,255,255,.4); border-radius: 999px; }
.signup input { flex: 1; min-width: 0; padding: 0 18px; border: 0; outline: 0; background: transparent; color: white; }
.signup input::placeholder { color: rgba(255,255,255,.65); }
.signup button { min-height: 46px; padding: 0 22px; border: 0; border-radius: 999px; font-size: 12px; font-weight: 800; cursor: pointer; }

.site-footer { padding: 65px 0 30px; background: var(--ink); color: white; }
.footer-grid { display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: 60px; }
.footer-copy { max-width: 330px; margin-top: 18px; color: rgba(255,255,255,.48); font-size: 13px; }
.footer-col strong { display: block; margin-bottom: 18px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.footer-col a { display: block; margin: 9px 0; color: rgba(255,255,255,.58); font-size: 13px; }
.footer-bottom { display: flex; justify-content: space-between; margin-top: 60px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.35); font-size: 11px; }

@media (max-width: 950px) {
  .nav { grid-template-columns: 1fr auto; }
  .nav-links { display: none; position: absolute; top: 88px; left: 20px; right: 20px; padding: 25px; flex-direction: column; background: var(--ink); border-radius: 12px; }
  .nav-links.open { display: flex; }
  .menu-toggle { display: grid; }
  .nav-actions .button { display: none; }
  .hero { min-height: auto; padding-bottom: 75px; }
  .hero-inner { grid-template-columns: 1fr; padding-top: 155px; }
  .hero-machine { min-height: 470px; }
  .hero-machine img { max-height: 475px; }
  .hero-plate { right: 8%; bottom: 20px; }
  .purpose-grid { grid-template-columns: repeat(2, 1fr); }
  .machine-grid { grid-template-columns: 1fr 1fr; }
  .machine-card:first-child { grid-column: span 2; grid-row: auto; }
  .ai-grid { grid-template-columns: 1fr; gap: 50px; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
  .footer-col:last-child { display: none; }
}

@media (max-width: 640px) {
  .wrap { width: min(100% - 28px, 1220px); }
  .nav { min-height: 74px; }
  .nav-links { top: 74px; }
  .hero h1 { font-size: clamp(60px, 20vw, 86px); }
  .hero-machine { min-height: 400px; }
  .hero-machine img { max-height: 405px; }
  .hero-plate { width: 190px; right: 0; }
  .hero-index { display: none; }
  .purpose-grid, .machine-grid, .shop-grid, .dispatch-grid, .footer-grid { grid-template-columns: 1fr; }
  .purpose-card { min-height: 195px; }
  .purpose-card h3 { margin-top: 35px; }
  .archive, .timeline, .ai-section, .shop { padding: 85px 0; }
  .section-head { align-items: start; flex-direction: column; }
  .machine-card:first-child { grid-column: auto; min-height: 560px; }
  .machine-card:first-child img { height: 440px; }
  .era-track { grid-template-columns: 1fr; gap: 32px; margin-left: 5px; border-top: 0; border-left: 1px solid rgba(255,255,255,.2); }
  .era { padding: 0 0 0 28px; }
  .era::before { top: 8px; left: -6px; }
  .chat { padding: 16px; }
  .dispatch-grid { gap: 35px; }
  .footer-grid { gap: 35px; }
  .footer-bottom { flex-direction: column; gap: 8px; }
}
.maker-history-section .maker-section-head{margin-bottom:1rem}.maker-prose{max-width:78ch;color:var(--ink-soft)}.maker-prose p{font-size:1.06rem;line-height:1.75;margin:0 0 1rem}.maker-prose a{font-weight:750}.maker-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1.35rem}.maker-highlights a{display:flex;flex-direction:column;gap:.2rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);text-decoration:none}.maker-highlights a:hover{border-color:var(--red);transform:translateY(-1px)}.maker-highlights span{font-size:.86rem;color:var(--ink-soft)}
@media(max-width:680px){.maker-highlights{grid-template-columns:1fr}}

/* v3: focused service-manual product pages */
.manual-product-page{background:#f7f2e9}.manual-product-hero{padding:158px 0 128px;background:radial-gradient(circle at 83% 40%,rgba(213,39,39,.24),transparent 24%),#171715;color:#fff}.manual-breadcrumb{display:flex;gap:9px;align-items:center;margin-bottom:52px;color:rgba(255,255,255,.48);font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.manual-breadcrumb a:hover{color:#fff}.manual-breadcrumb span:last-child{max-width:36ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manual-product-hero h1{max-width:920px;margin:0;font-family:var(--display);font-size:clamp(48px,6.3vw,88px);font-weight:900;letter-spacing:-.055em;line-height:.92;text-transform:uppercase}.manual-product-subtitle{max-width:700px;margin:25px 0 0;color:rgba(255,255,255,.64);font-size:18px;line-height:1.65}.manual-purchase-section{position:relative;margin-top:-72px;padding-bottom:95px}.manual-purchase-card{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(440px,1.1fr);overflow:hidden;border:1px solid rgba(22,22,20,.09);border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(57,42,21,.14)}.manual-cover{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:640px;padding:50px;background:#e9dfcf;text-align:center}.manual-cover-image{height:500px;display:grid;place-items:center}.manual-cover-image img{width:auto!important;max-width:100%;height:100%!important;object-fit:contain;filter:drop-shadow(0 22px 26px rgba(30,20,8,.2))}.manual-cover p{margin:24px 0 0;color:var(--muted);font-size:11px;letter-spacing:.05em}.manual-sale-badge{position:absolute;z-index:2;top:28px;left:28px;padding:9px 14px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.manual-buy-panel{display:flex;flex-direction:column;justify-content:center;padding:58px clamp(35px,5vw,76px)}.manual-label{margin:0 0 8px;color:var(--red);font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.manual-price{margin:0 0 18px;font-family:var(--display);font-size:42px;font-weight:900;letter-spacing:-.04em}.manual-price del{margin-right:10px;color:#999;font-size:.55em;font-weight:650}.manual-price ins{text-decoration:none}.manual-value-copy{max-width:510px;margin:0 0 28px;color:#4e4b45;font-size:17px;line-height:1.6}.manual-benefits{display:grid;gap:0;margin:0 0 28px;padding:0;border-top:1px solid var(--line);list-style:none}.manual-benefits li{display:flex;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.manual-benefits li>span{width:34px;height:34px;display:grid;flex:0 0 34px;place-items:center;border-radius:50%;background:#f3eadb;color:var(--red);font-weight:900}.manual-benefits strong,.manual-benefits small{display:block}.manual-benefits strong{font-size:14px}.manual-benefits small{margin-top:2px;color:var(--muted);font-size:12px}.manual-cart form.cart{display:flex!important;gap:10px;margin:0!important}.manual-cart .quantity{width:72px}.manual-cart .qty{width:100%;height:56px;padding:0 8px;border:1px solid var(--line);border-radius:9px;text-align:center}.manual-cart .single_add_to_cart_button{min-height:56px;flex:1!important;border:0!important;border-radius:9px!important;background:var(--red)!important;color:#fff!important;font-size:13px!important;font-weight:900!important;letter-spacing:.07em!important;text-transform:uppercase!important;cursor:pointer}.manual-cart .single_add_to_cart_button:hover{background:var(--red-dark)!important}.manual-cart .stock{display:none}.manual-checkout-note{margin-top:14px;color:#555149;font-size:12px;text-align:center}.manual-checkout-note span{margin-right:6px;color:#4b9464;font-size:9px}.manual-format-warning{margin:24px 0 0;padding:16px 18px;border-radius:10px;background:#f6f0e7;color:#625d54;font-size:12px;line-height:1.55}.manual-meta{margin:17px 0 0;color:#8a847a;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.manual-meta span{margin:0 7px}.manual-details-section{padding:100px 0;background:#f7f2e9}.manual-details-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:90px;align-items:start}.manual-details-section h2,.manual-related-section h2{max-width:780px;margin:0;font-family:var(--display);font-size:clamp(38px,5vw,62px);letter-spacing:-.05em;line-height:.98;text-transform:uppercase}.manual-details-lede{max-width:720px;margin:22px 0 38px;color:var(--muted);font-size:17px;line-height:1.7}.manual-includes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--ink)}.manual-includes-grid article{padding:24px 28px 24px 0;border-bottom:1px solid var(--line)}.manual-includes-grid article:nth-child(odd){border-right:1px solid var(--line)}.manual-includes-grid article:nth-child(even){padding-left:28px}.manual-includes-grid strong{font-size:14px}.manual-includes-grid p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.manual-good-to-know{padding:30px;border-radius:16px;background:#171715;color:#fff}.manual-good-to-know h3{margin:0 0 22px;font-family:var(--display);font-size:28px;text-transform:uppercase}.manual-good-to-know ul{display:grid;gap:14px;margin:0 0 28px;padding:0;list-style:none}.manual-good-to-know li{position:relative;padding-left:22px;color:rgba(255,255,255,.68);font-size:13px}.manual-good-to-know li::before{content:'✓';position:absolute;left:0;color:#e94a48;font-weight:900}.manual-good-to-know a{display:inline-block;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.35);font-size:12px;font-weight:800}.manual-related-section{padding:90px 0 110px;background:#e8dcc8}.manual-related-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:36px}.manual-related-head>a{padding-bottom:4px;border-bottom:1px solid var(--ink);font-size:12px;font-weight:800}.manual-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.manual-related-card{padding:18px;border-radius:14px;background:#f7f2e9;transition:transform .2s,box-shadow .2s}.manual-related-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(34,26,14,.1)}.manual-related-card>div{height:250px;display:grid;place-items:center;margin-bottom:18px;border-radius:10px;background:#eee5d7}.manual-related-card img{width:auto!important;max-width:100%;height:100%!important;object-fit:contain}.manual-related-card p{margin:0 0 8px;font-size:14px;font-weight:800}.manual-related-card>span{color:var(--red);font-size:13px;font-weight:850}.manual-related-card del{color:#999;font-weight:600}.manual-related-card ins{text-decoration:none}.single-product .woocommerce-message{width:min(1220px,calc(100% - 40px));position:relative;z-index:5;margin:20px auto!important;padding:18px 22px!important;border:0!important;border-radius:10px;background:#e6f2e9}.single-product .woocommerce-message::before{color:#4b9464}.single-product .woocommerce-message .button{float:right}
@media(max-width:900px){.manual-purchase-card{grid-template-columns:1fr}.manual-cover{min-height:480px}.manual-cover-image{height:400px}.manual-details-grid{grid-template-columns:1fr;gap:45px}.manual-good-to-know{max-width:none}.manual-related-card>div{height:210px}}
@media(max-width:640px){.manual-product-hero{padding:125px 0 100px}.manual-breadcrumb{margin-bottom:35px}.manual-product-subtitle{font-size:15px}.manual-purchase-section{margin-top:-52px;padding-bottom:65px}.manual-purchase-card{border-radius:17px}.manual-cover{min-height:390px;padding:34px 24px}.manual-cover-image{height:320px}.manual-buy-panel{padding:38px 24px}.manual-price{font-size:36px}.manual-value-copy{font-size:15px}.manual-cart form.cart{display:grid!important;grid-template-columns:64px 1fr}.manual-details-section{padding:70px 0}.manual-details-grid{gap:38px}.manual-includes-grid{grid-template-columns:1fr}.manual-includes-grid article,.manual-includes-grid article:nth-child(even){padding:21px 0;border-right:0}.manual-related-section{padding:70px 0}.manual-related-head{align-items:start;flex-direction:column}.manual-related-grid{grid-template-columns:1fr}.manual-related-card{display:grid;grid-template-columns:105px 1fr;gap:0 16px;align-items:center}.manual-related-card>div{grid-row:1/3;height:105px;margin:0}.manual-related-card p{align-self:end}.manual-related-card>span{align-self:start}}
.manual-cart .thwepo-extra-options{display:none!important}.manual-cart .quantity{flex:0 0 72px}
@media(max-width:640px){.manual-cover{min-height:340px}.manual-cover-image{height:265px}}
.manual-original-callout{display:grid;grid-template-columns:150px 1fr;gap:3px 24px;margin:32px 0;padding:24px;border-left:4px solid var(--red);border-radius:0 12px 12px 0;background:#eee4d4}.manual-original-callout span{grid-row:1/3;color:var(--red);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.manual-original-callout strong{font-size:17px}.manual-original-callout p{margin:3px 0 0;color:var(--muted);font-size:13px}.manual-bonus-list{margin-top:42px}.manual-bonus-list>h3{margin:0 0 20px;font-family:var(--display);font-size:30px;letter-spacing:-.035em;text-transform:uppercase}.manual-bonus-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--ink)}.manual-bonus-groups section{padding:25px 28px 22px 0;border-bottom:1px solid var(--line)}.manual-bonus-groups section:nth-child(odd){border-right:1px solid var(--line)}.manual-bonus-groups section:nth-child(even){padding-left:28px}.manual-bonus-groups h4{margin:0 0 13px;color:var(--red);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.manual-bonus-groups ul{display:grid;gap:7px;margin:0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.45}
@media(max-width:640px){.manual-original-callout{display:block}.manual-original-callout span,.manual-original-callout strong{display:block}.manual-original-callout strong{margin-top:8px}.manual-bonus-groups{grid-template-columns:1fr}.manual-bonus-groups section,.manual-bonus-groups section:nth-child(even){padding:21px 0;border-right:0}}
