/* Original direction: Editorial Industrial Beauty. No third-party assets or templates. */
:root { --paper:#f2f0ea; --ink:#171716; --muted:#67655f; --line:#c9c6bc; --oxide:#a74f38; --sand:#ddd6c8; --white:#faf9f5; --sans:Arial,Helvetica,sans-serif; --serif:Georgia,"Times New Roman",serif; --mono:"Courier New",monospace; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); } a { color:inherit; text-decoration:none; } p { line-height:1.65; }
.skip-link { position:fixed; top:.75rem; left:.75rem; z-index:20; padding:.7rem 1rem; color:var(--white); background:var(--ink); transform:translateY(-180%); }.skip-link:focus { transform:translateY(0); }
.site-header { min-height:76px; display:flex; align-items:center; gap:2rem; padding:0 3.5vw; border-bottom:1px solid var(--line); background:var(--paper); }.brand { display:inline-flex; align-items:center; gap:.7rem; font-size:.78rem; font-weight:800; line-height:1.05; letter-spacing:.11em; white-space:nowrap; }.brand small { display:block; margin-top:.28rem; font:.56rem var(--mono); letter-spacing:.1em; }.brand-mark { display:grid; width:28px; height:28px; place-items:center; border:1px solid var(--ink); font:700 1rem var(--serif); }.site-header nav { display:flex; gap:1.4rem; margin-left:auto; }.site-header nav a,.header-cta,.menu-button { font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.site-header nav a { padding:.45rem 0; border-bottom:1px solid transparent; }.site-header nav a:hover,.site-header nav a[aria-current="page"] { border-color:var(--ink); }.header-cta { padding:.9rem 1rem; color:var(--white); background:var(--ink); }.menu-button { display:none; margin-left:auto; border:0; background:none; color:var(--ink); cursor:pointer; }
.hero { position:relative; display:grid; grid-template-columns:minmax(0,.91fr) minmax(420px,1.09fr); min-height:690px; overflow:hidden; border-bottom:1px solid var(--line); }.hero-copy { display:flex; flex-direction:column; align-items:flex-start; padding:clamp(5.5rem,11vw,10rem) 3.5vw 3rem; }.eyebrow,.section-number { margin:0; color:var(--oxide); font:700 .66rem var(--mono); letter-spacing:.09em; }.hero h1,.page-hero h1,.standalone-inquiry h1 { max-width:720px; margin:1.4rem 0; font-size:clamp(3.65rem,7.6vw,8.25rem); font-weight:500; line-height:.82; letter-spacing:-.078em; } h1 em,h2 em { font-family:var(--serif); font-weight:400; }.hero-text { max-width:470px; color:#4b4944; font-size:.98rem; }.hero-actions { display:flex; align-items:center; gap:1.5rem; margin-top:1.45rem; }.button { display:inline-block; padding:1rem 1.25rem; border:1px solid var(--ink); font-size:.72rem; font-weight:700; letter-spacing:.055em; text-transform:uppercase; }.button-dark { color:var(--white); background:var(--ink); }.button-light { color:var(--white); border-color:var(--white); background:transparent; }.text-link { display:inline-block; padding-bottom:.25rem; border-bottom:1px solid var(--ink); font-size:.75rem; font-weight:700; letter-spacing:.04em; }
.hero-art { position:relative; min-height:600px; overflow:hidden; border-left:1px solid var(--line); background:var(--sand); }.hero-art::before { position:absolute; inset:10% 11% 11%; border:1px solid rgba(23,23,22,.24); content:""; }.hero-art::after { position:absolute; top:10%; bottom:11%; left:50%; border-left:1px solid rgba(23,23,22,.18); content:""; }.brush-hero { position:absolute; top:13%; left:48%; z-index:1; width:135px; height:76%; transform:rotate(35deg); transform-origin:center; }.brush-hero i,.brush-hero b,.brush-hero strong { position:absolute; left:50%; display:block; transform:translateX(-50%); }.brush-hero i { top:0; width:100px; height:190px; border-radius:58% 58% 20% 20%; background:linear-gradient(90deg,#bcb6aa,#f4f1e9 44%,#a7a195); clip-path:polygon(25% 100%,0 18%,26% 0,74% 0,100% 18%,75% 100%); }.brush-hero b { top:183px; width:55px; height:103px; border:1px solid #746d64; background:#a9a093; }.brush-hero strong { top:282px; width:49px; height:390px; border-radius:1px 1px 32px 32px; background:#1a1a19; box-shadow:inset 10px 0 rgba(255,255,255,.08); }.hero-disc { position:absolute; border:1px solid rgba(23,23,22,.25); border-radius:50%; }.disc-one { top:-70px; right:-80px; width:220px; height:220px; }.disc-two { bottom:8%; left:8%; width:115px; height:115px; }.art-note { position:absolute; right:3vw; bottom:2.3rem; font:.63rem var(--mono); letter-spacing:.11em; writing-mode:vertical-rl; }.hero-foot { position:absolute; right:0; bottom:0; left:0; z-index:2; display:flex; justify-content:space-between; padding:1rem 3.5vw; border-top:1px solid var(--line); background:rgba(242,240,234,.88); font:.62rem var(--mono); letter-spacing:.055em; }
.section-grid { display:grid; grid-template-columns:.55fr 1.5fr .78fr; gap:3.5rem; padding:9rem 3.5vw; border-bottom:1px solid var(--line); }.section-grid h2,.section-heading h2,.custom-copy h2 { margin:0 0 1.5rem; font-size:clamp(2.5rem,5.1vw,5.7rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.section-grid > div > p { max-width:540px; color:#494742; font-size:1.04rem; }.intro-list { margin:0; border-top:1px solid var(--ink); }.intro-list div { padding:1rem 0; border-bottom:1px solid var(--line); }.intro-list dt { color:var(--oxide); font:.65rem var(--mono); }.intro-list dd { margin:.35rem 0 0; font-size:.78rem; font-weight:700; }
.products { padding:8rem 3.5vw; border-bottom:1px solid var(--line); }.section-heading { display:grid; grid-template-columns:.5fr 1.2fr .8fr; gap:2rem; align-items:end; margin-bottom:3.5rem; }.section-heading h2 { margin:0; }.section-heading > p:last-child { max-width:310px; margin:0; color:var(--muted); font-size:.9rem; }.product-grid { display:grid; grid-template-columns:1.25fr .75fr .75fr; grid-auto-rows:350px; gap:1px; border:1px solid var(--line); background:var(--line); }.product-card { position:relative; display:flex; flex-direction:column; justify-content:space-between; padding:1.45rem; overflow:hidden; background:var(--white); }.product-card.large-card { grid-row:span 2; }.product-card.accent-card { color:var(--white); background:var(--oxide); }.product-card p { margin:0 0 .5rem; color:var(--oxide); font:.68rem var(--mono); }.accent-card p { color:#f2d2c7; }.product-card h3 { margin:0; font-size:1.55rem; letter-spacing:-.05em; }.product-card a { display:inline-block; margin-top:.8rem; border-bottom:1px solid currentColor; font-size:.68rem; font-weight:700; letter-spacing:.045em; }.product-visual { position:absolute; inset:0; pointer-events:none; opacity:.92; }.product-visual i { position:absolute; bottom:3.3rem; width:14px; border-radius:0 0 8px 8px; background:#1b1b1a; transform-origin:bottom; }.product-visual i::before { position:absolute; bottom:100%; left:-12px; width:38px; height:63px; border-radius:50% 50% 20% 20%; background:#b8b1a5; content:""; }.face-brushes i:nth-child(1) { left:28%; height:190px; transform:rotate(-16deg); }.face-brushes i:nth-child(2) { left:46%; height:240px; }.face-brushes i:nth-child(3) { left:66%; height:157px; transform:rotate(18deg); }.eye-brushes i { height:145px; }.eye-brushes i::before { left:-5px; width:24px; height:33px; }.eye-brushes i:nth-child(1) { left:22%; transform:rotate(-12deg); }.eye-brushes i:nth-child(2) { left:40%; height:185px; }.eye-brushes i:nth-child(3) { left:58%; height:125px; transform:rotate(8deg); }.eye-brushes i:nth-child(4) { left:76%; height:155px; transform:rotate(16deg); }.set-brushes i { left:50%; height:240px; }.set-brushes i::before { height:55px; }.set-brushes i:nth-child(1) { transform:translateX(-66px) rotate(-19deg); }.set-brushes i:nth-child(2) { transform:translateX(-35px) rotate(-10deg); }.set-brushes i:nth-child(3) { transform:translateX(-4px); }.set-brushes i:nth-child(4) { transform:translateX(28px) rotate(10deg); }.set-brushes i:nth-child(5) { transform:translateX(59px) rotate(19deg); }.tools span { position:absolute; width:110px; height:72px; border:17px solid #efe7dc; border-radius:50%; }.tools span:first-child { top:34%; left:20%; }.tools span:last-child { right:10%; bottom:17%; }.product-card > div:last-child { position:relative; z-index:1; }
.custom { display:grid; grid-template-columns:1fr 1fr; min-height:760px; color:var(--white); background:var(--ink); }.custom-art { position:relative; overflow:hidden; border-right:1px solid #464540; background:#262521; }.custom-art::before { position:absolute; inset:10%; border:1px solid #66635d; content:""; }.ring { position:absolute; border:1px solid #88827a; border-radius:50%; }.ring-one { bottom:-130px; left:-140px; width:490px; height:490px; }.ring-two { top:-60px; right:-80px; width:260px; height:260px; }.custom-brush { position:absolute; top:16%; left:48%; width:70px; height:68%; transform:rotate(39deg); }.custom-brush i,.custom-brush b,.custom-brush strong { position:absolute; left:50%; display:block; transform:translateX(-50%); }.custom-brush i { width:96px; height:170px; border-radius:60% 60% 18% 18%; background:#cec5b8; }.custom-brush b { top:160px; width:56px; height:95px; background:#9d9386; }.custom-brush strong { top:250px; width:48px; height:300px; border-radius:0 0 30px 30px; background:var(--oxide); }.custom-art > span { position:absolute; right:2rem; bottom:2rem; font:.63rem var(--mono); letter-spacing:.1em; }.custom-copy { padding:9rem 5.5vw; }.custom-copy h2 { margin-top:1.2rem; }.custom-copy > p:not(.eyebrow) { max-width:410px; color:#c2c0b8; }.custom-options { margin:2.5rem 0 2rem; padding:0; list-style:none; border-top:1px solid #464540; }.custom-options li { padding:.85rem 0; border-bottom:1px solid #464540; font-size:.82rem; }.custom-options span { display:inline-block; width:34px; color:#d88973; font:.65rem var(--mono); }
.craft { background:var(--white); }.process-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }.process-list li { display:flex; gap:1rem; padding:.95rem 0; border-bottom:1px solid var(--line); font-size:.8rem; font-weight:700; }.process-list span { color:var(--oxide); font:.65rem var(--mono); }.proof { display:flex; justify-content:space-between; gap:1rem; padding:1.2rem 3.5vw; color:var(--white); background:var(--oxide); }.proof p { margin:0; font-size:.73rem; font-weight:700; }.proof span { color:#f0c9bd; }
.inquiry { display:grid; grid-template-columns:1fr 1fr; gap:9vw; padding:9rem 10vw; background:#ded7ca; }.inquiry h2 { margin:1.2rem 0; font-size:clamp(3.1rem,5.9vw,6.8rem); font-weight:500; line-height:.86; letter-spacing:-.075em; }.inquiry > div > p:not(.eyebrow) { max-width:400px; color:#4b4944; }.email { display:inline-block; margin-top:2rem; border-bottom:1px solid var(--ink); font-size:.85rem; font-weight:700; }.form-row { padding:1rem 0; border-bottom:1px solid #aaa397; }.form-row:first-child { border-top:1px solid #aaa397; }.form-row label { display:block; margin-bottom:.5rem; font-size:.7rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }.form-row b { color:var(--oxide); }.form-row input,.form-row textarea { width:100%; border:0; outline:0; color:var(--ink); background:transparent; font:.95rem var(--sans); resize:vertical; }.form-row input:focus,.form-row textarea:focus { outline:2px solid var(--oxide); outline-offset:3px; }.form-status { min-height:1.5rem; margin:1rem 0; font-size:.78rem; }.form-note,.local-notice { color:var(--muted); font-size:.75rem; } footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:2rem 3.5vw; color:var(--white); background:var(--ink); } footer p { margin:0; color:#b8b6af; font-size:.7rem; }
.social-bar { display:grid; grid-template-columns:.9fr .7fr 1.15fr; gap:3rem; align-items:end; padding:5rem 3.5vw; border-bottom:1px solid var(--line); background:var(--white); }.social-bar h2 { max-width:430px; margin:1rem 0 0; font-size:clamp(2.3rem,4.4vw,4.8rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.social-bar > p { max-width:290px; margin:0; color:var(--muted); font-size:.87rem; }.social-links { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); border-top:1px solid var(--ink); }.social-links > span,.social-links > a { min-height:50px; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.6rem .8rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-size:.7rem; font-weight:700; letter-spacing:.045em; text-transform:uppercase; }.social-links > span { cursor:not-allowed; }.social-links > a { color:var(--ink); background:#efe9de; }.social-links > a:hover,.social-links > a:focus-visible { color:var(--white); background:var(--oxide); outline:2px solid var(--ink); outline-offset:-2px; }.social-links > :nth-child(2n) { border-right:0; }
.page-hero { max-width:1030px; padding:clamp(6rem,13vw,11.5rem) 3.5vw 7rem; }.page-hero h1,.standalone-inquiry h1 { margin:1rem 0 1.6rem; }.page-hero > p:last-child { max-width:560px; color:#53504a; }.dark-hero { max-width:none; color:var(--white); background:var(--ink); }.dark-hero .eyebrow { color:#d88973; }.dark-hero > p:last-child { color:#c2c0b9; }.collection-grid,.quality-grid { display:grid; grid-template-columns:repeat(2,1fr); margin:0 3.5vw 8rem; border-top:1px solid var(--line); border-left:1px solid var(--line); }.collection-grid article,.quality-grid>div { display:flex; flex-direction:column; min-height:330px; padding:2rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.collection-grid span,.article-grid article>p,.quality-grid>div>p:first-child { margin:0; color:var(--oxide); font:.65rem var(--mono); letter-spacing:.06em; }.collection-grid h2,.specification h2,.development h2,.faq-section h2 { margin:auto 0 1rem; font-size:clamp(2rem,3.8vw,4.2rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.collection-grid p,.quality-grid>div>p:last-child { max-width:370px; color:var(--muted); font-size:.87rem; }.collection-grid .text-link { align-self:flex-start; }.specification,.development { display:grid; grid-template-columns:1fr 1fr; gap:9vw; padding:8rem 9vw; background:var(--sand); }.development { background:var(--white); }.specification h2,.development h2 { margin:.8rem 0; }.specification ul { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }.specification li { padding:1rem 0; border-bottom:1px solid var(--line); font-size:.82rem; font-weight:700; }.development dl { margin:0; border-top:1px solid var(--ink); }.development dl div { padding:1rem 0; border-bottom:1px solid var(--line); }.development dt { font-size:1rem; font-weight:800; }.development dd { margin:.35rem 0 0; max-width:480px; color:var(--muted); font-size:.87rem; }.steps { padding:8rem 9vw; color:var(--white); background:var(--oxide); }.steps .eyebrow { color:#f1c9bd; }.steps ol { max-width:920px; margin:2.5rem 0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.7); }.steps li { display:flex; gap:2.5rem; padding:1.1rem 0; border-bottom:1px solid rgba(255,255,255,.45); font-size:clamp(1.1rem,2vw,1.8rem); font-weight:700; }.steps b { padding-top:.38rem; font:.65rem var(--mono); }.steps .button-dark { color:var(--ink); border-color:var(--white); background:var(--white); }.film-panel { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; min-height:410px; margin:0 3.5vw 6rem; padding:3rem; background:var(--sand); }.film-panel h2 { margin:.8rem 0; font-size:clamp(2.5rem,5vw,5rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.film-panel p { max-width:510px; }.film-panel button { padding:.85rem 1rem; border:1px solid var(--muted); color:var(--muted); background:transparent; font-weight:700; }.quality-grid { grid-template-columns:repeat(3,1fr); }.quality-grid h2 { margin:auto 0 1rem; font-size:1.65rem; letter-spacing:-.05em; }.article-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin:0 3.5vw 6rem; border:1px solid var(--line); background:var(--line); }.article-grid article { display:flex; flex-direction:column; min-height:280px; padding:2rem; background:var(--white); }.article-grid h2 { max-width:530px; margin:auto 0 1.5rem; font-size:clamp(1.6rem,3vw,3.2rem); font-weight:500; line-height:.96; letter-spacing:-.065em; }.article-grid span { color:var(--muted); font-size:.68rem; font-weight:700; }.faq-section { max-width:820px; margin:0 3.5vw 8rem; }.faq-section h2 { margin:.8rem 0 2rem; } details { padding:1rem 0; border-top:1px solid var(--line); } details:last-child { border-bottom:1px solid var(--line); } summary { cursor:pointer; font-size:.9rem; font-weight:800; }.faq-section details p { max-width:680px; color:var(--muted); font-size:.88rem; }.standalone-inquiry { padding-top:8rem; }.standalone-inquiry h1 { font-size:clamp(3.4rem,6.5vw,6.8rem); }.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:850px) { .site-header { min-height:68px; gap:1rem; padding:0 5vw; }.menu-button { display:block; }.site-header nav { position:absolute; top:68px; right:0; left:0; z-index:10; display:none; flex-direction:column; gap:0; padding:1rem 5vw; border-bottom:1px solid var(--line); background:var(--paper); }.site-header nav.open { display:flex; }.site-header nav a { padding:.8rem 0; }.header-cta { display:none; }.hero { grid-template-columns:1fr; }.hero-copy { padding:5.5rem 5vw 4rem; }.hero-art { min-height:470px; border-top:1px solid var(--line); border-left:0; }.hero-foot { position:relative; flex-direction:column; gap:.8rem; padding:1rem 5vw; }.section-grid,.section-heading,.custom,.inquiry,.specification,.development,.social-bar { grid-template-columns:1fr; }.section-grid { gap:2.2rem; padding:5.5rem 5vw; }.products { padding:5.5rem 5vw; }.section-heading { margin-bottom:2.5rem; }.product-grid { grid-template-columns:1fr 1fr; grid-auto-rows:270px; }.product-card.large-card { grid-row:span 1; }.custom { min-height:0; }.custom-art { min-height:480px; border-right:0; border-bottom:1px solid #464540; }.custom-copy { padding:5.5rem 5vw; }.proof { flex-wrap:wrap; padding:1rem 5vw; }.proof span { display:none; }.inquiry { gap:3rem; padding:5.5rem 5vw; }.social-bar { gap:1.5rem; padding:4.5rem 5vw; }.page-hero { padding:5.5rem 5vw; }.collection-grid,.quality-grid,.article-grid { margin-right:5vw; margin-left:5vw; }.collection-grid,.quality-grid { grid-template-columns:1fr; }.specification,.development,.steps { padding:5.5rem 5vw; }.film-panel { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; min-height:370px; margin:0 5vw 5.5rem; padding:2rem; }.article-grid { grid-template-columns:1fr; }.faq-section { margin-right:5vw; margin-left:5vw; } footer { flex-direction:column; align-items:flex-start; padding:2rem 5vw; } }
@media (max-width:480px) { .brand { font-size:.68rem; }.brand-mark { width:25px; height:25px; }.hero h1,.page-hero h1,.standalone-inquiry h1 { font-size:3.25rem; }.hero-actions { flex-direction:column; align-items:flex-start; }.product-grid { grid-template-columns:1fr; }.hero-art { min-height:390px; }.brush-hero { transform:scale(.8) rotate(35deg); }.art-note { right:1rem; }.product-card { min-height:260px; }.inquiry h2 { font-size:3.2rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.guide-header { max-width:990px; padding:clamp(6rem,13vw,11rem) 9vw 5rem; }.guide-header h1 { max-width:780px; margin:1rem 0 1.7rem; font-size:clamp(3.3rem,7vw,7.5rem); font-weight:500; line-height:.86; letter-spacing:-.075em; }.guide-header > p:last-child { max-width:570px; color:var(--muted); }.guide-body { display:grid; grid-template-columns:minmax(180px,.45fr) minmax(0,1fr); gap:9vw; padding:4rem 9vw 9rem; border-top:1px solid var(--line); }.guide-body aside { align-self:start; padding-top:.25rem; }.guide-body aside p { margin:0 0 1rem; color:var(--oxide); font:.65rem var(--mono); letter-spacing:.08em; }.guide-body aside ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); counter-reset:guide; }.guide-body aside li { padding:.8rem 0; border-bottom:1px solid var(--line); font-size:.75rem; font-weight:700; counter-increment:guide; }.guide-body aside li::before { margin-right:.55rem; color:var(--oxide); content:"0" counter(guide); font:.62rem var(--mono); }.guide-body section { max-width:650px; padding:0 0 3.5rem; }.guide-body h2,.guide-callout h2 { margin:.8rem 0 1rem; font-size:clamp(1.9rem,3.8vw,3.8rem); font-weight:500; line-height:.92; letter-spacing:-.07em; }.guide-body section > p:last-child { max-width:600px; color:#4e4c47; }.guide-callout { max-width:650px; padding:2rem; color:var(--white); background:var(--ink); }.guide-callout h2 { max-width:390px; }.guide-callout .button { margin-top:.8rem; color:var(--ink); border-color:var(--white); background:var(--white); }
.product-portfolio { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:0 3.5vw 8rem; border:1px solid var(--line); background:var(--line); }.portfolio-card { display:flex; flex-direction:column; background:var(--white); }.portfolio-card figure { display:grid; min-height:420px; margin:0; place-items:center; overflow:hidden; background:#eeece6; }.portfolio-card img { display:block; width:100%; height:100%; object-fit:cover; }.portfolio-card > div { display:flex; flex:1; flex-direction:column; min-height:245px; padding:1.5rem; }.portfolio-card > div > p:first-child { margin:0 0:auto; color:var(--oxide); font:.65rem var(--mono); letter-spacing:.07em; }.portfolio-card h2 { margin:1.5rem 0 .65rem; font-size:clamp(1.7rem,2.6vw,2.8rem); font-weight:500; line-height:.94; letter-spacing:-.065em; }.portfolio-card > div > p:not(:first-child) { color:var(--muted); font-size:.85rem; }.portfolio-card .text-link { align-self:flex-start; margin-top:auto; }
.factory-film-intro { margin-bottom:1px; background:var(--ink); color:var(--white); }.factory-film-intro .eyebrow { color:#d88973; }.factory-film-intro > div > p:last-child { color:#c2c0b8; }.film-caption { margin:0; color:#c2c0b8; font:.65rem var(--mono); line-height:1.7; letter-spacing:.08em; }.factory-film-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin:0 3.5vw 6rem; border:1px solid var(--line); background:var(--line); }.film-shot { position:relative; min-height:360px; margin:0; overflow:hidden; background:var(--ink); }.film-shot.wide { grid-column:span 2; min-height:440px; }.film-shot img { display:block; width:100%; height:100%; object-fit:cover; }.film-shot figcaption { position:absolute; right:0; bottom:0; left:0; padding:.85rem 1rem; color:var(--white); background:linear-gradient(transparent,rgba(0,0,0,.75)); font:.65rem var(--mono); letter-spacing:.08em; text-transform:uppercase; }
@media (max-width:850px) { .factory-film-grid { grid-template-columns:1fr; margin-right:5vw; margin-left:5vw; }.film-shot,.film-shot.wide { grid-column:auto; min-height:300px; }.factory-film-intro .film-caption { align-self:flex-start; } }
@media (max-width:850px) { .product-portfolio { grid-template-columns:1fr; margin-right:5vw; margin-left:5vw; }.portfolio-card figure { min-height:360px; }.portfolio-card > div { min-height:220px; } }
.credentials { display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; padding:8rem 9vw; background:var(--sand); }.credentials h2 { margin:.9rem 0 1.3rem; font-size:clamp(2.5rem,4.7vw,5rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.credentials > div > p:last-child { max-width:450px; color:#4e4c47; }.credentials dl { margin:0; border-top:1px solid var(--ink); }.credentials dl div { padding:1.15rem 0 1.3rem; border-bottom:1px solid var(--line); }.credentials dt { font-size:.9rem; font-weight:800; }.credentials dd { max-width:560px; margin:.5rem 0 0; color:var(--muted); font-size:.83rem; line-height:1.65; }
@media (max-width:850px) { .credentials { grid-template-columns:1fr; gap:2rem; padding:5.5rem 5vw; } }
.product-brand { display:grid; grid-template-columns:.75fr 1.25fr; gap:6vw; align-items:center; padding:5rem 9vw; background:var(--sand); }.product-brand h2 { margin:.9rem 0 1rem; font-size:clamp(2.8rem,5vw,5.6rem); font-weight:500; line-height:.9; letter-spacing:-.075em; }.product-brand > div > p:last-child { max-width:450px; color:#4e4c47; }.product-brand figure { margin:0; padding:1.2rem; background:var(--white); }.product-brand img { display:block; width:100%; height:auto; mix-blend-mode:multiply; }.product-brand figcaption { margin-top:.7rem; color:var(--muted); font:.62rem var(--mono); letter-spacing:.04em; text-align:right; }
@media (max-width:850px) { .product-brand { grid-template-columns:1fr; gap:2.2rem; padding:4.5rem 5vw; } }
.product-origin { padding:1.05rem 3.5vw; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--white); }.product-origin p { max-width:860px; margin:0 auto; color:var(--muted); font-size:.73rem; line-height:1.55; text-align:center; }
.specification > div > p:last-child,.custom-terms { max-width:470px; color:#4e4c47; font-size:.88rem; }.custom-terms { margin:1.5rem 0 0; }
.brief-guide { display:grid; grid-template-columns:.85fr 1.15fr; gap:9vw; padding:8rem 9vw; border-bottom:1px solid var(--line); background:var(--sand); }.brief-guide h2 { margin:.85rem 0 1.3rem; font-size:clamp(2.5rem,4.8vw,5.4rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.brief-guide > div > p:last-child { max-width:430px; color:#4e4c47; }.brief-guide ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }.brief-guide li { display:grid; grid-template-columns:2.5rem 1fr; gap:1rem; padding:1.05rem 0; border-bottom:1px solid var(--line); }.brief-guide li > span { color:var(--oxide); font:.65rem var(--mono); padding-top:.22rem; }.brief-guide h3 { margin:0 0 .35rem; font-size:1rem; letter-spacing:-.025em; }.brief-guide li p { max-width:440px; margin:0; color:var(--muted); font-size:.84rem; }
.factory-project-check { display:grid; grid-template-columns:.85fr 1.15fr; gap:9vw; padding:8rem 9vw; border-bottom:1px solid var(--line); background:var(--white); }.factory-project-check h2 { margin:.85rem 0 0; font-size:clamp(2.5rem,4.8vw,5.4rem); font-weight:500; line-height:.9; letter-spacing:-.07em; }.factory-project-check ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }.factory-project-check li { display:grid; grid-template-columns:2.5rem 1fr; gap:1rem; padding:1.1rem 0; border-bottom:1px solid var(--line); }.factory-project-check li > span { color:var(--oxide); font:.65rem var(--mono); padding-top:.22rem; }.factory-project-check h3 { margin:0 0 .35rem; font-size:1rem; letter-spacing:-.025em; }.factory-project-check li p { max-width:470px; margin:0; color:var(--muted); font-size:.84rem; }
@media (max-width:850px) { .product-origin { padding-right:5vw; padding-left:5vw; } }
@media (max-width:850px) { .brief-guide { grid-template-columns:1fr; gap:2.2rem; padding:5.5rem 5vw; } }
@media (max-width:850px) { .factory-project-check { grid-template-columns:1fr; gap:2.2rem; padding:5.5rem 5vw; } }
.hero-product-image { display:grid; place-items:center; background:#efede7; }.hero-product-image::before,.hero-product-image::after { display:none; }.hero-product-image img { display:block; width:100%; height:100%; object-fit:cover; }.hero-product-image .art-note { right:1.5rem; bottom:1.4rem; z-index:1; padding:.55rem .35rem; color:var(--white); background:rgba(23,23,22,.65); }.hero-product-image .hero-disc,.hero-product-image .brush-hero { display:none; }
@media (max-width:850px) { .guide-header { padding:5.5rem 5vw 3.5rem; }.guide-body { grid-template-columns:1fr; gap:2rem; padding:3rem 5vw 5.5rem; } }
.honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
