@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202322;--muted:#6b706e;--red:#e4472f;--line:#e5e7e5;--soft:#f4f5f3;--font:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:white;color:var(--ink);font:16px/1.6 var(--font)}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.13;letter-spacing:-.045em;text-wrap:balance}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #175cc5;outline-offset:4px}[hidden]{display:none!important}.shell{width:min(1360px,calc(100% - 96px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:100;padding:14px;background:white}.skip:focus{top:15px}.header{height:94px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20}.brand{display:flex;gap:12px;align-items:center;font-size:14px;line-height:1.1;letter-spacing:-.02em;font-weight:800}.brand-symbol{width:43px;height:43px;background:var(--red);color:white;display:grid;place-items:center;font-size:30px;letter-spacing:-.08em}.header nav{display:flex;gap:34px;font-size:14px;font-weight:600}.header nav a:hover{color:var(--red)}.header-actions{display:flex;align-items:center;gap:22px}.header select{border:0;background:transparent;cursor:pointer;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;background:var(--red);color:white;padding:16px 23px;border:1px solid transparent;border-radius:4px;min-height:54px;font-size:14px;font-weight:700;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#c93623}.button.small{padding:11px 19px;min-height:44px}.button.outline{background:transparent;color:var(--ink);border-color:#cdd1cc}.button.outline:hover{background:var(--soft)}.button.light{background:white;color:var(--ink)}.button.light:hover{background:#eee}.button.full{width:100%}.button:disabled{cursor:default;opacity:.4}.overline{font-size:12px;font-weight:700;letter-spacing:.11em;line-height:1.6}.red-line{width:24px;height:2px;background:var(--red);display:inline-block;vertical-align:middle;margin-right:10px}
.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:7%;padding-top:58px;padding-bottom:58px;align-items:center}.hero h1{font-size:clamp(40px,4.4vw,67px);line-height:1.13;margin:27px 0 22px;letter-spacing:-.055em;overflow-wrap:break-word}.muted-title{color:#828881}.hero-description{color:var(--muted);max-width:485px;font-size:17px;line-height:1.7;margin-bottom:30px}.hero-bottom{margin-top:45px;display:flex;gap:20px;border-top:1px solid var(--line);padding-top:18px;align-items:center}.hero-bottom>span{font-size:12px;font-weight:700;white-space:nowrap}.hero-bottom p{font-size:12px;color:var(--muted)}.hero-images{position:relative;padding:0 0 26px}.hero-main-image{display:block;position:relative;background:#f5f5f2}.hero-main-image img{width:100%;aspect-ratio:1/1;object-fit:contain;mix-blend-mode:multiply;padding:8px 8px 36px}.image-caption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 18px;display:flex;justify-content:space-between;gap:12px;background:rgba(255,255,255,.95);font-size:13px}.hero-side-note{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:12px;color:var(--muted)}.hero-side-note br{display:none}.edition{font-size:14px;color:var(--ink);font-weight:700}
.catalog{padding-top:54px;border-top:1px solid var(--line);padding-bottom:72px}.section-heading{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;margin-bottom:35px}.section-heading h2{font-size:clamp(30px,3vw,44px);margin-top:12px}.section-heading>.overline,.section-heading .overline{color:var(--muted)}.section-heading>p{max-width:300px;font-size:14px;color:var(--muted)}.catalog-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:36px}.category-menu{align-self:start;position:sticky;top:115px}.category-menu button{border:0;background:transparent;width:100%;text-align:left;display:flex;justify-content:space-between;gap:10px;padding:15px 16px;font-size:14px;border-radius:4px;line-height:1.3;margin-bottom:4px}.category-menu button span:last-child{color:#8b918d;font-size:12px;flex-shrink:0}.category-menu button:hover{background:var(--soft)}.category-menu button[aria-pressed=true]{background:var(--ink);color:white}.category-menu button[aria-pressed=true] span:last-child{color:#c5cdc7}.sidebar-note{border-top:1px solid var(--line);margin-top:30px;padding:24px 12px}.tiny-label{font-size:11px;font-weight:800;letter-spacing:.08em}.sidebar-note p{font-size:14px;color:var(--muted);margin:14px 0}.sidebar-note a{font-size:13px;font-weight:700;color:var(--red)}.catalog-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding:0 0 18px;min-height:42px}.catalog-toolbar p{font-size:14px;color:var(--muted)}.catalog-toolbar>span{font-size:12px;white-space:nowrap;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.product-card{border:0;background:transparent;padding:0;text-align:left;width:100%;display:flex;flex-direction:column}.product-picture{width:100%;aspect-ratio:1;overflow:hidden;background:var(--soft);position:relative}.product-picture img{width:100%;height:100%;object-fit:contain;transition:transform .3s;mix-blend-mode:multiply}.product-card:hover img{transform:scale(1.045)}.product-card:hover .product-name{color:var(--red)}.product-arrow{position:absolute;bottom:12px;right:12px;width:33px;height:33px;display:grid;place-items:center;background:white;border-radius:50%;font-size:20px}.product-category{font-size:11px;color:var(--muted);margin-top:15px;letter-spacing:.06em;text-transform:uppercase}.product-name{font-size:16px;line-height:1.45;font-weight:600;letter-spacing:-.025em;margin-top:6px}.product-meta{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.5}.product-card.text-only{border:1px solid var(--line);padding:25px;justify-content:center;min-height:190px}.product-card.text-only .product-category{color:var(--red);margin:0}.product-card.text-only .product-name{font-size:22px;margin:16px 0}.text-request{font-size:13px;margin-top:20px}.catalog-content>#showMore{margin-top:28px}.range-more{margin-top:28px;border-top:1px solid var(--line);padding-top:14px;font-size:14px}summary{cursor:pointer;font-weight:600;padding:12px 0;line-height:1.5}.range-more #rangeList{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:15px}.range-group strong{font-size:14px}.range-group p{font-size:13px;color:var(--muted);margin-top:6px}.category-feature{padding:30px;background:#eff2ee;margin-bottom:26px;border-left:3px solid var(--red)}.category-feature .overline{color:var(--muted);font-size:11px}.category-feature h3{font-size:28px;margin:13px 0}.category-feature>p{max-width:650px;color:var(--muted);margin-bottom:22px;font-size:16px}.feature-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.feature-options span{padding:6px 12px;border:1px solid #cbd2ca;font-size:13px;border-radius:3px}
.custom{padding-bottom:75px}.custom-panel{background:var(--red);color:white;display:grid;grid-template-columns:1.12fr 1fr;gap:12%;padding:60px}.custom-intro .overline{opacity:.8}.custom-intro h2{font-size:clamp(32px,4vw,56px);margin:23px 0}.custom-intro>p:not(.overline){color:#ffede6;line-height:1.7;max-width:510px;font-size:16px}.custom-intro>.button{margin-top:29px}.custom-options{display:flex;flex-direction:column;justify-content:center}.custom-options>div{position:relative;padding:24px 0 24px 38px;border-bottom:1px solid #ffffff40}.custom-options>div:first-child{padding-top:0}.custom-options>div:last-child{border-bottom:0;padding-bottom:0}.custom-options>div>span{position:absolute;left:0;font-size:12px;opacity:.7}.custom-options h3{font-size:23px;line-height:1.3}.custom-options p{margin-top:12px;font-size:15px;line-height:1.7;color:#ffede6}.process{padding-bottom:70px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.steps article{padding-top:18px;border-top:1px solid #bcc2bc}.steps article>span{color:var(--red);font-size:13px;font-weight:700}.steps h3{font-size:22px;margin:20px 0 12px}.steps p{font-size:14px;line-height:1.75;color:var(--muted)}.client-strip{margin-top:44px;border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;gap:35px}.client-strip>p{font-size:12px;color:var(--muted);width:125px;flex-shrink:0}.client-strip>div{display:flex;gap:32px;align-items:center;justify-content:space-around;flex:1;overflow:auto}.client-strip img{height:46px;width:85px;object-fit:contain;flex-shrink:0;filter:grayscale(1);opacity:.7}
.contact{background:var(--soft);padding:60px 0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-copy h2{font-size:clamp(34px,3.8vw,54px);margin:24px 0}.contact-copy>p:not(.overline){max-width:390px;font-size:16px;line-height:1.7;color:var(--muted)}.contact-email{display:block;font-size:clamp(16px,1.9vw,24px);letter-spacing:-.025em;margin:32px 0 18px;overflow-wrap:anywhere}.contact-links{display:flex;gap:22px;flex-wrap:wrap;font-size:14px}.contact-links a{border-bottom:1px solid #a2aba2;padding-bottom:4px}.phone{font-size:14px;display:block;color:var(--muted);margin-top:20px}form label{display:block;margin-bottom:18px}form label>span{font-size:13px;display:block;margin-bottom:8px;font-weight:600}input:not([type=range]):not([type=file]){width:100%;background:white;border:1px solid #d9ded8;min-height:50px;padding:13px 14px;border-radius:3px;line-height:1.4;min-width:0}.form-row{display:grid;grid-template-columns:.7fr 1.3fr;gap:16px}.form-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:7px}.email-option{border:0;background:transparent;font-size:13px;text-decoration:underline;text-underline-offset:4px;padding:14px 0 8px}.faq{margin-top:28px}.faq details{border-top:1px solid #d4dad3}.faq summary{font-size:14px}.faq p{font-size:14px;color:var(--muted);padding-bottom:15px}footer{padding-top:28px;padding-bottom:28px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:12px;color:var(--muted)}.footer-brand{font-size:13px;font-weight:800;color:var(--ink)}
dialog{width:min(1080px,calc(100% - 40px));max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:6px;background:white;color:var(--ink);overflow:auto;overscroll-behavior:contain}dialog::backdrop{background:rgba(17,24,20,.6);backdrop-filter:blur(5px)}.close-dialog{position:sticky;display:flex;align-items:center;justify-content:center;float:right;top:12px;margin:12px 12px -54px 0;z-index:3;width:40px;height:40px;background:white;border:1px solid var(--line);border-radius:50%;font-size:28px;line-height:1}.detail-layout{display:grid;grid-template-columns:1fr 1fr}.detail-gallery{padding:28px;background:var(--soft);min-width:0;align-self:start}.detail-gallery>img{width:100%;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply}.thumbnails{display:flex;gap:8px;margin-top:15px;overflow:auto;padding-bottom:5px}.thumbnails button{padding:0;background:white;border:2px solid transparent;flex-shrink:0}.thumbnails button.active{border-color:var(--red)}.thumbnails img{width:63px;height:63px;object-fit:cover}.detail-copy{padding:40px 35px}.detail-copy h2{font-size:30px;line-height:1.2;margin:14px 0 18px}.detail-copy>p:not(.overline){font-size:15px;line-height:1.8;color:var(--muted);margin:18px 0}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips span{background:var(--soft);padding:5px 9px;font-size:12px}.detail-copy details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px}.detail-copy summary{font-size:14px}.detail-copy dl{margin:0 0 15px}.detail-copy dl>div{padding:10px 0;border-top:1px solid var(--line);font-size:13px}.detail-copy dt{color:var(--muted);margin-bottom:4px}.detail-copy dd{margin:0}.detail-copy>.button+.button{margin-top:10px}.detail-layout.no-image{grid-template-columns:1fr}.detail-layout.no-image .detail-copy{max-width:780px}.logo-studio{border-top:1px solid var(--line);padding:35px}.studio-heading h3{font-size:26px}.studio-heading p{color:var(--muted);font-size:14px;margin-top:10px}.studio-layout{display:grid;grid-template-columns:1fr .65fr;gap:30px;margin-top:22px}.studio-layout canvas{width:100%;background:var(--soft);touch-action:none;border:1px solid var(--line)}.studio-controls>label{display:block;margin-bottom:18px;font-size:14px}.studio-controls input[type=range]{display:block;width:100%;accent-color:var(--red);margin:12px 0}.file-label{border:1px solid #cbd2ca;background:var(--soft);padding:14px}.file-label input{display:block;margin-top:12px;width:100%;font-size:12px}.studio-controls p{font-size:12px;color:var(--muted);margin-top:18px}.studio-controls label>span{font-weight:600}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:80px}.hero h1{font-size:72px}}
@media(max-width:1100px){.shell{width:calc(100% - 56px)}.header{padding:0 28px;gap:16px}.header nav{gap:20px}.hero{gap:4%;padding-top:36px}.hero h1{font-size:44px}.hero .overline{font-size:10px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:5px;margin-top:28px}.catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-panel{padding:42px;gap:7%}.contact-layout{gap:7%}}
@media(max-width:760px){html{scroll-padding-top:85px}.shell{width:calc(100% - 36px)}.header{height:74px;padding:0 18px;gap:12px}.header nav{display:none}.brand{font-size:12px;gap:9px}.brand-symbol{width:36px;height:36px;font-size:26px}.header-actions{gap:10px}.header-actions .button{padding:10px 12px;font-size:12px;min-height:40px}.hero{grid-template-columns:1fr;gap:30px;padding-top:34px;padding-bottom:34px}.hero h1{font-size:clamp(39px,8.8vw,58px);margin-top:21px;line-height:1.13}.hero .overline{font-size:10px;letter-spacing:.065em}.hero-description{font-size:16px;margin-bottom:23px;max-width:520px}.hero-bottom{display:none}.hero-images{padding-bottom:0}.hero-main-image img{aspect-ratio:1.4;object-fit:contain;padding:0 35px 40px}.image-caption{font-size:12px;bottom:12px;left:12px;right:12px;padding:11px}.hero-side-note{margin-top:10px;font-size:11px}.catalog{padding-top:32px;padding-bottom:40px}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:31px}.section-heading>p{margin-top:15px;max-width:400px}.catalog-layout{grid-template-columns:1fr;gap:21px}.category-menu{position:static;min-width:0}.category-menu #categories{display:flex;overflow:auto;gap:7px;padding:0 0 8px}.category-menu button{width:auto;flex-shrink:0;padding:11px 14px;border:1px solid var(--line);font-size:13px;margin:0;gap:8px}.sidebar-note{display:none}.catalog-toolbar{gap:12px}.catalog-toolbar p{font-size:13px}.product-grid{gap:22px 12px}.product-name{font-size:14px}.product-category{font-size:10px;letter-spacing:.025em;margin-top:10px}.product-meta{font-size:11px}.product-arrow{width:27px;height:27px;bottom:8px;right:8px;font-size:17px}.product-card.text-only{padding:18px;min-height:180px}.product-card.text-only .product-name{font-size:18px}.category-feature{padding:23px}.category-feature h3{font-size:26px}.custom{padding-bottom:42px}.custom-panel{padding:29px 24px;grid-template-columns:1fr;gap:36px}.custom-intro h2{font-size:41px}.custom-intro>p:not(.overline){font-size:15px}.custom-options h3{font-size:21px}.custom-options p{font-size:14px}.custom-options>div{padding-top:20px;padding-bottom:20px}.process{padding-bottom:42px}.steps{grid-template-columns:1fr 1fr;gap:27px 22px}.steps h3{font-size:20px}.steps p{font-size:14px}.client-strip{gap:17px;display:block;margin-top:29px}.client-strip>p{width:auto;margin-bottom:20px}.client-strip>div{justify-content:flex-start;gap:25px}.client-strip img{height:36px;width:65px}.contact{padding:35px 0}.contact-layout{grid-template-columns:1fr;gap:34px}.contact-copy h2{font-size:37px}.contact-copy h2 br{display:none}.contact-email{font-size:20px;margin:22px 0 15px}.form-row{gap:12px}footer{flex-wrap:wrap;padding-top:23px;padding-bottom:23px;gap:13px}footer p{order:3;width:100%}dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.detail-layout{grid-template-columns:1fr}.detail-gallery{padding:18px}.detail-gallery>img{max-height:340px}.detail-copy{padding:26px 23px}.detail-copy h2{font-size:27px}.logo-studio{padding:23px}.studio-layout{grid-template-columns:1fr}.studio-controls input[type=range]{min-height:26px}.range-more #rangeList{grid-template-columns:1fr}.detail-copy>p:not(.overline){font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Four photo covers form the primary product navigation. */
.hero{grid-template-columns:1fr 1fr;gap:5%;padding-top:36px;padding-bottom:38px}
.hero-images{width:100%;max-width:550px;justify-self:end;padding:0;min-width:0}
.hero h1{font-size:clamp(40px,4.3vw,65px)}
.muted-title{color:var(--red)}
.photo-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
.photo-category{display:block;min-width:0;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#fff;transition:box-shadow .2s,transform .2s}
.photo-category-image{display:block;aspect-ratio:1;overflow:hidden}
.photo-category-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.photo-category-label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;min-height:66px}
.photo-category-label>span{min-width:0}
.photo-category-label strong{display:block;font-size:13px;line-height:1.35;letter-spacing:-.02em}
.photo-category-label small{display:block;font-size:10px;line-height:1.4;color:var(--muted);margin-top:4px}
.photo-category-label b{display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;border-radius:50%;background:var(--soft);font-size:18px;font-weight:500}
.photo-category:hover{box-shadow:0 12px 30px #20232212;transform:translateY(-3px)}
.photo-category:hover img{transform:scale(1.025)}
.photo-category:hover .photo-category-label b{background:var(--ink);color:#fff}
.hero-side-note{font-size:10px;margin-top:13px;gap:12px}.edition{font-size:12px}
.product-picture{border-radius:8px}.product-picture img{mix-blend-mode:normal}
.image-note{font-size:12px;color:var(--muted);line-height:1.65;margin-top:13px}
.thumbnails img{object-fit:contain}
@media(max-width:1100px){.hero{gap:4%}.hero h1{font-size:44px}.photo-category-label{padding:10px;min-height:66px}.photo-category-label strong{font-size:12px}.photo-category-label small{font-size:10px}.photo-menu{gap:12px}.hero .overline{font-size:9px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:30px;gap:27px}.hero-copy{max-width:560px}.hero h1{font-size:clamp(36px,8.5vw,52px);margin:18px 0}.hero-description{font-size:15px;margin-bottom:20px}.hero-images{max-width:560px;justify-self:center}.photo-menu{gap:13px 12px}.photo-category{border-radius:8px}.photo-category-label{padding:10px;min-height:65px;gap:5px}.photo-category-label strong{font-size:12px}.photo-category-label small{font-size:9px}.photo-category-label b{width:23px;height:23px;font-size:16px}.hero-side-note{margin-top:12px}.hero .overline{font-size:9px}}
@media(max-width:360px){.photo-category-label strong{font-size:11px}.photo-category-label b{display:none}.photo-category-label small{font-size:9px}}
/* Compact source/edited gallery switch. */
.gallery-modes{display:flex;gap:6px;margin:0 0 12px;flex-wrap:wrap}.gallery-modes[hidden]{display:none}.gallery-modes button{font:inherit;font-size:12px;padding:10px 14px;border:1px solid #d5d5ce;border-radius:99px;background:#fff;color:#222;cursor:pointer}.gallery-modes button[aria-pressed="true"]{background:#172d29;color:#fff;border-color:#172d29}.gallery-modes button:focus-visible{outline:3px solid #cbf347;outline-offset:3px}
/* Intro without the removed category-card block. */
.hero{display:block}.hero-copy{max-width:760px}.hero-description{max-width:650px}.hero-bottom{max-width:650px}

/* One continuous, category-ordered product catalog. */
.category-menu a{width:100%;display:flex;justify-content:space-between;gap:10px;padding:15px 16px;margin-bottom:4px;border-radius:4px;font-size:14px;line-height:1.3}
.category-menu a span:last-child{color:#8b918d;font-size:12px;flex-shrink:0}
.category-menu a:hover,.category-menu a:focus-visible{background:var(--soft)}
.catalog-groups{display:flex;flex-direction:column;gap:66px}
.catalog-group{scroll-margin-top:115px}
.catalog-group-heading{display:grid;grid-template-columns:38px minmax(0,1fr) 34px;gap:16px;align-items:start;padding:0 0 20px;margin-bottom:25px;border-bottom:1px solid var(--ink)}
.catalog-group-heading>span,.catalog-group-heading>strong{font-size:12px;line-height:1.5;font-weight:700;color:var(--red)}
.catalog-group-heading>strong{text-align:right;color:var(--muted)}
.catalog-group-heading h3{font-size:clamp(24px,2.6vw,36px)}
.catalog-group-heading p{max-width:680px;margin-top:9px;color:var(--muted);font-size:14px;line-height:1.65}
@media(max-width:760px){.category-menu a{width:auto;flex-shrink:0;padding:11px 14px;border:1px solid var(--line);margin:0;font-size:13px}.catalog-groups{gap:50px}.catalog-group{scroll-margin-top:90px}.catalog-group-heading{grid-template-columns:28px minmax(0,1fr) 28px;gap:10px;margin-bottom:20px;padding-bottom:16px}.catalog-group-heading h3{font-size:24px}.catalog-group-heading p{font-size:13px}}
