@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/b0ae3e89a7d3ef2b.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/376427b5322148d8.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/b79a2ea7a38f33fd.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/2a8e7f713ee79fbc.ttf) format('truetype');
}
@font-face {
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/fecf4861d5202405.ttf) format('truetype');
}
@font-face {
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/mossprint/assets/media/a99e3db500762027.ttf) format('truetype');
}

.menu-product-link{display:block;padding:5px 0;text-align:left;font-size:13px;border-radius:0}.menu-product-link:hover{color:var(--action)}.mobile-subgroup .menu-product-link{padding:7px 12px;font-size:14px}.category-dialog-grid .menu-product-link{display:flex;justify-content:space-between}
:root{--canvas:#faf9f6;--paper:#f3f0e8;--ink:#181918;--moss:#696f58;--moss-deep:#565c48;--moss-tint:#ecede4;--accent:var(--moss);--action:#e85a3f;--line:#d9d7ce;--muted:#65665f;--white:#ffffff;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;background:var(--canvas);color:var(--ink);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none}img{display:block;max-width:100%}svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.4;fill:none}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}h2{font-size:clamp(38px,4vw,58px);line-height:1.1}h3{font-size:16px;line-height:1.35;font-weight:550}p{line-height:1.65}em{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1400px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.13em;line-height:1.5}.muted{color:var(--muted);font-size:13px}.section{padding-block:64px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:12px}.text-link{font-size:14px;border-bottom:1px solid;padding-block:5px;white-space:nowrap}.text-link span{margin-left:14px}.button-row{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:16px 23px;font-size:14px;font-weight:500;border:1px solid var(--ink);transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.dark{background:var(--ink);color:var(--paper)}.button.dark:hover{background:#3b3d35}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent}.announcement{background:var(--ink);color:var(--paper);font-size:12px;display:flex;justify-content:center;gap:40px;padding:9px 24px}.announcement a{color:#d5d6be}.announcement a span{margin-left:8px}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,249,246,.97);border-bottom:1px solid var(--line)}.header-main{height:85px;display:flex;align-items:center;gap:30px}.wordmark{display:inline-flex;align-items:center;font-size:29px;line-height:1;letter-spacing:-1.4px;font-weight:600;white-space:nowrap}.wordmark-divider{display:inline-block;height:25px;width:1px;background:currentColor;margin:0 9px;transform:rotate(15deg)}.brand-dot{font-size:11px;align-self:flex-start;margin-left:4px;margin-top:1px}.header-note{font-size:12px;color:var(--muted);margin-left:10px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:25px;font-size:13px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:40px;padding:7px}.bag-button{gap:6px}.bag-button span{font-size:12px}.quote-button{background:var(--ink);color:var(--paper);padding:11px 16px;font-size:13px}.quote-button span{margin-left:16px}.text-button{padding:0;font-size:13px}.main-nav{display:flex;justify-content:space-between;gap:15px;height:54px;align-items:stretch}.main-nav>button{font-size:15px;font-weight:600;padding:14px 0;border-bottom:2px solid transparent;white-space:nowrap}.main-nav>button:hover,.main-nav>button[aria-expanded=true]{border-color:var(--accent)}.mobile-menu-toggle,.mobile-bottom{display:none}.hero-band{background:var(--paper)}.hero{display:grid;grid-template-columns:.91fr 1.09fr;gap:30px;padding-top:34px;padding-bottom:35px;align-items:center}.hero-copy{padding:34px 0 25px}.tiny-cross{color:var(--accent);font-size:20px;vertical-align:middle;margin-right:10px}.hero h1{font-size:clamp(65px,6.5vw,100px);line-height:.98;margin-top:24px;letter-spacing:-.04em}.hero h1 em{color:var(--action)}.hero-description{color:var(--muted);font-size:16px;margin:28px 0 30px}.hero-foot{display:flex;align-items:center;gap:14px;margin-top:45px;font-size:12px;color:var(--muted)}.swatch-dots{display:flex;padding-left:2px}.swatch-dots i{width:22px;height:22px;border-radius:50%;border:2px solid var(--paper);margin-left:-3px;background:#dccbab}.swatch-dots i:nth-child(2){background:#bbb3c9}.swatch-dots i:nth-child(3){background:var(--accent)}.swatch-dots i:nth-child(4){background:var(--moss-deep)}.hero-visual{position:relative;align-self:stretch;min-height:470px;background:#e6d9ce}.hero-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.image-note{position:absolute;inset:auto 18px 15px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.09em;color:#242622}.round-note{position:absolute;right:23px;bottom:42px;background:var(--paper);border:1px solid var(--ink);border-radius:50%;width:104px;height:104px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:10px;letter-spacing:.12em;transform:rotate(11deg)}.round-note em{font:26px/1 var(--serif);letter-spacing:0;margin:4px}.round-note span{font-size:20px}.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.category-card{text-align:left;padding:0;width:100%}.category-art{aspect-ratio:1.24;overflow:hidden;background:#e5ded2;position:relative}.atlas{background-image:url('/wp-content/themes/mossprint/assets/media/cfb78ac6dd5202d7.webp');background-size:400% 200%;background-position:var(--x,0%) var(--y,0%);transition:transform .5s;aspect-ratio:1}.category-card .atlas{height:100%;aspect-ratio:auto;background-size:400% 248%}.category-card:hover .atlas,.product-card:hover .atlas{transform:scale(1.035)}.category-title{display:flex;justify-content:space-between;gap:8px;align-items:start;font-size:13px;font-weight:500;padding-top:13px;line-height:1.4}.category-title span:last-child{font-size:17px;font-weight:400}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}.product-card{display:block;padding:0;text-align:left}.product-art{overflow:hidden;position:relative}.product-tag{position:absolute;top:13px;left:13px;background:rgba(255,254,251,.9);padding:4px 8px;font-size:10px;letter-spacing:.08em;z-index:1}.product-title{display:flex;justify-content:space-between;gap:8px;padding-top:15px}.product-card p{font-size:12px;color:var(--muted);margin-top:5px}.product-meta{font-size:11px;margin-top:13px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px;color:var(--muted)}.footer{border-top:1px solid #3b3d38;padding-top:55px;background:var(--ink);color:var(--paper)}.footer-top{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:30px}.footer-brand p{font:400 18px/1.5 var(--sans);letter-spacing:0;margin-top:6px}.footer h3{font-size:11px;letter-spacing:.13em;margin-bottom:20px}.footer-top>div>a:not(.wordmark),.footer-top>div>button{display:block;font-size:13px;padding:0;margin-bottom:10px;text-align:left}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#bebfb4;border-top:1px solid #3b3d38;padding-block:24px;margin-top:45px}.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:100}.skip:focus{top:10px}.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}.mega-menu{position:absolute;left:0;right:0;background:var(--canvas);border-bottom:1px solid var(--line);box-shadow:0 18px 25px #1819180d;padding:35px 0}.mega-inner{display:grid;grid-template-columns:repeat(4,1fr) 1.1fr;gap:25px}.mega-inner h3{font-size:11px;letter-spacing:.08em;margin-bottom:15px;color:var(--moss)}.mega-inner button{display:block;padding:5px 0;text-align:left;font-size:13px}.mega-inner button:hover{color:var(--accent)}.mega-feature .atlas{aspect-ratio:1.3;background-size:400% 260%}.mega-feature p{font:24px var(--serif);margin-top:12px}.mega-all{margin-top:20px;font-size:13px;border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between}.mobile-nav{max-height:75dvh;overflow:auto;padding:20px 25px}.mobile-nav details{border-bottom:1px solid var(--line);padding:14px 0}.mobile-nav summary{font-size:15px;cursor:pointer}.mobile-nav details button{display:block;text-align:left;padding:7px 12px;font-size:14px}.mobile-nav .mobile-shortcuts{display:flex;justify-content:space-between;margin-bottom:15px;font-size:14px;color:var(--accent)}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(750px,calc(100% - 32px));max-height:90dvh;padding:28px 36px 36px}dialog::backdrop{background:#18191880;backdrop-filter:blur(5px)}.dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}dialog h2{font-size:44px;margin-bottom:18px}dialog p{color:var(--muted);margin-bottom:18px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:13px 22px;z-index:60;font-size:14px;box-shadow:0 6px 30px #0002}
@media(min-width:1600px){.hero-visual{min-height:570px}}@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.header-note{display:none}.header-actions{gap:20px}.main-nav>button{font-size:12px}.main-nav{gap:6px}.hero h1{font-size:76px}.hero-visual{min-height:430px}.hero .button-row{gap:18px}.hero .button{padding:14px 18px}.category-grid{gap:13px}.category-title{font-size:12px}.hero-foot{font-size:11px}.section{padding-block:50px}.product-title h3{font-size:14px}.footer-top{grid-template-columns:1.7fr repeat(4,1fr)}}
@media(max-width:900px){.main-nav{display:none}.mobile-menu-toggle{display:flex}.header-main{height:76px;gap:13px}.header-actions{gap:12px}.wordmark{font-size:25px}.wordmark-divider{height:22px;margin:0 7px}.header-main .desktop-only{display:none}.hamburger,.hamburger:before,.hamburger:after{display:block;height:1px;background:var(--ink);width:19px;position:relative}.hamburger:before,.hamburger:after{content:'';position:absolute;left:0;top:-6px}.hamburger:after{top:6px}.hero{grid-template-columns:.95fr 1.05fr;gap:20px}.hero h1{font-size:62px}.hero-description{font-size:14px}.hero .button-row{align-items:flex-start;flex-direction:column;gap:14px}.hero-foot{margin-top:25px}.hero-visual{min-height:410px}.hero .eyebrow{font-size:10px}.category-grid{grid-template-columns:repeat(3,1fr);gap:25px}.category-title{font-size:14px}.product-grid{gap:30px 16px}.product-meta{font-size:10px}.footer-top{grid-template-columns:repeat(4,1fr)}.footer-brand{grid-column:1/-1}.catalog-controls .muted{display:none}.mega-menu{display:none!important}.image-note{display:none}.hero-foot .swatch-dots{display:none}}
@media(max-width:600px){html{scroll-padding-top:95px}.wrap{width:calc(100% - 36px)}.announcement{padding:8px 10px;font-size:10px}.announcement a{display:none}.header-main{height:67px}.header-main .wordmark{font-size:23px}.header-actions{gap:4px}.header-main{gap:7px}.brand-dot{font-size:9px}.hero{grid-template-columns:1fr;gap:22px;padding-top:20px;padding-bottom:26px}.hero-copy{padding:12px 2px 0}.hero h1{font-size:clamp(62px,17vw,90px);margin-top:18px}.hero-description{font-size:15px;margin:21px 0 24px}.hero .button-row{flex-direction:row;align-items:center;gap:25px}.hero .button{font-size:12px;padding:14px 16px;gap:16px}.hero .text-link{font-size:12px}.hero-foot{display:none}.hero-visual{min-height:0;aspect-ratio:1.12}.round-note{width:85px;height:85px;right:15px;bottom:17px;font-size:8px}.round-note em{font-size:23px}.section{padding-block:36px}.section-heading{gap:15px;align-items:flex-start;margin-bottom:23px}.section-heading .eyebrow{font-size:10px;margin-bottom:8px}h2{font-size:39px}.categories .section-heading .text-link{display:none}.category-grid{grid-template-columns:repeat(6,145px);gap:14px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory}.category-card{scroll-snap-align:start}.category-title{font-size:12px}.category-art{aspect-ratio:1.2}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 14px}.product-title h3{font-size:13px}.product-card p{font-size:11px}.product-meta{font-size:10px;gap:8px}.product-meta span:last-child{display:none}.product-tag{font-size:8px;top:8px;left:8px;padding:3px 6px}.footer{padding-top:35px;padding-bottom:60px}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{margin-bottom:10px}.footer-bottom{flex-wrap:wrap;gap:10px;font-size:10px;padding-block:20px;margin-top:30px}.footer-bottom span:nth-child(2){display:none}.mobile-bottom{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--canvas);border-top:1px solid var(--line);padding:9px 15px calc(9px + env(safe-area-inset-bottom));gap:10px}.mobile-bottom>*{flex:1;text-align:center;padding:10px;font-size:13px}.mobile-bottom>button{background:var(--ink);color:var(--paper)}dialog{padding:20px;max-height:90dvh}dialog h2{font-size:36px}.toast{bottom:85px;width:90%;text-align:center}.eyebrow{font-size:11px}}
/* Shared rounded controls apply to the homepage and dynamically rendered dialogs. */
:root{--button-radius:999px;--card-button-radius:16px}
button,.button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],.mobile-bottom>a{border-radius:var(--button-radius)}
.quote-progress button{border-radius:0}
.category-card,.product-card,.craft-card,.material-card,.project-card,.journal-card,.upload-tile{border-radius:var(--card-button-radius)}
.category-art,.product-art,.craft-image,.material-card>.atlas,.project-art,.journal-card>img,.journal-atlas{border-radius:var(--card-button-radius)}
.file-drop{border-radius:var(--card-button-radius)}
.quantity-control{border-radius:var(--button-radius);overflow:hidden}
.faq-list summary{border-radius:12px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.category-art>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.category-card:hover img{transform:scale(1.035)}.section-intro{font-size:14px;line-height:1.65;color:var(--muted)}.tactile-banner{position:relative;min-height:410px;margin-top:28px;isolation:isolate;overflow:hidden;background:#d4c6b2}.tactile-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;z-index:-2}.tactile-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eee9dfc9 0%,#eee9df55 40%,transparent 65%);z-index:-1}.tactile-copy{padding-block:60px}.tactile-copy .eyebrow{font-size:11px}.tactile-copy h2{font-size:clamp(65px,6.8vw,105px);margin-top:20px;margin-bottom:22px;line-height:.95}.photo-index{position:absolute;right:26px;bottom:20px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.1em}.craft-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 22px}.craft-card{padding:0;text-align:left}.craft-image{aspect-ratio:1;overflow:hidden}.craft-image .atlas{height:100%;aspect-ratio:auto;background-size:400% 200%}.craft-atlas{height:100%;background-image:url('/wp-content/themes/mossprint/assets/media/8a9d1415a4273250.webp');background-size:400% 200%;background-position:var(--x) var(--y);transition:transform .5s}.craft-card:hover .craft-atlas,.craft-card:hover .atlas{transform:scale(1.035)}.craft-image img{height:100%;width:100%;object-fit:cover}.craft-card-title{display:flex;align-items:center;gap:15px;padding-top:15px}.craft-card-title h3{font:27px var(--serif)}.craft-card-title>span:last-child{margin-left:auto}.craft-card-title .muted{font-size:11px}.effect-links{border-top:1px solid var(--line);padding-top:24px;margin-top:32px;display:flex;align-items:center;gap:25px;flex-wrap:wrap}.effect-links>span{font-size:10px;letter-spacing:.08em;margin-right:auto;color:var(--muted)}.effect-links button{font-size:13px;padding:0}.feature-craft{display:grid;grid-template-columns:1.25fr 1fr;background:var(--paper);margin-block:25px 20px}.feature-photo{position:relative;overflow:hidden;min-height:450px}.feature-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transform:scale(1.12)}.photo-label{position:absolute;left:20px;bottom:20px;font-size:9px;letter-spacing:.1em;background:var(--paper);padding:6px 10px}.feature-copy{padding:55px}.feature-copy h2{font-size:65px;line-height:1;margin-top:20px;margin-bottom:25px}.feature-copy>p:not(.eyebrow){color:var(--muted);font-size:15px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 26px}.tags span{border:1px solid #aeafa2;padding:5px 10px;font-size:10px;border-radius:20px}.feature-copy .text-link{padding-inline:0}.material-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.material-card{padding:0;text-align:left}.material-card>.atlas{aspect-ratio:1.3;background-size:520% 260%;background-position:var(--x) var(--y)}.material-card>div:last-child{position:relative;padding-top:16px}.material-card h3{font:28px var(--serif)}.material-card p{font-size:12px;color:var(--muted);margin-top:3px}.material-card>div:last-child>span{position:absolute;right:0;top:20px}.material-foot{font-size:12px;color:var(--muted);margin-top:24px}.material-foot button{font-size:12px;text-decoration:underline;padding:0}.inspiration{padding:45px 50px;background:var(--moss);color:var(--paper);display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:65px;margin-block:20px 30px}.inspiration h2{font-size:58px;margin:15px 0 20px}.inspiration p:not(.eyebrow){font-size:13px;color:#ecefdf}.upload-tile{position:relative;color:var(--paper);min-height:200px;border:1px dashed #bcc5a2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.upload-tile:hover{background:#ffffff0b}.upload-plus{font:50px var(--serif);line-height:1}.upload-tile>span:not(.upload-plus):not(.upload-arrow){font-size:14px}.upload-tile small{font-size:11px;color:#e5e9d7}.upload-arrow{position:absolute;right:18px;bottom:14px;font-size:23px}.sample-section{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.sample-image{aspect-ratio:1.25;background:#e8dfd2;overflow:hidden;border-radius:var(--card-button-radius)}.sample-image img{width:100%;height:100%;object-fit:cover}.sample-copy h2{font-size:65px;margin:20px 0 25px;line-height:1}.sample-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:410px}.sample-details{margin:25px 0 30px;display:flex;gap:16px;font-size:11px;flex-wrap:wrap}.sample-details span+span{border-left:1px solid #b8b8ac;padding-left:16px}.brands-section{background:var(--paper);margin-top:20px;padding-block:65px}.brand-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.brand-copy h2{font-size:70px;line-height:1;margin:22px 0 25px}.brand-copy p:not(.eyebrow){font-size:15px;color:#5f5a51;max-width:400px;margin-bottom:30px}.brand-collage{position:relative;min-height:470px}.brand-image-main{width:76%;margin-left:auto;transform:rotate(4deg)}.brand-image-main .atlas{aspect-ratio:.92;background-size:400% 184%}.brand-image-secondary{width:48%;position:absolute;left:0;bottom:0;transform:rotate(-7deg);box-shadow:0 8px 28px #64544520}.brand-image-secondary img{width:100%;aspect-ratio:1;object-fit:cover}.brand-caption{position:absolute;right:0;bottom:0;font-size:9px;letter-spacing:.12em;writing-mode:vertical-rl}.more-links{display:grid;grid-template-columns:repeat(4,1fr);gap:0 30px}.more-links button{border-bottom:1px solid var(--line);display:flex;align-items:center;text-align:left;gap:16px;padding:18px 0;font-size:14px}.more-links button>span:first-child{font-size:10px}.more-links button>span:last-child{margin-left:auto}.difference-section{padding-block:65px;background:var(--ink);color:var(--paper);margin-top:15px}.difference-section .section-intro{color:#b4b4a7}.difference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding-top:15px}.difference-grid>div{border-top:1px solid #54554a;padding-top:25px}.difference-grid>div>span{color:#c7ceb0;font:25px var(--serif)}.difference-grid h3{font:30px var(--serif);margin:16px 0 12px}.difference-grid p{font-size:13px;color:#b7b7ac}.network-section{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.network-photo{position:relative;aspect-ratio:1.15;overflow:hidden;border-radius:var(--card-button-radius)}.network-photo img{width:100%;height:100%;object-fit:cover}.network-copy h2{font-size:65px;line-height:1;margin:20px 0 25px}.network-copy>p:not(.eyebrow){color:var(--muted);font-size:15px}.process-list{display:flex;flex-direction:column;gap:10px;margin:25px 0;font-size:12px;color:var(--muted)}.network-copy .text-link{padding-inline:0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-card{padding:0;text-align:left}.project-art{aspect-ratio:1.1;overflow:hidden}.project-art>.atlas{height:100%;aspect-ratio:auto;background-size:400% 220%}.project-card p{font-size:11px;color:var(--muted);margin:17px 0 7px}.project-card h3{font:27px var(--serif);display:flex;justify-content:space-between;gap:10px}.project-card h3 span{font:18px var(--sans)}.audience{padding-block:45px 50px;text-align:center;border-block:1px solid var(--line);margin-block:20px}.audience>p{font:36px/1.2 var(--serif);margin-bottom:30px}.audience>div{display:flex;justify-content:center;gap:65px;font-size:11px;letter-spacing:.08em;color:var(--muted);flex-wrap:wrap}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.journal-card{padding:0;text-align:left}.journal-card>img{aspect-ratio:1.6;width:100%;object-fit:cover}.journal-atlas{aspect-ratio:1.6;overflow:hidden}.journal-atlas .atlas{height:100%;aspect-ratio:auto;background-size:400% 320%}.journal-card>p{font-size:10px;letter-spacing:.08em;color:var(--muted);margin:17px 0 9px}.journal-card h3{font:27px/1.2 var(--serif);display:flex;justify-content:space-between;gap:15px}.journal-card h3 span{font:17px var(--sans)}.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding-bottom:80px}.faq-section h2{font-size:53px;margin:20px 0 30px}.faq-section .text-link{padding-inline:0}.faq-list details{border-top:1px solid var(--line);padding:21px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:30px;font-size:14px;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:22px;line-height:1}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:14px;color:var(--muted);margin-top:16px;padding-right:35px}.final-cta{background:var(--moss);color:var(--white);padding-block:65px 75px;overflow:hidden}.final-cta>.wrap{position:relative}.final-cta h2{font-size:clamp(68px,7.3vw,112px);line-height:.97;margin:28px 0 35px}.final-cta .eyebrow{font-size:11px}.final-cta .button-row{gap:35px}.cta-mark{font-family:Georgia,serif;font-size:370px;line-height:1;position:absolute;right:5%;top:3%;transform:rotate(10deg)}.image-disclosure{font-size:10px!important;color:var(--muted);margin-top:10px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:28px}.product-detail h2{font-size:38px;margin-top:12px}.product-detail p{font-size:14px}.detail-note{font-size:12px!important;color:var(--muted);margin-top:20px;line-height:1.65}.secondary-action{font-size:12px;margin-top:15px;text-decoration:underline;text-align:left;padding:0}.dialog-banner{width:100%;max-height:280px;object-fit:cover;margin-bottom:25px}.category-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.category-dialog-grid h3{font-size:11px;letter-spacing:.06em;color:var(--moss);margin:10px 0}.category-dialog-grid button{display:flex;justify-content:space-between;text-align:left;width:100%;padding:7px 0;font-size:14px;gap:15px}.category-dialog-grid button:hover,.material-options button:hover{color:var(--accent)}.material-options{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.material-options button{padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:15px}.form-label{display:block;font-size:13px;margin:18px 0 7px}.search-input,form input:not([type=file]),form select,form textarea{display:block;width:100%;border:1px solid #bcbdb0;background:var(--white);padding:13px;font-size:15px;color:var(--ink);border-radius:0}.search-input{margin-bottom:22px}.search-results>button,.search-results>.search-product-link{display:flex;justify-content:space-between;text-align:left;gap:20px;padding:13px 0;width:100%;border-bottom:1px solid var(--line);font-size:16px}.search-results small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.search-results>.eyebrow{margin:20px 0 5px}.bag-item{display:flex;align-items:center;gap:25px;border-block:1px solid var(--line);padding-block:20px;margin-bottom:25px}.bag-item img{width:160px;aspect-ratio:1.2;object-fit:cover}.bag-item h3{font-size:20px}.bag-item p{font-size:12px;margin:8px 0 15px}.quantity-control{display:inline-flex;border:1px solid var(--line);align-items:center}.quantity-control button{width:36px;height:36px}.quantity-control output{padding-inline:10px;font-size:14px}.quote-progress{display:flex;gap:15px;border-bottom:1px solid var(--line);margin-bottom:28px}.quote-progress button{padding:0 0 14px;text-align:left;flex:1;border-bottom:2px solid transparent;color:var(--muted);font-size:12px}.quote-progress button span{display:block;font-size:10px;margin-bottom:5px}.quote-progress button.active{color:var(--ink);border-bottom-color:var(--accent)}.quote-progress button:disabled{cursor:default;opacity:.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-nav{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);padding-top:20px;margin-top:30px}.quote-nav .text-link{padding-inline:0}.file-drop{min-height:190px;border:1px dashed var(--moss);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center;cursor:pointer;padding:25px}.file-drop>span{font-size:35px}.file-drop strong{font-weight:500;font-size:16px}.file-drop small{font-size:12px;color:var(--muted)}.file-list>div{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;overflow-wrap:anywhere}.file-list small{display:block;font-size:11px;color:var(--muted)}.file-list button{font-size:24px}.form-error{color:#a13222!important;font-size:13px;margin-top:15px}.brief-summary{display:grid;gap:6px;background:#e6e3d8;padding:20px;margin-bottom:20px}.brief-summary span{font-size:10px;color:var(--muted);letter-spacing:.06em}.brief-summary strong{font-size:15px;font-weight:500;margin-bottom:10px}.article-intro{font:28px var(--serif);color:var(--ink)!important}.article p{font-size:16px;line-height:1.8}.guide-list{padding-left:20px;color:var(--muted);font-size:15px;margin-bottom:25px}.guide-list li{padding-bottom:10px}.mobile-subgroup{padding:12px 0 5px 10px}.mobile-subgroup .eyebrow{font-size:10px;color:var(--muted);margin-bottom:6px}
@media(max-width:1150px){.feature-copy{padding:40px}.feature-copy h2,.sample-copy h2,.network-copy h2{font-size:55px}.sample-section,.network-section{gap:50px}.brand-layout{gap:45px}.brand-copy h2{font-size:62px}.brand-collage{min-height:400px}.inspiration{gap:40px;padding:40px}.inspiration h2{font-size:51px}.craft-card-title{gap:10px}.craft-card-title h3{font-size:23px}.effect-links{gap:18px}.effect-links>span{width:100%}.faq-section{gap:45px}.audience>div{gap:30px}.cta-mark{font-size:300px;right:1%;top:10%}.sample-details{gap:9px}.sample-details span+span{padding-left:9px}.difference-grid{gap:25px}}
@media(max-width:900px){.craft-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.craft-card-title .muted{display:none}.craft-card-title h3{font-size:23px}.feature-copy{padding:30px}.feature-copy h2{font-size:50px}.feature-photo{min-height:390px}.feature-copy>p:not(.eyebrow){font-size:14px}.material-grid{gap:18px}.material-card p{font-size:11px}.inspiration{gap:25px;grid-template-columns:1.2fr 1fr;padding:32px}.inspiration h2{font-size:47px}.sample-section{gap:35px}.sample-copy h2,.network-copy h2{font-size:48px}.sample-copy .eyebrow{font-size:10px}.sample-copy>p:not(.eyebrow),.network-copy>p:not(.eyebrow){font-size:14px}.sample-details{gap:6px;font-size:10px}.sample-details span+span{padding-left:6px}.brand-copy h2{font-size:54px}.brand-copy p:not(.eyebrow){font-size:14px}.brand-collage{min-height:350px}.more-links{grid-template-columns:repeat(2,1fr)}.difference-grid{grid-template-columns:repeat(2,1fr);gap:30px}.network-section{gap:35px}.network-photo{aspect-ratio:.9}.project-card h3{font-size:23px}.journal-card h3{font-size:24px}.faq-section{grid-template-columns:1fr;gap:10px}.faq-section>div:first-child{margin-bottom:20px}.faq-section h2{font-size:46px;margin-block:12px 18px}.cta-mark{font-size:250px;top:20%}.section-intro{font-size:12px}.project-grid,.journal-grid{gap:18px}.project-card p{font-size:10px}}
@media(max-width:600px){.tactile-banner{min-height:340px;margin-top:15px}.tactile-copy{padding-block:40px}.tactile-copy .eyebrow{font-size:9px}.tactile-copy h2{font-size:72px;margin-top:22px}.tactile-banner>img{object-position:60% center}.tactile-banner:after{background:linear-gradient(90deg,#eee9dfbf,#eee9df55,transparent)}.photo-index{font-size:8px;right:10px;bottom:15px}.section-intro{display:none}.craft-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.craft-card{scroll-snap-align:start}.craft-card-title h3{font-size:22px}.effect-links{gap:15px 20px;margin-top:20px;padding-top:18px}.effect-links button{font-size:12px}.effect-links>span{font-size:9px}.feature-craft{grid-template-columns:1fr;margin-block:5px 10px}.feature-photo{min-height:0;aspect-ratio:1.25}.feature-copy{padding:30px 25px 35px}.feature-copy h2{font-size:55px;margin:15px 0 20px}.feature-copy>p:not(.eyebrow){font-size:15px}.material-grid{grid-template-columns:repeat(4,200px);gap:15px;overflow:auto;padding-bottom:10px}.material-card>.atlas{aspect-ratio:1.2}.material-card h3{font-size:28px}.material-card p{font-size:12px}.material-foot{font-size:11px}.material-foot button{font-size:11px}#materials .section-heading{display:block}#materials .section-heading>.text-link{font-size:12px;margin-top:17px;padding-inline:0}.inspiration{grid-template-columns:1fr;padding:30px 25px;gap:25px;margin-block:15px 10px}.inspiration h2{font-size:52px}.inspiration p:not(.eyebrow){font-size:14px}.inspiration br:not(h2 br){display:none}.upload-tile{min-height:175px}.upload-tile small{font-size:12px}.sample-section{grid-template-columns:1fr;gap:28px}.sample-image{aspect-ratio:1.15}.sample-copy h2{font-size:57px;margin:15px 0 20px}.sample-copy>p:not(.eyebrow){font-size:15px}.sample-details{font-size:11px;margin:22px 0 26px;gap:10px}.sample-details span+span{padding-left:10px}.brand-layout{grid-template-columns:1fr;gap:40px}.brands-section{padding-block:40px 45px}.brand-copy h2{font-size:62px;margin:18px 0 23px}.brand-copy p:not(.eyebrow){font-size:15px}.brand-collage{min-height:350px;max-width:400px;width:100%;margin:auto}.brand-caption{font-size:8px}.more-links{gap:0 18px}.more-links button{font-size:12px;gap:9px;padding-block:16px}.more-links button>span:first-child{font-size:9px}.difference-section{padding-block:40px}.difference-grid{gap:25px 22px}.difference-grid>div{padding-top:17px}.difference-grid h3{font-size:27px;margin:10px 0}.difference-grid p{font-size:12px}.network-section{grid-template-columns:1fr;gap:30px}.network-photo{aspect-ratio:1.15}.network-copy h2{font-size:55px;margin:16px 0 21px}.network-copy>p:not(.eyebrow){font-size:15px}.process-list{font-size:12px;margin:23px 0}.project-grid{grid-template-columns:1fr;gap:28px}.project-art{aspect-ratio:1.3}.project-card h3{font-size:29px}.project-card p{font-size:11px}.section-heading>.muted{display:none}.audience{padding-block:32px;margin-block:10px}.audience>p{font-size:31px;margin-bottom:25px}.audience>div{display:grid;grid-template-columns:1fr 1fr;gap:20px 15px;font-size:9px}.journal-grid{grid-template-columns:1fr;gap:30px}.journal-card h3{font-size:29px}.journal-card>p{font-size:10px}.faq-section{padding-bottom:40px}.faq-section h2{font-size:44px}.faq-list details{padding-block:20px}.faq-list summary{font-size:14px;gap:25px}.faq-list details>p{padding-right:10px;font-size:14px}.final-cta{padding-block:40px 45px}.final-cta h2{font-size:67px;margin:23px 0 30px;position:relative;z-index:1}.final-cta .eyebrow{font-size:9px;max-width:280px}.cta-mark{font-size:160px;right:-35px;top:30%;opacity:.15}.final-cta .button-row{gap:23px;position:relative;z-index:1}.final-cta .button{font-size:12px;padding:14px 16px;gap:16px}.final-cta .text-link{font-size:12px}.product-detail{grid-template-columns:1fr;gap:10px}.product-detail>div:first-child{max-width:250px;width:100%;margin:auto}.product-detail h2{font-size:38px}.product-detail p{font-size:15px}.category-dialog-grid{gap:20px 15px}.category-dialog-grid button{font-size:12px;gap:8px}.category-dialog-grid h3{font-size:10px}.quote-progress{gap:9px}.quote-progress button{font-size:10px}.quote-progress button span{font-size:9px}.form-grid{grid-template-columns:1fr;gap:0}.form-label{font-size:13px}.bag-item{gap:15px}.bag-item img{width:110px}.bag-item h3{font-size:16px}.bag-item p{font-size:11px}.dialog-banner{max-height:210px}.material-options{gap:10px 15px}.article p{font-size:15px}.detail-note{font-size:12px!important}.quote-nav .button{font-size:13px;padding:13px 16px;gap:12px}}

/* Featured craft film: native transport controls, with an accessible play overlay. */
.feature-video{background:#d9d4c8}
.feature-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature-video .photo-label{top:20px;bottom:auto;pointer-events:none;transition:opacity .2s}
.feature-video.is-playing .photo-label{opacity:0}
.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:13px;padding:13px 23px 13px 13px;background:var(--paper);color:var(--ink);box-shadow:0 4px 30px #0002;font-size:14px;white-space:nowrap}
.film-play:hover{background:white}
.film-play-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:15px;padding-left:2px}
.film-play[hidden],.film-error[hidden]{display:none}
.film-error{position:absolute;bottom:60px;left:20px;right:20px;padding:12px 16px;background:var(--paper);font-size:14px}

/* Project captions: name, city and separate process labels. */
.project-caption{padding-top:20px}
.project-card .project-city,.project-city{font-size:14px;color:var(--muted);margin:8px 0 14px;line-height:1.5}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}
.project-tags>span{font:12px/1.4 var(--sans);border:1px solid var(--line);border-radius:999px;padding:6px 11px;color:var(--ink)}
.project-card .project-tags{margin-bottom:0}

@media(min-width:1151px) and (max-width:1250px){.main-nav>button{font-size:14px}}

.footer h3{color:#bebfb4}.footer a:hover,.footer button:hover{color:var(--white);text-decoration:underline;text-underline-offset:4px}

/* Vermilion highlights the hero word and primary shopping and custom-project actions. */
.quote-button,.hero .button.dark,.final-cta .button[data-action="quote"],.mobile-bottom>button{background:var(--action);color:var(--white);border:1px solid var(--action)}

/* Extend the desktop hero image to the right edge while preserving copy alignment. */
.hero-band{container-type:inline-size;overflow:hidden}
@media(min-width:901px){.hero-visual{margin-right:calc(-1 * max(56px, (100cqw - 1400px) / 2))}}
@media(min-width:901px) and (max-width:1150px){.hero-visual{margin-right:-32px}}

/* Align the hero image with both edges of its background band. */
@media(min-width:601px){.hero{padding-block:0}.hero-copy{margin-block:34px 35px}.hero-visual{min-height:479px}}
@media(min-width:901px){.hero-visual{min-height:499px}}
@media(min-width:1151px){.hero-visual{min-height:539px}}
@media(min-width:1600px){.hero-visual{min-height:639px}}
@media(max-width:600px){.hero{padding-bottom:0}}

/* Search and sign-in controls in the primary header. */
.header-actions{gap:14px}.header-search{display:flex;align-items:center;width:clamp(260px,25vw,360px);height:44px;border:1px solid #a6a79a;border-radius:999px;background:transparent;overflow:hidden}.header-search:focus-within{border-color:var(--moss);box-shadow:0 0 0 2px #696f5826}.header-search input[type="search"]{flex:1 1 auto;width:100%;min-width:0;height:100%;margin:0;border:0;border-radius:0;background:transparent;padding:0 0 0 18px;font-size:13px;color:var(--ink);outline:none;box-shadow:none;appearance:none}.header-search input::placeholder{color:var(--muted);opacity:1}.header-search-submit{display:flex;align-items:center;justify-content:center;flex:0 0 42px;height:42px;padding:10px;border-radius:999px}.header-search-submit svg{width:19px;height:19px}.login-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:9px;border:0;border-radius:999px;background:transparent;color:#595959}.header-main .login-button svg,.header-main .bag-button svg{width:24px;height:24px;flex-shrink:0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.header-main .bag-button{position:relative;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:9px;color:#595959}.header-main .bag-button #bag-count{position:absolute;top:2px;right:0;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;border-radius:999px;background:var(--canvas);font-size:10px;font-weight:500;line-height:1;white-space:nowrap;pointer-events:none}.header-main .bag-button:hover{background:#696f5812;color:var(--ink)}.login-button:hover{background:#696f5812;color:var(--ink)}
@media(max-width:1350px){.header-note{display:none}}
@media(min-width:701px) and (max-width:1150px){.header-search{width:clamp(180px,24vw,260px)}}
@media(max-width:700px){html{scroll-padding-top:170px}.header-main{height:auto;min-height:67px;flex-wrap:wrap;padding-block:13px;row-gap:12px}.header-actions{display:contents}.header-search{order:10;flex:1 1 100%;width:auto}.login-button{order:0;margin-left:auto;padding-inline:9px}.header-main .bag-button{margin-left:0}.header-search input[type="search"]{font-size:16px}}

/* Supplied Moss Print vector logo, with its original brand colors. */
.wordmark{flex-shrink:0}.wordmark .brand-logo{display:block;width:240px;height:auto;max-width:none}
.header-main .brand-logo{width:180px}
@media(max-width:900px){.header-main .brand-logo{width:165px}}
@media(max-width:600px){.header-main .brand-logo{width:150px}}

@media(max-width:600px){.header-main{column-gap:4px}}

/* Place search beside the logo and keep account actions at the right edge. */
@media(min-width:701px){.header-actions{flex:1;min-width:0;margin-left:0}.header-search{margin-right:auto;flex-shrink:0}}

/* Brand typography: rounded sans headings with three editorial italic accents. */
h1,h2{font-family:var(--sans);font-weight:600;letter-spacing:-.035em;text-wrap:balance}
h2{font-size:clamp(32px,3.3vw,48px);line-height:1.15}
h1 em,h2 em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.025em}
.hero h1{font-size:clamp(48px,5.1vw,76px);line-height:1.08;letter-spacing:-.045em}
.hero h1 em{font-size:1.2em;line-height:1.02}
.tactile-copy h2{font-size:clamp(48px,5.3vw,80px);line-height:1.08}
.tactile-copy h2 em,.final-cta h2 em{font-size:1.12em}
.feature-copy h2,.sample-copy h2,.network-copy h2,.brand-copy h2{font-size:clamp(36px,3.5vw,52px);line-height:1.14}
.inspiration h2{font-size:clamp(34px,3.3vw,48px);line-height:1.15}
.faq-section h2{font-size:clamp(30px,2.9vw,42px);line-height:1.18}
.final-cta h2{font-size:clamp(48px,5.6vw,82px);line-height:1.1;max-width:76%}
.craft-card-title h3,.material-card h3,.difference-grid h3,.project-card h3,.journal-card h3{font-family:var(--sans);font-size:clamp(18px,1.6vw,23px);font-weight:600;line-height:1.3;letter-spacing:-.025em}
.audience>p{font:600 clamp(26px,2.5vw,36px)/1.25 var(--sans);letter-spacing:-.025em;text-wrap:balance}
dialog h2,.product-detail h2{font-size:clamp(28px,3vw,38px);line-height:1.18;overflow-wrap:anywhere}
@media(min-width:601px) and (max-width:900px){.hero h1{font-size:clamp(34px,5vw,45px)}}
@media(max-width:900px){.feature-copy h2,.sample-copy h2,.network-copy h2,.brand-copy h2{font-size:36px}.inspiration h2{font-size:34px}.craft-card-title h3,.material-card h3,.difference-grid h3,.project-card h3,.journal-card h3{font-size:20px}}
@media(max-width:600px){h2{font-size:32px}.hero h1{font-size:clamp(40px,10.5vw,60px)}.tactile-copy h2{font-size:52px}.feature-copy h2,.sample-copy h2,.network-copy h2,.brand-copy h2,.inspiration h2{font-size:clamp(30px,8.4vw,40px)}.faq-section h2{font-size:32px}.final-cta h2{font-size:clamp(36px,9.2vw,54px);max-width:100%}.craft-card-title{gap:8px}.craft-card-title h3{font-size:18px}.material-card h3{font-size:20px}.project-card h3,.journal-card h3{font-size:23px}}

/* Four print benefits with original, matching line icons. */
.benefits{padding-block:32px;border-bottom:1px solid var(--line)}
.benefits-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:0}
.benefit{display:flex;align-items:center;gap:16px;min-width:0}
.benefit-icon{display:grid;place-items:center;flex:0 0 68px;width:68px;height:68px;background:transparent}
.benefit-icon img{width:68px;height:68px}
.benefit h3{font:600 18px/1.35 var(--sans);letter-spacing:-.02em}
.benefit p{font:400 14px/1.55 var(--sans);color:#595c54;margin-top:6px}
@media(max-width:1150px){.benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px}}
@media(max-width:600px){.benefits{padding-block:28px}.benefits-grid{gap:26px 20px}.benefit{flex-direction:column;align-items:flex-start;gap:12px}.benefit-icon{flex-basis:60px;width:60px;height:60px}.benefit-icon img{width:60px;height:60px}.benefit h3{font-size:16px}.benefit p{font-size:13px;margin-top:5px}}

/* Shared homepage rhythm: a single gap between content modules, no doubled padding. */
:root{--section-space:96px;--band-space:80px;--heading-space:32px;--benefit-space:40px}
#main .section{padding-block:var(--section-space)}
#main .section+.section{padding-top:0}
#main .section-heading{margin-bottom:var(--heading-space)}
#main .benefits{padding-block:var(--benefit-space)}
#main .tactile-banner,#main .feature-craft,#main .inspiration,#main .brands-section,#main .difference-section,#main .audience{margin-block:0}
#main .brands-section,#main .difference-section,#main .final-cta,#main .tactile-copy{padding-block:var(--band-space)}
#main .inspiration,#main .audience{padding-block:var(--band-space)}
.footer{padding-top:var(--band-space)}
@media(max-width:1150px){:root{--section-space:72px;--band-space:64px;--benefit-space:32px}}
@media(max-width:600px){:root{--section-space:48px;--band-space:40px;--heading-space:24px;--benefit-space:28px}}

/* Match the inspiration panel to the shared card corners. */
.inspiration{border-radius:var(--card-button-radius)}

/* Clip both the craft film and its paper-colored copy panel to one rounded frame. */
.feature-craft{border-radius:var(--card-button-radius);overflow:hidden}

/* Keep the tactile banner aligned with the page content rather than the viewport. */
.tactile-banner{border-radius:var(--card-button-radius)}
.tactile-copy{padding-inline:64px}
@media(max-width:1150px){.tactile-copy{padding-inline:40px}}
@media(max-width:600px){.tactile-copy{padding-inline:24px}}

/* Selective framed cards: products and materials, balanced by open editorial sections. */
#signature .product-card,#materials .material-card{width:100%;min-width:0;padding:14px;border:1px solid #e1e3d9;border-radius:var(--card-button-radius);background:var(--white);box-shadow:0 2px 5px #18191804;transition:border-color .2s,box-shadow .2s}
#signature .product-card{display:flex;flex-direction:column;align-items:stretch;background:var(--canvas);box-shadow:none;transition:border-color .2s,box-shadow .2s}
#signature .product-art,#materials .material-card>.atlas{border-radius:10px;flex-shrink:0}
#signature .product-title{padding-top:16px}
#signature .product-title h3{font-size:16px;font-weight:600;line-height:1.4}
#signature .product-card>p{font-size:13px;line-height:1.55;margin:6px 0 16px}
#signature .product-meta{margin-top:auto;padding-top:12px;border-top-color:#eceee6;flex-wrap:wrap;gap:5px 12px}
#materials .material-card{display:flex;flex-direction:column;align-items:stretch;background:transparent;box-shadow:none;transition:border-color .2s}
#materials .material-card>div:last-child{padding:16px 24px 4px 2px}
#materials .material-card h3{font-size:20px}
#materials .material-card p{font-size:13px;line-height:1.55;margin-top:6px}
#materials .material-card>div:last-child>span{top:17px;right:2px}
@media(hover:hover){#signature .product-card:hover,#materials .material-card:hover{border-color:var(--action);box-shadow:none}}
@media(max-width:1150px){#signature .product-card,#materials .material-card{padding:12px}#signature .product-title h3{font-size:15px}}
@media(max-width:600px){#signature .product-card,#materials .material-card{padding:10px}#signature .product-art,#materials .material-card>.atlas{border-radius:8px}#signature .product-title{padding-top:12px;gap:5px}#signature .product-title h3{font-size:14px}#signature .product-card>p{font-size:12px;margin-bottom:12px}#signature .product-meta{font-size:10px;padding-top:10px}#materials .material-card>div:last-child{padding-top:13px}#materials .material-card h3{font-size:18px}#materials .material-card p{font-size:12px}}

/* The inset hover stroke adds visual weight without changing card geometry. */

/* Round each brand collage image while preserving its rotation and overlap. */
.brand-image-main,.brand-image-secondary{border-radius:var(--card-button-radius);overflow:hidden}

/* Compact rounded labels on product images. */
.product-tag{border-radius:999px}

/* Journal: one lead story balanced by two compact editorial entries. */
.journal-editorial{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:40px;align-items:stretch}
.journal-feature{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;text-align:left;background:var(--paper);border-radius:var(--card-button-radius);overflow:hidden}
.journal-feature-image{aspect-ratio:2.15;overflow:hidden}
.journal-feature-image img{width:100%;height:100%;object-fit:cover}
.journal-feature-copy{padding:26px 30px 28px;flex:1}
#journal .journal-kicker{font-size:11px;font-weight:500;letter-spacing:.09em;line-height:1.5;color:var(--moss-deep);margin:0 0 12px}
.journal-feature h3{font:600 clamp(27px,2.5vw,36px)/1.13 var(--sans);letter-spacing:-.035em}
#journal .journal-deck{font-size:14px;line-height:1.6;color:var(--muted);margin:13px 0 0;max-width:43ch}
.journal-story-link{display:inline-flex;align-items:center;gap:16px;margin-top:20px;font-size:13px;font-weight:500;line-height:1.5;transition:color .2s}
.journal-story-link>span{font-size:18px;line-height:1}
.journal-sidebar{display:grid;grid-template-rows:1fr 1fr;border-block:1px solid var(--line);min-width:0}
.journal-side-story{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1fr);gap:24px;align-items:center;text-align:left;padding:26px 0;min-width:0}
.journal-side-story+.journal-side-story{border-top:1px solid var(--line)}
.journal-side-image{aspect-ratio:1.05;overflow:hidden;border-radius:var(--card-button-radius)}
.journal-side-image img{width:100%;height:100%;object-fit:cover}
.journal-side-image .atlas{height:100%;aspect-ratio:auto;background-size:400% 200%}
.journal-side-story h3{font:600 clamp(21px,1.85vw,27px)/1.22 var(--sans);letter-spacing:-.025em}
.journal-side-story .journal-story-link{margin-top:16px}
@media(hover:hover){.journal-feature:hover .journal-story-link,.journal-side-story:hover .journal-story-link{color:var(--action)}}
@media(max-width:1150px){.journal-editorial{gap:28px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.journal-feature-copy{padding:24px}.journal-side-story{gap:18px;padding:22px 0}.journal-side-story h3{font-size:22px}#journal .journal-side-story .journal-deck{font-size:13px}}
@media(max-width:900px){.journal-editorial{grid-template-columns:1fr;gap:30px}.journal-feature h3 br{display:none}.journal-feature h3{font-size:30px}.journal-feature-image{aspect-ratio:2}.journal-sidebar{grid-template-rows:auto auto}.journal-side-story{grid-template-columns:minmax(130px,.5fr) minmax(0,1fr)}.journal-side-image{aspect-ratio:1.3}.journal-side-story h3 br{display:none}.journal-side-story h3{font-size:24px}}
@media(max-width:600px){.journal-feature-image{aspect-ratio:1.55}.journal-feature-copy{padding:22px}.journal-feature h3{font-size:28px}#journal .journal-deck{font-size:13px}.journal-side-story{grid-template-columns:100px minmax(0,1fr);gap:16px;padding:22px 0;align-items:start}.journal-side-image{aspect-ratio:1}.journal-side-story h3{font-size:20px}#journal .journal-kicker{font-size:10px;margin-bottom:9px}.journal-story-link{margin-top:16px}.journal-side-story .journal-story-link{margin-top:12px}}

/* Give the audience band a purpose: four starting points for a custom brief. */
#main .audience{background:var(--moss);color:var(--paper);border:0;border-radius:var(--card-button-radius);padding:42px 48px;text-align:left}
.audience .audience-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:56px;align-items:center;justify-content:normal;font-size:inherit;letter-spacing:normal;color:inherit}
.audience-copy .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.1em;color:#ecefdf;margin-bottom:14px}
.audience-copy h2{font-size:clamp(30px,3vw,40px);line-height:1.12;letter-spacing:-.025em}
.audience-description{font-size:14px;line-height:1.65;max-width:35ch;margin-top:18px;color:#ecefdf}
.audience-prompt{font-size:14px;font-weight:500;line-height:1.5;margin-bottom:16px}
.audience-options{display:flex;flex-wrap:wrap;gap:12px}
.audience-options button{display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:13px 17px;border:1px solid #bcc5a2;border-radius:var(--button-radius);background:#ffffff08;color:var(--paper);font-size:14px;line-height:1.5;text-align:left;transition:background .2s,color .2s,border-color .2s}
.audience-options svg{width:23px;height:23px;flex-shrink:0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.audience-arrow{margin-left:4px;font-size:17px}
.audience-note{font-size:12px;line-height:1.6;color:#ecefdf;margin-top:16px}
.audience-options button:focus-visible{outline-color:var(--paper);outline-offset:4px}
@media(hover:hover){.audience-options button:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}}
@media(max-width:1150px){#main .audience{padding:36px 32px}.audience .audience-layout{gap:32px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.audience-options{gap:10px}.audience-options button{font-size:13px;padding:12px 14px;gap:10px}}
@media(max-width:1000px){.audience .audience-layout{grid-template-columns:1fr;gap:28px}.audience-description{max-width:45ch}.audience-copy h2{font-size:34px}}
@media(max-width:600px){#main .audience{padding:30px 24px}.audience-copy h2{font-size:32px}.audience-copy .eyebrow{font-size:10px}.audience-options button{min-height:50px;padding:11px 13px;gap:9px}.audience-options svg{width:21px;height:21px}.audience-arrow{margin-left:1px}}

/* An explicit browse action for the print studies collection. */
#projects .studies-more{flex-shrink:0;white-space:nowrap;border-color:var(--line);gap:24px}
@media(hover:hover){#projects .studies-more:hover{border-color:var(--action);color:var(--action)}}
.study-list-intro{font-size:15px;color:var(--muted);margin:16px 0 24px}
.study-list{display:grid;gap:16px}
.study-list>button{display:grid;grid-template-columns:112px minmax(0,1fr);gap:22px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:var(--card-button-radius);padding:14px}
.study-list-image{display:block;aspect-ratio:1;border-radius:10px;overflow:hidden}
.study-list-image .atlas{width:100%;height:100%}
.study-list-copy{display:grid;gap:8px}
.study-list-copy strong{font-size:20px;line-height:1.3;font-weight:600}
.study-list-copy>span{font-size:14px;line-height:1.6;color:var(--muted)}
.study-list-copy .study-list-action{font-size:13px;color:var(--ink);font-weight:500}
.study-list>button:hover{border-color:var(--action)}
@media(max-width:600px){#projects .section-heading{align-items:flex-start;flex-direction:column;gap:20px}#projects .studies-more{padding:13px 18px;gap:18px}.study-list>button{grid-template-columns:76px minmax(0,1fr);align-items:start;gap:14px;padding:12px}.study-list-copy strong{font-size:17px}.study-list-copy>span{font-size:13px}}

/* Header support number, kept beside the custom quote action. */
.header-phone{display:inline-flex;align-items:center;flex-shrink:0;gap:7px;margin-right:24px;white-space:nowrap;font-size:13px;line-height:1.4;color:#595959}
.header-phone svg{width:19px;height:19px;flex-shrink:0;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.header-phone strong{font-size:14px;font-weight:600;letter-spacing:.015em;color:var(--ink)}
@media(max-width:1350px){.header-phone-label{display:none}}
@media(max-width:1100px){.header-phone{display:none}}

/* Keep footer navigation and small print comfortably readable. */
.footer .footer-brand .brand-logo{filter:brightness(0) invert(1)}
.footer h3{font-size:13px;line-height:1.5;letter-spacing:.1em;margin-bottom:20px}
.footer-top>div>a:not(.wordmark),.footer-top>div>button{font-size:15px;line-height:1.7;margin-bottom:12px}
.footer-bottom{font-size:13px;line-height:1.7}
.footer-newsletter{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:60px;align-items:center;padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid #3b3d38}
.footer-newsletter .eyebrow{font-size:12px;letter-spacing:.12em;color:#c9cbbd;margin-bottom:16px}
.footer-newsletter h2{font-size:clamp(28px,3vw,40px);line-height:1.18;letter-spacing:-.025em}
.footer-newsletter .newsletter-description{font-size:15px;line-height:1.7;color:#c9cbbd;margin-top:18px;max-width:44ch}
.newsletter-action{justify-self:end;width:min(100%,320px)}
.footer .footer-subscribe{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:17px 22px;border:1px solid #73766a;border-radius:var(--button-radius);font-size:15px;font-weight:500;line-height:1.5;text-decoration:none}
.footer-subscribe[aria-disabled=true]{cursor:default}
.newsletter-action p{font-size:12px;line-height:1.6;color:#bec1b3;margin-top:12px}
.footer-social{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:26px}
.footer .footer-social a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;text-decoration:none}
.footer-social svg{width:22px;height:22px;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-brand .social-status{font:12px/1.6 var(--sans);color:#bec1b3;margin-top:6px}
.footer .footer-social a[aria-disabled=true]{cursor:default;color:var(--paper)}
.footer .footer-subscribe[href]:hover{border-color:var(--action);color:var(--white);background:#e85a3f16}
.footer .footer-social a[href]:hover{color:#f0846e}
@media(max-width:700px){.footer-newsletter{grid-template-columns:1fr;gap:26px;padding-bottom:36px;margin-bottom:36px}.newsletter-action{justify-self:start;max-width:360px}.footer-newsletter .newsletter-description{font-size:14px}.footer-social{margin-top:20px}}
@media(max-width:600px){.footer h3{font-size:12px;margin-bottom:16px}.footer-top>div>a:not(.wordmark),.footer-top>div>button{font-size:15px;line-height:1.8}.footer-bottom{font-size:12px;gap:12px 18px}}
@media(max-width:700px){.footer-brand{text-align:center}.footer-brand .wordmark{justify-content:center}.footer-brand .footer-social{justify-content:center}.footer-brand .social-status{text-align:center}}
@media(max-width:700px){.footer-newsletter h2{font-size:22px}.footer-newsletter{gap:14px;padding-bottom:28px;margin-bottom:30px}.footer-brand .wordmark .brand-logo{width:240px}.footer-brand p{font-size:16px;line-height:1.35;margin-top:2px}.footer-social{margin-top:14px}.footer-brand .social-status{margin-top:2px}.footer-top{gap:20px 22px}}
@media(max-width:700px){.footer-brand p{margin-top:-5px}}
@media(max-width:700px){.site-header .header-main{position:relative;flex-wrap:nowrap;padding-block:10px;min-height:64px;row-gap:0}.site-header .mobile-menu-toggle{position:absolute;left:0;display:flex}.site-header .header-main>.wordmark{position:absolute;left:50%;transform:translateX(-50%)}.site-header .header-actions{position:absolute;right:0;display:flex;align-items:center;gap:2px}.site-header .header-phone,.site-header .quote-button{display:none}.site-header .header-search{order:0;flex:0 0 42px;width:42px;height:42px;border:0;box-shadow:none}.site-header .header-search input{display:none}.site-header .header-search-submit{width:42px;height:42px;flex:0 0 42px;padding:9px}.site-header .login-button{order:1}.site-header .bag-button{order:2}}
@media(max-width:900px){.site-header .header-main{position:relative;flex-wrap:nowrap;padding-block:10px;min-height:64px;row-gap:0}.site-header .mobile-menu-toggle{position:absolute;left:0;display:flex}.site-header .header-main>.wordmark{position:absolute;left:50%;transform:translateX(-50%)}.site-header .header-actions{position:absolute;right:0;display:flex;align-items:center;gap:2px}.site-header .header-phone,.site-header .quote-button{display:none}.site-header .header-search{order:0;flex:0 0 42px;width:42px;height:42px;border:0;box-shadow:none}.site-header .header-search input{display:none}.site-header .header-search-submit{width:42px;height:42px;flex:0 0 42px;padding:9px}.site-header .login-button{order:1}.site-header .bag-button{order:2}}
@media(max-width:900px){.site-header .header-actions{position:static;display:contents}.site-header .header-search{position:absolute;left:58px;top:10px;display:flex}.site-header .header-search-submit svg,.site-header .login-button svg{width:24px;height:24px;stroke-width:1.6}.site-header .login-button{position:absolute;right:46px;top:10px}.site-header .bag-button{position:absolute;right:0;top:10px}}
@media(max-width:900px){.site-header .header-main{min-height:132px}.site-header .mobile-menu-toggle{top:10px}.site-header .header-main>.wordmark{top:12px}.site-header .header-search{top:76px;left:0;right:0;width:auto;height:44px;flex:auto;border:1px solid #a6a79a;border-radius:999px;background:var(--canvas);box-shadow:none}.site-header .header-search input{display:block;min-width:0}.site-header .header-search-submit{flex:0 0 42px}}
.product-page #newsletter-status{display:none}
@media(max-width:900px){.product-page .footer-social a span{display:none}.product-page .footer-brand .social-status{display:none}}
.product-page .footer-social a span,.product-page .footer-brand .social-status{display:none}

/* More formats, arranged by purpose instead of another equal-card grid. */
.more-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:72px;align-items:start}
.more-copy .eyebrow{margin-bottom:18px}
.more-copy h2{font-size:clamp(36px,3.8vw,54px);line-height:1.1}
.more-intro{max-width:31ch;margin-top:22px;font-size:15px;line-height:1.75;color:var(--muted)}
.more-custom{margin-top:30px;font-size:13px;padding:13px 18px;gap:20px;border-color:var(--line)}
.more-groups{border-top:1px solid var(--line)}
.more-group{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:28px;padding:26px 0;border-bottom:1px solid var(--line)}
.more-index{display:block;font-size:11px;letter-spacing:.08em;color:var(--moss);margin-bottom:7px}
.more-group h3{font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.4}
.more-group-heading p{font-size:12px;line-height:1.5;color:var(--muted);margin-top:5px}
.more-options{display:flex;flex-wrap:wrap;gap:10px}
.more-options button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;padding:11px 16px;background:var(--paper);border:1px solid transparent;border-radius:var(--button-radius);font-size:13px;line-height:1.4;text-align:left;transition:background .2s,border-color .2s,color .2s}
.more-options button span{font-size:15px;color:var(--moss-deep)}
@media(hover:hover){.more-options button:hover{border-color:var(--action);background:#e85a3f0a;color:var(--action)}.more-options button:hover span{color:var(--action)}.more-custom:hover{border-color:var(--action);color:var(--action)}}
@media(max-width:1150px){.more-layout{gap:40px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.more-group{grid-template-columns:1fr;gap:16px;padding:22px 0}.more-index{float:left;margin:4px 10px 0 0}.more-group-heading p{margin-left:25px}}
@media(max-width:700px){.more-layout{grid-template-columns:1fr;gap:30px}.more-copy h2 br{display:none}.more-copy h2{font-size:32px;line-height:1.15}.more-intro{max-width:38ch;margin-top:16px;font-size:14px}.more-custom{margin-top:20px}.more-options{gap:8px}.more-options button{font-size:13px;padding:10px 14px;gap:14px}.more-group{padding:22px 0}}

/* An open editorial layout with one clear reading action per story. */
#journal .section-heading{align-items:center}
#journal .journal-intro{margin-top:14px;color:var(--muted);font-size:15px;line-height:1.6}
#journal .journal-more{flex-shrink:0;white-space:nowrap;border-color:var(--line);gap:24px}
#journal .journal-grid{gap:28px}
#journal .journal-card{display:flex;flex-direction:column;align-items:stretch}
#journal .journal-card>img,#journal .journal-atlas{flex-shrink:0}
#journal .journal-category{font-size:11px;letter-spacing:.08em;margin:20px 0 10px;color:var(--moss-deep)}
#journal .journal-card h3{font-size:clamp(20px,1.65vw,24px);line-height:1.35;letter-spacing:-.025em}
#journal .journal-summary{font-size:14px;line-height:1.65;letter-spacing:0;color:var(--muted);margin:10px 0 20px}
#journal .journal-read{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:13px;font-weight:500;transition:color .2s,border-color .2s}
#journal .journal-read>span{font-size:18px}
@media(hover:hover){#journal .journal-card:hover .journal-read{color:var(--action);border-color:var(--action)}#journal .journal-more:hover{border-color:var(--action);color:var(--action)}}
.journal-library-intro{color:var(--muted);margin-block:16px 24px}
.journal-library-list{display:grid;gap:12px}
.journal-library-list>button{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;text-align:left;border:1px solid var(--line);border-radius:var(--card-button-radius)}
.journal-library-list>button>span:first-child{display:grid;gap:6px}
.journal-library-list strong{font-size:18px;font-weight:600;line-height:1.4}
.journal-library-list strong+span{font-size:14px;color:var(--muted);line-height:1.55}
.journal-library-list>button:hover{border-color:var(--action)}
.journal-back{font-size:13px;padding:0;margin-bottom:24px;color:var(--moss-deep)}
@media(max-width:900px){#journal .journal-grid{gap:22px}#journal .journal-more{padding:13px 18px;gap:16px}}
@media(max-width:600px){#journal .section-heading{align-items:flex-start;flex-direction:column;gap:20px}#journal .journal-grid{gap:32px}#journal .journal-intro{font-size:14px}#journal .journal-card h3{font-size:22px}#journal .journal-category{margin-top:16px}.journal-library-list>button{padding:16px}}

/* A compact footer signup strip, subordinate to the page content. */
.footer{padding-top:40px}
.footer-newsletter{grid-template-columns:minmax(0,1fr) auto;gap:32px;padding-bottom:28px;margin-bottom:32px}
.footer-newsletter h2{font-size:26px;line-height:1.25;letter-spacing:-.02em}
.footer-newsletter .newsletter-description{font-size:14px;line-height:1.6;margin-top:8px;max-width:52ch}
.newsletter-action{width:280px;max-width:100%}
.footer .footer-subscribe{padding:12px 18px}
.newsletter-action p{margin-top:7px}
@media(max-width:700px){.footer{padding-top:32px}.footer-newsletter{grid-template-columns:1fr;gap:18px;padding-bottom:24px;margin-bottom:28px;text-align:center}.newsletter-action{justify-self:center;width:min(100%,420px);max-width:100%;text-align:center}.footer-newsletter h2{font-size:24px}.footer-newsletter .newsletter-description{font-size:13px}}

/* Rounded secondary action on the closing invitation. */
.final-cta .final-samples-button{border-color:rgba(243,240,232,.65);border-radius:var(--button-radius);color:var(--paper);background:transparent}
.final-cta .final-samples-button:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.final-cta .final-samples-button:focus-visible{outline-color:var(--paper)}

/* A material-led contact card beside individually framed questions. */
#faq.faq-section{display:block}
#faq .faq-heading{margin:0 0 36px}
#faq .faq-heading h2{font-size:clamp(32px,3.6vw,52px);line-height:1.15;margin:16px 0}
#faq .faq-intro{font-size:16px;color:var(--muted);max-width:62ch}
#faq .faq-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.4fr);gap:36px;align-items:start}
#faq .faq-contact{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--paper)}
#faq .faq-contact>img{width:100%;aspect-ratio:1.65;object-fit:cover}
#faq .faq-contact-copy{padding:28px}
#faq .faq-contact .eyebrow{font-size:11px;color:var(--moss-deep)}
#faq .faq-contact h3{font-size:clamp(24px,2.3vw,32px);line-height:1.25;letter-spacing:-.025em;font-weight:600;margin:16px 0}
#faq .faq-contact-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.7}
#faq .faq-contact .button{width:100%;margin-top:24px;border-color:var(--moss);color:var(--moss-deep);gap:16px;text-align:left}
#faq .faq-contact .button:hover{background:var(--moss);color:var(--paper)}
#faq .faq-list{display:grid;gap:12px}
#faq .faq-list details{padding:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:background .2s,border-color .2s}
#faq .faq-list details[open]{background:var(--moss-tint);border-color:#c9cdbd}
#faq .faq-list summary{padding:22px 26px;align-items:center;gap:20px;font-size:16px;font-weight:500;line-height:1.45;border-radius:17px}
#faq .faq-list summary:hover{color:var(--moss-deep)}
#faq .faq-list summary:focus-visible{outline:2px solid var(--action);outline-offset:-4px}
#faq .faq-list .faq-toggle{position:relative;display:block;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--moss-tint);color:var(--moss-deep);transform:none}
#faq .faq-toggle::before,#faq .faq-toggle::after{content:"";position:absolute;background:currentColor;left:50%;top:50%;transform:translate(-50%,-50%);width:10px;height:1px}
#faq .faq-toggle::after{width:1px;height:10px}
#faq details[open] .faq-toggle{background:var(--moss-deep);color:var(--paper)}
#faq details[open] .faq-toggle::after{display:none}
#faq .faq-list details>p{margin:0;padding:0 26px 24px;font-size:14px;line-height:1.8;color:var(--muted)}
@media(max-width:1000px){#faq .faq-layout{gap:24px;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr)}#faq .faq-contact-copy{padding:22px}#faq .faq-list summary{padding:18px 20px;font-size:15px}#faq .faq-list details>p{padding:0 20px 22px}}
@media(max-width:700px){#faq .faq-heading{margin-bottom:26px}#faq .faq-heading h2{font-size:32px}#faq .faq-intro{font-size:14px}#faq .faq-layout{grid-template-columns:1fr;gap:24px}#faq .faq-contact>img{aspect-ratio:1.9}#faq .faq-contact h3{font-size:27px}#faq .faq-list summary{padding:17px 18px;gap:14px;font-size:14px}#faq .faq-list .faq-toggle{flex-basis:30px;width:30px;height:30px}#faq .faq-list details>p{padding:0 18px 20px}}

/* Print journal: an interactive cover and a clean numbered contents list. */
#journal .journal-directory{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:56px;align-items:start}
#journal .journal-preview-frame{border-radius:20px;overflow:hidden;aspect-ratio:1.35;background:var(--paper)}
#journal .journal-preview-image{width:100%;height:100%}
#journal .journal-preview-image img{width:100%;height:100%;object-fit:cover}
#journal .journal-preview-image .atlas{width:100%;height:100%;aspect-ratio:auto;background-size:400% 200%}
#journal .journal-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:20px}
#journal #journal-preview-caption{font-size:11px;letter-spacing:.1em;color:var(--moss-deep)}
#journal .journal-preview-read{font-size:13px;padding:11px 19px;gap:22px;border-color:var(--line)}
#journal .journal-preview-read:hover{color:var(--action);border-color:var(--action)}
#journal .journal-index{border-top:1px solid var(--line);min-width:0}
#journal .journal-index-item{position:relative;width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) 32px;gap:18px;align-items:start;text-align:left;padding:25px 16px 25px 8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;transition:background .2s}
#journal .journal-index-item[aria-pressed=true]{background:var(--moss-tint)}
#journal .journal-index-item[aria-pressed=true]::before{content:"";position:absolute;left:0;top:25px;bottom:25px;width:2px;background:var(--action)}
#journal .journal-index-number{font-size:12px;color:var(--muted);padding-top:2px;text-align:center}
#journal .journal-index-copy{display:grid;gap:9px}
#journal .journal-index-category{font-size:10px;letter-spacing:.1em;color:var(--moss-deep)}
#journal .journal-index-title{font-size:clamp(21px,2vw,28px);font-weight:600;line-height:1.25;letter-spacing:-.025em}
#journal .journal-index-description{font-size:13px;color:var(--muted);line-height:1.65}
#journal .journal-index-arrow{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:18px;align-self:center;color:var(--moss-deep);transition:color .2s,background .2s,border-color .2s}
#journal .journal-index-item[aria-pressed=true] .journal-index-arrow{color:var(--paper);background:var(--moss);border-color:var(--moss)}
#journal .journal-index-item:hover .journal-index-title{color:var(--action)}
#journal .journal-index-item:focus-visible{outline-color:var(--action);outline-offset:3px;z-index:1}
#journal .journal-index-note{font-size:12px;color:var(--muted);margin-top:19px}
@media(max-width:1000px){#journal .journal-directory{gap:30px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr)}#journal .journal-preview-frame{aspect-ratio:1.05}#journal .journal-index-item{gap:12px;padding-block:22px;grid-template-columns:24px minmax(0,1fr) 28px}#journal .journal-index-title{font-size:22px}#journal .journal-preview-footer{align-items:start;flex-wrap:wrap}}
@media(max-width:700px){#journal .journal-directory{grid-template-columns:1fr;gap:28px}#journal .journal-preview-frame{aspect-ratio:1.7}#journal .journal-preview-footer{align-items:center;padding-top:16px}#journal .journal-index-item{padding-block:22px}#journal .journal-index-title{font-size:22px}#journal .journal-index-description{font-size:13px}#journal .journal-index-note{margin-top:16px}}
@media(prefers-reduced-motion:reduce){#journal .journal-index-item,#journal .journal-index-arrow{transition:none}}

/* Shared alignment for the adjacent journal and FAQ sections. */
#journal,#faq{--content-columns:minmax(0,2fr) minmax(0,3fr);--content-gap:40px}
#journal .journal-directory,#faq .faq-layout{grid-template-columns:var(--content-columns);gap:var(--content-gap)}
#journal .section-heading,#faq .faq-heading{margin-bottom:32px}
#journal .section-heading .eyebrow,#faq .faq-heading .eyebrow{margin:0 0 16px}
#journal #journal-title,#faq .faq-heading h2{font-size:clamp(32px,3.2vw,46px);line-height:1.18;letter-spacing:-.03em;margin:0}
#journal .journal-intro,#faq .faq-intro{font-size:15px;line-height:1.65;margin-top:14px}
#journal .journal-directory{align-items:stretch}
#journal .journal-preview{display:grid;grid-template-rows:minmax(0,1fr) 64px;min-width:0}
#journal .journal-preview-frame{position:relative;aspect-ratio:auto;min-height:320px}
#journal .journal-preview-image{position:absolute;inset:0}
#journal .journal-preview-footer{padding-top:16px;align-items:center;flex-wrap:nowrap}
#journal .journal-index{display:grid;grid-template-rows:repeat(3,auto) 64px}
#journal .journal-index-note{margin:0;display:flex;align-items:center;padding-top:16px}
#journal .journal-index-item{align-items:center;padding-block:24px}
#faq .faq-contact-copy{padding:26px}
@media(max-width:1000px){#journal,#faq{--content-gap:28px}#journal .journal-preview-frame{min-height:300px}#journal .journal-preview-footer{gap:10px}#journal .journal-preview-read{padding:10px 14px;gap:12px}#journal #journal-preview-caption{font-size:10px}#faq .faq-contact-copy{padding:22px}}
@media(max-width:700px){#journal,#faq{--content-columns:minmax(0,1fr);--content-gap:24px}#journal .section-heading,#faq .faq-heading{margin-bottom:26px}#journal #journal-title,#faq .faq-heading h2{font-size:32px}#journal .journal-intro,#faq .faq-intro{font-size:14px}#journal .journal-preview-frame{aspect-ratio:1.7;min-height:0}#journal .journal-index{grid-template-rows:repeat(3,auto) auto}#journal .journal-index-note{padding-top:16px}#journal .journal-index-item{padding-block:22px}}

/* Journal reading layout: one horizontal feature and two direct article links. */
#journal .journal-lead-story{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:52px;align-items:center;text-align:left;padding:0;border:0;border-radius:0;background:transparent}
#journal .journal-lead-photo{display:block;overflow:hidden;border-radius:18px;aspect-ratio:1.7}
#journal .journal-lead-photo img{width:100%;height:100%;object-fit:cover}
#journal .journal-lead-body{display:flex;flex-direction:column;align-items:flex-start;padding:16px 24px 16px 0}
#journal .journal-reading-category{font-size:11px;font-weight:500;letter-spacing:.1em;line-height:1.5;color:var(--moss-deep)}
#journal .journal-lead-title{font-size:clamp(28px,2.8vw,40px);font-weight:600;letter-spacing:-.035em;line-height:1.18;max-width:19ch;margin-top:16px;transition:color .2s}
#journal .journal-lead-summary{font-size:15px;line-height:1.75;color:var(--muted);max-width:48ch;margin-top:16px}
#journal .journal-reading-action{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--moss);padding-bottom:6px;margin-top:24px;font-size:14px;color:var(--moss-deep)}
#journal .journal-lead-story:hover .journal-lead-title,#journal .journal-lead-story:hover .journal-reading-action{color:var(--action);border-color:var(--action)}
#journal .journal-related{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}
#journal .journal-related-story{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;text-align:left;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent}
#journal .journal-related-body{display:flex;flex-direction:column;gap:8px}
#journal .journal-related-title{font-size:clamp(20px,1.8vw,25px);font-weight:600;line-height:1.3;letter-spacing:-.025em;transition:color .2s}
#journal .journal-related-summary{font-size:14px;line-height:1.6;color:var(--muted)}
#journal .journal-related-arrow{font-size:23px;flex-shrink:0;color:var(--moss-deep)}
#journal .journal-related-story:hover .journal-related-title,#journal .journal-related-story:hover .journal-related-arrow{color:var(--action)}
#journal .journal-lead-story:focus-visible,#journal .journal-related-story:focus-visible{outline:2px solid var(--action);outline-offset:6px}
@media(max-width:1000px){#journal .journal-lead-story{gap:30px;grid-template-columns:1fr 1fr}#journal .journal-lead-photo{aspect-ratio:1.25}#journal .journal-lead-body{padding:0}#journal .journal-lead-title{font-size:30px}#journal .journal-related{gap:28px}#journal .journal-lead-summary{font-size:14px}}
@media(max-width:700px){#journal .journal-lead-story{grid-template-columns:1fr;gap:22px}#journal .journal-lead-photo{aspect-ratio:1.7}#journal .journal-lead-title{font-size:29px;max-width:22ch;margin-top:12px}#journal .journal-lead-summary{margin-top:12px}#journal .journal-reading-action{margin-top:18px}#journal .journal-related{grid-template-columns:1fr;gap:0;margin-top:28px}#journal .journal-related-story{padding:22px 0}#journal .journal-related-story+.journal-related-story{border-top:0}#journal .journal-related-title{font-size:22px}#journal .journal-related-summary{font-size:13px}}

/* Journal digest: a compact introduction beside three illustrated reading entries. */
#journal .journal-digest{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,2.15fr);gap:72px;align-items:start}
#journal .journal-digest-intro{padding-top:22px}
#journal .journal-digest-intro .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:20px}
#journal .journal-digest-intro #journal-title{font-size:clamp(32px,3.2vw,44px);line-height:1.14;letter-spacing:-.035em;max-width:11ch;margin:0}
#journal .journal-digest-description{font-size:15px;line-height:1.75;color:var(--muted);max-width:29ch;margin-top:20px}
#journal .journal-digest-intro .journal-more{margin-top:28px;padding:13px 21px;font-size:14px;gap:26px}
#journal .journal-digest-list{border-top:1px solid var(--line)}
#journal .journal-digest-story{width:100%;display:grid;grid-template-columns:180px minmax(0,1fr) 36px;align-items:center;gap:28px;padding:24px 0;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
#journal .journal-digest-image{display:block;aspect-ratio:1.4;overflow:hidden;border-radius:14px}
#journal .journal-digest-image img{width:100%;height:100%;object-fit:cover}
#journal .journal-digest-image .atlas{width:100%;height:100%;aspect-ratio:auto;background-size:400% 200%}
#journal .journal-digest-copy{display:flex;flex-direction:column;gap:10px;min-width:0}
#journal .journal-digest-category{font-size:10px;letter-spacing:.11em;color:var(--moss-deep);line-height:1.5}
#journal .journal-digest-title{font-size:clamp(22px,1.9vw,28px);font-weight:600;line-height:1.25;letter-spacing:-.025em;transition:color .2s}
#journal .journal-digest-summary{font-size:14px;line-height:1.65;color:var(--muted)}
#journal .journal-digest-arrow{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:19px;transition:background .2s,border-color .2s,color .2s}
#journal .journal-digest-story:hover .journal-digest-title{color:var(--action)}
#journal .journal-digest-story:hover .journal-digest-arrow{background:var(--action);border-color:var(--action);color:white}
#journal .journal-digest-story:focus-visible{outline:2px solid var(--action);outline-offset:5px}
@media(max-width:1100px){#journal .journal-digest{grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:40px}#journal .journal-digest-story{grid-template-columns:140px minmax(0,1fr) 32px;gap:20px}#journal .journal-digest-title{font-size:23px}}
@media(max-width:900px){#journal .journal-digest{grid-template-columns:1fr;gap:30px}#journal .journal-digest-intro{padding-top:0}#journal .journal-digest-intro #journal-title{max-width:none;font-size:36px}#journal .journal-digest-description{max-width:52ch;margin-top:14px}#journal .journal-digest-intro .journal-more{margin-top:20px}#journal .journal-digest-story{grid-template-columns:160px minmax(0,1fr) 36px;gap:24px}}
@media(max-width:600px){#journal .journal-digest-intro #journal-title{font-size:32px;max-width:16ch}#journal .journal-digest-description{font-size:14px}#journal .journal-digest-story{grid-template-columns:92px minmax(0,1fr) 20px;gap:14px;padding:20px 0}#journal .journal-digest-image{aspect-ratio:.9;border-radius:12px}#journal .journal-digest-copy{gap:7px}#journal .journal-digest-category{font-size:9px;letter-spacing:.06em}#journal .journal-digest-title{font-size:19px;line-height:1.3}#journal .journal-digest-summary{font-size:12px;line-height:1.55}#journal .journal-digest-arrow{width:20px;height:28px;border:0;font-size:18px}#journal .journal-digest-story:hover .journal-digest-arrow{background:transparent;color:var(--action)}}
@media(prefers-reduced-motion:reduce){#journal .journal-digest-title,#journal .journal-digest-arrow{transition:none}}

/* A magazine spread contrasts with the FAQ's image-and-accordion layout. */
#journal .journal-spread{display:grid;grid-template-columns:minmax(0,1.65fr) repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
#journal .journal-spread-story{min-width:0;display:flex;flex-direction:column;align-items:stretch;padding:0;text-align:left;border:0;border-radius:0;background:transparent}
#journal .journal-spread-image{height:clamp(230px,23vw,310px);display:block;overflow:hidden;border-radius:16px;flex-shrink:0}
#journal .journal-spread-image img{width:100%;height:100%;object-fit:cover}
#journal .journal-spread-image .atlas{width:100%;height:100%;aspect-ratio:auto;background-size:400% 200%}
#journal .journal-spread-category{font-size:11px;letter-spacing:.09em;line-height:1.5;color:var(--moss-deep);margin-top:20px}
#journal .journal-spread-title{font-size:clamp(23px,2vw,28px);font-weight:600;line-height:1.2;letter-spacing:-.03em;min-height:2.4em;margin-top:10px;transition:color .2s}
#journal .journal-spread-feature .journal-spread-title{font-size:clamp(28px,2.5vw,36px);max-width:22ch;min-height:0}
#journal .journal-spread-summary{font-size:14px;line-height:1.65;color:var(--muted);margin-top:12px;margin-bottom:24px;max-width:43ch}
#journal .journal-spread-read{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:14px;margin-top:auto;font-size:13px;font-weight:500;transition:color .2s,border-color .2s}
#journal .journal-spread-read>span{font-size:19px;line-height:1}
#journal .journal-spread-story:hover .journal-spread-title,#journal .journal-spread-story:hover .journal-spread-read{color:var(--action);border-color:var(--action)}
#journal .journal-spread-story:focus-visible{outline:2px solid var(--action);outline-offset:6px}
@media(max-width:1000px){#journal .journal-spread{gap:22px;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr))}#journal .journal-spread-title{font-size:23px}#journal .journal-spread-feature .journal-spread-title{font-size:29px}#journal .journal-spread-summary{font-size:13px}}
@media(max-width:800px){#journal .journal-spread{grid-template-columns:1fr 1fr;gap:28px 22px}#journal .journal-spread-feature{grid-column:1/-1}#journal .journal-spread-feature .journal-spread-image{height:auto;aspect-ratio:2.2}#journal .journal-spread-feature .journal-spread-title{max-width:none}#journal .journal-spread-image{height:230px}#journal .journal-spread-title{min-height:0}}
@media(max-width:500px){#journal .journal-spread{grid-template-columns:1fr;gap:32px}#journal .journal-spread-feature{grid-column:auto}#journal .journal-spread-image,#journal .journal-spread-feature .journal-spread-image{height:auto;aspect-ratio:1.65}#journal .journal-spread-title,#journal .journal-spread-feature .journal-spread-title{font-size:25px}#journal .journal-spread-category{margin-top:16px;font-size:10px}#journal .journal-spread-summary{margin-top:10px;margin-bottom:16px}#journal .journal-spread-read{padding-top:12px}}
@media(prefers-reduced-motion:reduce){#journal .journal-spread-title,#journal .journal-spread-read{transition:none}}

@media(min-width:801px){#journal .journal-spread-title,#journal .journal-spread-feature .journal-spread-title{min-height:68px}}

/* Reference-led blog cards: equal columns, edge-to-edge covers and white bodies. */
#journal .journal-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
#journal .journal-blog-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;text-align:left;background:#f7f5ef;border:1px solid #e7e4db;border-radius:20px;overflow:hidden;box-shadow:none;transition:border-color .2s}
#journal .journal-blog-image{display:block;aspect-ratio:2;flex-shrink:0;overflow:hidden}
#journal .journal-blog-image img{width:100%;height:100%;object-fit:cover}
#journal .journal-blog-image .atlas{width:100%;height:100%;aspect-ratio:auto;background-size:400% 200%}
#journal .journal-blog-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:24px 24px 30px}
#journal .journal-blog-tag{display:inline-flex;padding:5px 11px;border-radius:999px;background:var(--moss-tint);color:var(--moss-deep);font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.025em}
#journal .journal-blog-title{display:block;width:100%;margin-top:16px;font-size:22px;font-weight:600;line-height:1.35;letter-spacing:-.02em;transition:color .2s}
#journal .journal-blog-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin-top:14px;font-size:15px;line-height:1.65;color:var(--muted)}
#journal .journal-blog-card:hover{border-color:var(--action);box-shadow:none}

#journal .journal-blog-card:focus-visible{outline:2px solid var(--action);outline-offset:5px}
@media(max-width:1000px){#journal .journal-blog-grid{gap:20px}#journal .journal-blog-body{padding:20px 18px 24px}#journal .journal-blog-title{font-size:20px}#journal .journal-blog-summary{font-size:14px}}
@media(max-width:700px){#journal .journal-blog-grid{grid-template-columns:1fr;gap:24px}#journal .journal-blog-card{border-radius:18px}#journal .journal-blog-body{padding:22px 22px 26px}#journal .journal-blog-title{font-size:22px;min-height:0;margin-top:14px}#journal .journal-blog-summary{margin-top:12px}}
@media(prefers-reduced-motion:reduce){#journal .journal-blog-card,#journal .journal-blog-title{transition:none}}

/* A light reading cue, aligned at the foot of every blog card. */
#journal .journal-blog-more{display:inline-flex;align-items:center;gap:12px;margin-top:auto;padding-top:22px;font-size:13px;font-weight:500;line-height:1.5;color:var(--moss-deep)}
#journal .journal-blog-more>span{font-size:17px;line-height:1}
#journal .journal-blog-more{width:max-content;border-bottom:1px solid currentColor;padding-bottom:4px}


/* Project studies: intent and production choices, distinct from journal articles. */
#projects .case-section-intro{font-size:15px;color:var(--muted);margin-top:16px;max-width:520px}
#projects .case-card{display:flex;flex-direction:column;min-width:0;text-align:left;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--canvas);padding-bottom:20px;transition:border-color .2s}
#projects .case-card:hover{border-color:var(--action)}
#projects .project-art{position:relative;aspect-ratio:1.12;border-radius:16px;overflow:hidden;width:100%}
#projects .project-art .atlas{height:100%;width:100%;aspect-ratio:auto;background-size:400% 224%}
#projects .case-image-label{position:absolute;left:16px;bottom:16px;padding:7px 10px;background:rgba(250,249,246,.94);border-radius:5px;font-size:9px;letter-spacing:.1em;color:var(--ink)}
#projects .project-caption{display:flex;flex:1;flex-direction:column;width:100%;padding:22px 20px 0}
#projects .case-sector{font-size:10px;letter-spacing:.07em;color:var(--moss-deep);line-height:1.6;margin:0 0 10px}
#projects .case-sector>span{letter-spacing:0;font-size:12px;color:var(--muted);white-space:nowrap}
#projects .case-card h3{font-size:clamp(24px,2.2vw,30px);line-height:1.2;margin:0}
#projects .case-brief{font-size:14px;line-height:1.65;color:var(--muted);margin:14px 0 24px;max-width:36ch;min-height:3.3em}
.case-specs{width:100%;margin:0 0 20px;padding:16px 0;border-block:1px solid var(--line);font-size:12px;line-height:1.65}
.case-specs>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px}
.case-specs>div+div{margin-top:7px}.case-specs dt{color:var(--muted)}.case-specs dd{margin:0;color:var(--ink)}
#projects .case-specs{margin-top:auto}
#projects .case-read{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;color:var(--ink)}
#projects .case-read>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font-size:18px;transition:background .2s,border-color .2s}
#projects .case-card:hover .case-read>span{background:var(--moss-tint);border-color:var(--moss)}
.case-detail .case-detail-section{margin:20px 0}.case-detail-section h3{font:600 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;color:var(--moss-deep)}
.case-detail .case-detail-section p{font-size:15px;margin:0;line-height:1.65}.case-detail .case-specs{margin:24px 0}
@media(max-width:900px){#projects .project-grid{gap:22px}#projects .case-sector>span{display:block}#projects .case-card h3{font-size:24px}}
@media(max-width:600px){#projects .project-grid{gap:40px}#projects .project-art{aspect-ratio:1.2}#projects .project-art .atlas{background-size:400% 240%}#projects .case-sector>span{display:inline}#projects .case-brief{min-height:0;max-width:none;margin-bottom:20px}#projects .project-caption{padding-top:20px}}

/* A single, quiet detail entry for each signature product. */
#signature .signature-intro{margin-top:14px;color:var(--muted);font-size:15px;line-height:1.65}
#signature .product-details-link{display:block;margin-top:18px;color:var(--ink);font-size:13px;font-weight:500;line-height:1.5;text-align:left}

/* Material library entry uses the shared complete pill outline. */
#materials .materials-more{flex-shrink:0;white-space:nowrap;border-color:var(--line);gap:24px}
#materials .materials-more:hover{border-color:var(--moss);color:var(--ink)}
@media(max-width:700px){#materials .section-heading{align-items:flex-start;flex-direction:column;gap:20px}#materials .materials-more{padding:13px 18px;gap:18px}}
/* Keep category dropdown triggers as quiet text navigation. */
.main-nav>button{border:0;border-bottom:1px solid transparent;border-radius:0;transition:color .2s,border-color .2s}
.main-nav>button:hover,.main-nav>button[aria-expanded=true]{border-bottom-color:var(--action);color:var(--action)}
/* Product detail cue: a compact outlined control instead of bare text. */
#signature .product-card .product-details-link{display:inline-flex;align-items:center;align-self:flex-start;gap:14px;margin-top:18px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:13px;font-weight:500;line-height:1.4;transition:border-color .2s,color .2s,background .2s}
#signature .product-card:hover .product-details-link{border-color:var(--action);color:var(--action);background:#e85a3f0a}
/* Craft cards stay typographic and quiet; the whole card remains clickable. */
.craft-card-title>span:last-child{display:none}
.craft-grid .craft-card-title h3{font-size:clamp(16px,1.35vw,20px)}
@media(max-width:600px){.craft-grid .craft-card-title h3{font-size:18px}}
/* The motion study label is redundant beside the video controls. */
#craft-film-caption{display:none}
/* Material picker options use complete pill controls. */
#site-dialog .material-options button{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;padding:11px 18px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);transition:border-color .2s,color .2s,background .2s}
#site-dialog .material-options button:hover{border-color:var(--action);color:var(--action);background:#e85a3f0a}
 .materials-actions{display:flex;flex-direction:column;align-items:flex-end;gap:13px}.materials-actions .material-foot{margin-top:0;text-align:right;max-width:360px}.materials-actions .material-foot button{color:inherit}
@media(max-width:600px){.materials-actions{align-items:flex-start;width:100%;gap:10px}.materials-actions .material-foot{text-align:left;max-width:none}}
/* Preserve the full sample box photograph instead of cropping its sides. */
.sample-image{aspect-ratio:3/2}
@media(max-width:600px){.sample-image{aspect-ratio:3/2}}
/* Match product-page icon scale and presence in the benefits row. */
.benefit-icon{flex-basis:92px;width:92px;height:92px}
.benefit-icon img{width:92px;height:92px}
.benefit{gap:20px}
@media(max-width:600px){.benefit-icon{flex-basis:76px;width:76px;height:76px}.benefit-icon img{width:76px;height:76px}}

/* Keep the homepage shell in step with the finished product page. */
:root{--action-border:2px}
.button,.quote-button,.footer-subscribe,.newsletter-form button,.text-link,.size-help,.footer-top>div>button{font-weight:600}
.newsletter-form{display:flex;align-items:center;gap:10px;width:100%}
.newsletter-form input{flex:1 1 auto;min-width:0;height:44px;padding:10px 14px;border:1px solid #73766a;border-radius:var(--button-radius);background:transparent;color:inherit;font-size:14px}
.newsletter-form button{flex:0 0 auto;height:44px;padding:10px 18px;border:1px solid var(--action);border-radius:var(--button-radius);background:var(--action);color:#fff;font-size:14px;transition:background .2s,border-color .2s,transform .2s}
.newsletter-form button:hover{background:#cf4934;border-color:#cf4934;transform:translateY(-1px)}
.main-nav>button:hover,.main-nav>button[aria-expanded=true]{border-bottom-width:var(--action-border)}
#signature .product-card:hover .product-details-link,#site-dialog .material-options button:hover{border-width:var(--action-border)}
@media(hover:hover){#signature .product-card:hover,#materials .material-card:hover{border-width:var(--action-border);padding:13px}}
.product-page .gallery-thumb[aria-pressed=true],.product-page .gallery-thumb:hover,.product-page .related-card:hover{border-width:var(--action-border)!important}
.product-page .related-card:hover{padding:11px!important}
@media(max-width:700px){
  .wrap{width:calc(100% - 32px)}
  .footer-newsletter{grid-template-columns:1fr;gap:18px;padding-bottom:24px;margin-bottom:28px;text-align:center}
  .newsletter-action{justify-self:center;width:min(100%,420px);max-width:100%;text-align:center}
  .newsletter-form{gap:8px}
  .newsletter-form input,.newsletter-form button{height:42px}
}
@media(max-width:380px){.wrap{width:calc(100% - 24px)}.newsletter-form input{font-size:13px}.newsletter-form button{padding-inline:14px}}

/* Product pages inherit the homepage's fonts, color tokens and spacing scale. */
.template-section{margin-bottom:var(--section-space);padding:32px;border:1px solid var(--line);border-radius:16px;background:var(--paper);scroll-margin-top:150px}
.template-heading{margin-bottom:30px}.product-page .template-heading h2{font-size:28px;line-height:1.25;letter-spacing:-.025em}.template-heading>p{margin-top:8px;font-size:14px;color:var(--muted)}
.template-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(200px,.75fr);gap:36px;align-items:center}
.template-layout.is-custom{grid-template-columns:1fr}.template-layout.is-custom .template-download{border:0;padding:0;max-width:460px}
.template-preview{margin:0;min-width:0}.template-preview img{width:100%;height:auto;max-height:260px;object-fit:contain}.template-preview figcaption{font-size:11px;color:var(--muted);line-height:1.5;text-align:center;margin-top:14px}
.template-measurements{margin:0;display:grid;gap:20px}.template-measurements>div{border-left:2px solid var(--ink);padding-left:14px}.template-measurements .template-bleed{border-color:var(--action)}.template-measurements .template-safe{border-color:var(--moss);border-left-style:dashed}.template-measurements dt{font-size:16px;font-weight:600}.template-measurements dd{margin:4px 0 0}.template-measurements strong{font-size:14px;font-weight:500}.template-measurements p{font-size:13px;line-height:1.6;color:var(--muted);margin-top:5px}
.template-download{align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-left:1px solid var(--line);padding-left:28px}.template-format-label{font-size:12px;color:var(--muted)}.template-download h3{font-size:20px;margin:7px 0 4px}.template-download>p{font-size:13px;line-height:1.6}.template-change{font-size:12px;color:var(--moss-deep);text-decoration:underline;text-underline-offset:4px;margin-top:12px}.template-download .button{background:var(--action);border-color:var(--action);color:white;font-size:13px;justify-content:center;text-align:center;width:100%;padding:13px 16px;margin-top:24px}.template-download .button:hover{background:#d84c33}.template-download .button:disabled{background:var(--line);border-color:var(--line);color:var(--muted);cursor:not-allowed}.template-status,#template-corner-note{font-size:12px!important;color:var(--muted);margin-top:12px}
.template-production-note{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;line-height:1.6;color:var(--muted)}.template-requirements{margin-top:16px;font-size:13px}.template-requirements summary{cursor:pointer;font-weight:600;width:fit-content}.template-requirements ul{margin:12px 0 0;padding-left:18px;color:var(--muted);line-height:1.8}.template-section [hidden]{display:none!important}
@media(max-width:1050px){.template-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px}.template-download{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:20px 0 0;display:block}.template-download .button{width:auto;display:inline-flex;margin-top:16px}.template-change{display:block}.template-preview img{max-height:230px}}
@media(max-width:600px){.template-section{padding:22px 18px;scroll-margin-top:100px}.product-page .template-heading h2{font-size:24px}.template-layout{grid-template-columns:1fr;gap:25px}.template-preview img{max-height:200px}.template-heading{margin-bottom:22px}.template-download .button{width:100%}}
.breadcrumbs.wrap{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding-block:25px;font-size:12px;color:var(--muted)}
.breadcrumbs a:hover{color:var(--action)}.breadcrumbs [aria-current]{color:var(--ink)}
.pdp-layout{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,1fr);gap:67px;align-items:start;padding-bottom:var(--section-space)}
.pdp-gallery{position:sticky;top:163px;min-width:0}.gallery-stage{position:relative;overflow:hidden;border-radius:var(--card-button-radius);background:var(--paper);aspect-ratio:1/1.015}
.gallery-open{display:block;width:100%;height:100%;padding:0;border-radius:0;overflow:hidden;cursor:zoom-in}.gallery-open img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-open.detail img{transform:scale(1.7);object-position:45% 55%}
.gallery-label{position:absolute;top:20px;left:20px;background:var(--canvas);border-radius:6px;padding:7px 11px;font-size:10px;letter-spacing:.08em;pointer-events:none}
.gallery-zoom{position:absolute;bottom:18px;right:18px;background:var(--canvas);width:40px;height:40px;display:grid;place-items:center;border-radius:50%;pointer-events:none}.gallery-zoom svg{width:18px;height:18px}
.gallery-thumbs{display:flex;gap:12px;margin-top:10px}
.gallery-thumb{border:1px solid transparent;padding:4px;border-radius:10px;width:84px;height:84px;overflow:hidden}.gallery-thumb[aria-pressed=true]{border-color:var(--action)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:6px}.gallery-thumb.detail img{object-fit:cover;transform:scale(1.5)}.gallery-thumb.detail{padding:14px;overflow:hidden}.gallery-thumb:hover{border-color:var(--action)}
.gallery-note{margin-top:27px;border-top:1px solid var(--line);padding-top:23px;display:flex;align-items:center;gap:15px}.gallery-note>img{width:36px;height:36px}.gallery-note p{font-size:13px}.gallery-note a{font-size:12px;color:var(--moss-deep);text-decoration:underline;text-underline-offset:3px}.gallery-note>span{margin-left:auto;font-size:22px}
.pdp-heading h1{font-size:31px;line-height:1.08;letter-spacing:-.04em;margin:0 0 19px}.pdp-description{font-size:15px;color:var(--ink);max-width:480px}.pdp-tags{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;margin-top:20px;color:var(--moss-deep)}.pdp-tags span:before{content:'✓';margin-right:6px}
.pdp-form{margin-top:29px;padding-top:25px;border-top:1px solid var(--line)}.config-heading{display:flex;align-items:center;justify-content:flex-end;margin-bottom:12px}.config-heading a{font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}.pdp-field{display:flex;flex-direction:column;min-width:0}.pdp-field>label,.pdp-field>legend{font-size:12px;font-weight:600;margin-bottom:8px}.pdp-field select,.pdp-field input{width:100%;height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:13px;color:var(--ink);margin:0}.pdp-field select{padding-right:28px}.pdp-field input:focus,.pdp-field select:focus{border-color:var(--action)}
.pdp-fieldset{padding:0;border:0;margin:21px 0 0}.pdp-fieldset legend{font-size:18px;font-weight:600;margin-bottom:10px}.choice-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice{position:relative;display:flex;align-items:center;gap:9px;cursor:pointer}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice>span{width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border:1px solid var(--line);border-radius:8px;min-height:106px}.choice input:checked+span{background:transparent;border-color:var(--action);color:var(--moss-deep);box-shadow:inset 0 0 0 .5px var(--action)}.choice input:focus-visible+span{outline:2px solid var(--action);outline-offset:3px}.corner-copy{display:block;min-width:0;align-self:flex-start}.corner-title{display:block;font-size:16px;font-weight:500;line-height:1.35;color:var(--ink)}.corner-description{display:block;font-size:14px;line-height:1.5;margin-top:6px;color:var(--muted)}.corner-icon{display:block;flex:0 0 38px;width:38px;height:38px;border:2.5px solid var(--moss-deep);border-left-style:dashed;border-bottom-style:dashed}.corner-icon.rounded{border-top-right-radius:100%}.choice:hover>span{border-color:var(--action)}
.custom-field{margin-top:12px}.config-summary{margin-top:24px;padding:19px 20px;background:var(--paper);border-radius:10px}.config-summary-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.config-summary-top strong{font-size:15px;font-weight:600}.config-summary-top>span{font-size:10px;color:var(--moss-deep);border:1px solid #696f5840;padding:3px 7px;border-radius:5px}.config-summary p{font-size:12px;color:var(--muted);margin-top:7px}
.product-primary{position:relative;display:flex;justify-content:center;text-align:center;width:100%;margin-top:28px;background:var(--action);color:white;border-color:var(--action);padding:15px 48px;font-size:16px}.product-primary>span{position:absolute;right:22px;top:50%;transform:translateY(-50%)}.product-primary:hover{background:#d84c33;border-color:#d84c33}.pdp-help{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 7px;font-size:14px;color:var(--muted);margin-top:12px}.pdp-help a{color:var(--moss-deep);text-decoration:underline;text-underline-offset:3px}.config-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:13px;text-align:center}
.product-tabs{border:0}.product-tabs .wrap{display:flex;gap:38px;border-bottom:1px solid var(--line)}.product-tabs [role="tab"]{font-size:13px;padding:19px 0;display:block;border-bottom:2px solid transparent}.product-tabs [aria-selected="true"]{border-color:var(--action);color:var(--moss-deep)}.product-tabs [role="tab"]:hover{color:var(--action);border-color:var(--action)}
.product-page .product-benefits{padding-top:0;padding-bottom:var(--section-space);border:0}
.product-benefits .benefits-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
.product-benefits .benefit{flex-direction:column;align-items:center;text-align:center;gap:20px}
.product-benefits .benefit-icon{flex:0 0 96px;width:96px;height:96px;background:transparent;border-radius:0}
.product-benefits .benefit-icon img{width:96px;height:96px}
.product-benefits .benefit h3{font-size:18px;line-height:1.4}
.product-benefits .benefit p{font-size:14px;line-height:1.65;margin:12px auto 0;max-width:295px;color:var(--muted)}
@media(max-width:1150px){.product-benefits .benefits-grid{gap:24px}.product-benefits .benefit h3{font-size:16px}}
@media(max-width:900px){.product-benefits .benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}.product-benefits .benefit-icon{flex-basis:80px;width:80px;height:80px}.product-benefits .benefit-icon img{width:80px;height:80px}}
@media(max-width:600px){.product-benefits .benefits-grid{gap:32px 20px}.product-benefits .benefit{gap:16px}.product-benefits .benefit-icon{flex-basis:72px;width:72px;height:72px}.product-benefits .benefit-icon img{width:72px;height:72px}.product-benefits .benefit h3{font-size:16px}.product-benefits .benefit p{font-size:13px;margin-top:10px}}
.product-story{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story-copy .eyebrow{color:var(--moss-deep);margin-bottom:17px}.story-copy h2{margin-bottom:25px}.story-copy h2 em{color:var(--moss)}.story-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:430px}.story-points{padding:0;margin:26px 0 0;list-style:none;display:grid;gap:15px}.story-points li{display:flex;align-items:start;gap:14px;font-size:13px}.story-points li>span{color:var(--moss);font-size:11px;padding-top:2px}.story-image{border-radius:16px;overflow:hidden;position:relative;aspect-ratio:1.08;background:var(--paper)}.story-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.4)}.story-image>span{position:absolute;bottom:20px;left:23px;font-size:10px;letter-spacing:.09em;background:var(--canvas);padding:7px 10px;border-radius:6px}
.detail-band{background:var(--paper);padding-block:var(--band-space)}.spec-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.spec-intro .eyebrow{margin-bottom:15px;color:var(--moss-deep)}.spec-intro>p:last-child{font-size:14px;color:var(--muted);margin-top:22px;max-width:340px}.spec-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.spec-table th{font-weight:500;width:32%;color:var(--muted)}.spec-table th,.spec-table td{padding:15px 0;border-bottom:1px solid #d9d7ce;vertical-align:top}.spec-table tr:first-child th,.spec-table tr:first-child td{padding-top:0}.spec-table td{padding-left:20px}
.artwork-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.artwork-diagram{position:relative;display:grid;place-items:center;aspect-ratio:1.35;background:var(--paper);border-radius:16px;padding:42px}.artwork-sheet{width:100%;max-width:330px;aspect-ratio:1.7;position:relative;background:#e4e6dc;border:1px dashed var(--moss);padding:9px}.artwork-trim{height:100%;border:1px solid var(--moss);padding:14px;background:var(--canvas)}.artwork-safe{height:100%;border:1px dashed #acb397;display:flex;align-items:center;justify-content:center;flex-direction:column}.artwork-safe strong{font:italic 32px/1.2 var(--serif);color:var(--moss)}.artwork-safe span{font-size:9px;letter-spacing:.11em;margin-top:8px;color:var(--muted)}.diagram-label{position:absolute;bottom:22px;font-size:10px;color:var(--muted)}.artwork-copy .eyebrow{margin-bottom:16px;color:var(--moss-deep)}.artwork-copy h2{margin-bottom:22px}.artwork-copy>p:not(.eyebrow){font-size:14px;color:var(--muted)}.artwork-checklist{list-style:none;margin:23px 0;padding:0;display:grid;gap:12px;font-size:13px}.artwork-checklist li:before{content:'✓';color:var(--moss);margin-right:12px}.artwork-copy .button{font-size:13px;margin-top:4px}
.product-sample{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;background:var(--moss);color:white;overflow:hidden}.product-sample>img{width:100%;height:100%;object-fit:cover;min-height:350px}.product-sample-copy{padding:50px;display:flex;flex-direction:column;align-items:start;justify-content:center}.product-sample h2{font-size:clamp(32px,3.2vw,46px);margin:18px 0 23px}.product-sample-copy>p:not(.eyebrow){color:#eeeFE8;font-size:14px;max-width:390px}.product-sample .button{margin-top:27px;font-size:13px}
.product-page .related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.related-card{border:1px solid var(--line);padding:12px;border-radius:16px;text-align:left}.related-card:hover{border:1.5px solid var(--action);padding:11.5px}.related-card .atlas{aspect-ratio:1.28;border-radius:8px;background-size:400% 256%}.related-card h3{display:flex;justify-content:space-between;font-size:17px;margin-top:18px;padding-inline:2px}.related-card p{font-size:12px;color:var(--muted);padding-inline:2px;margin:7px 0 5px}.product-page .related-heading h2{font-size:clamp(30px,3.3vw,44px)}
.product-page .faq-section{padding-top:0}.pdp-mobile-bar{display:none}.gallery-dialog{width:min(1000px,calc(100% - 32px));padding:20px;background:var(--canvas);border-radius:16px}.gallery-dialog .dialog-header{margin:0 0 10px}.gallery-dialog-photo{overflow:hidden;border-radius:10px;max-height:70vh}.gallery-dialog-photo img{width:100%;height:100%;max-height:68vh;object-fit:contain}.gallery-dialog-photo.detail img{transform:scale(1.6)}.gallery-dialog-caption{margin:10px 0 0;font-size:12px;color:var(--muted)}
.product-brief-list{margin:20px 0;background:var(--canvas);padding:20px;border-radius:12px}.product-brief-list>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.product-brief-list>div:last-child{border:0}.product-brief-list dt{color:var(--muted)}.product-brief-list dd{margin:0;text-align:right}.product-brief-form textarea{min-height:80px}.product-brief-form .button{margin-top:20px;background:var(--action);color:white;border-color:var(--action)}.product-upload{margin-block:18px}.product-upload input{font-size:12px;background:var(--canvas)}.product-upload ul{padding:0;list-style:none;font-size:12px;overflow-wrap:anywhere}.product-upload li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.product-upload li button{padding:4px 10px;font-size:18px}.product-brief-status{font-size:13px;color:var(--moss-deep)!important;margin-top:17px!important}
.menu-product-link{display:block;padding:5px 0;text-align:left;font-size:13px;border-radius:0}.menu-product-link:hover{color:var(--action)}.mobile-subgroup .menu-product-link{padding:7px 12px;font-size:14px}.category-dialog-grid .menu-product-link{display:flex;justify-content:space-between}
@media(max-width:1150px){.pdp-layout{gap:36px;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}.pdp-heading h1{font-size:31px;}.pdp-gallery{top:155px}.product-story,.spec-layout,.artwork-section{gap:44px}.product-sample-copy{padding:35px}.gallery-note p{font-size:12px}}
@media(max-width:900px){.pdp-layout{grid-template-columns:1fr 1fr;gap:26px}.pdp-gallery{top:100px}.pdp-heading h1{font-size:31px;}.pdp-description{font-size:14px}.pdp-tags{gap:6px 12px}.config-grid{gap:16px 10px}.pdp-field select{font-size:12px;padding-left:9px}.config-summary{padding:15px}.config-summary-top{align-items:start}.config-summary-top>span{white-space:nowrap}.gallery-stage{aspect-ratio:.86}.gallery-thumbs{gap:7px}.gallery-thumb{width:66px;height:66px}.gallery-note{align-items:start}.gallery-note>span{display:none}.product-sample-copy{padding:28px}.product-sample h2{font-size:32px}.product-sample>img{min-height:380px}.related-card h3{font-size:15px}.product-story,.spec-layout,.artwork-section{gap:32px}.artwork-diagram{padding:24px}.artwork-safe strong{font-size:26px}}
@media(max-width:700px){.pdp-layout{grid-template-columns:1fr;gap:32px}.pdp-gallery{position:static}.gallery-stage{aspect-ratio:1.13}.gallery-thumbs{margin-top:14px}.gallery-thumb{width:72px;height:72px}.gallery-note{display:none}.pdp-heading h1{font-size:31px;max-width:450px}.pdp-heading h1 br{display:none}.pdp-description{max-width:none}.pdp-form{margin-top:23px}.pdp-field select{font-size:14px}.product-story,.spec-layout,.artwork-section{grid-template-columns:1fr;gap:30px}.story-image{aspect-ratio:1.2}.story-copy>p:not(.eyebrow){max-width:none}.product-tabs .wrap{gap:27px;overflow:auto}.product-tabs [role="tab"]{white-space:nowrap;font-size:12px}.product-sample{grid-template-columns:1fr}.product-sample>img{min-height:0;aspect-ratio:1.5}.product-sample-copy{padding:30px}.product-page .related-grid{grid-template-columns:repeat(3,minmax(220px,1fr));overflow-x:auto;gap:15px;padding-bottom:12px}.artwork-diagram{aspect-ratio:1.5;padding:38px}.pdp-mobile-bar{position:fixed;z-index:19;left:0;right:0;bottom:0;background:var(--canvas);border-top:1px solid var(--line);padding:10px 20px calc(10px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:15px}.pdp-mobile-bar strong{font-size:12px;display:block}.pdp-mobile-bar span{font-size:10px;color:var(--muted)}.pdp-mobile-bar .button{font-size:12px;background:var(--action);color:white;border-color:var(--action);padding:11px 17px;gap:20px}.product-page{padding-bottom:77px}.breadcrumbs.wrap{padding-block:20px;font-size:11px}.pdp-mobile-bar[hidden]{display:none}}
@media(max-width:700px){.product-page .related-heading{flex-direction:column;align-items:flex-start;gap:18px}.product-page .related-heading .text-link{font-size:12px}.pdp-heading h1 br:after{content:' '}}
@media(max-width:380px){.pdp-heading h1{font-size:31px;}.config-grid{grid-template-columns:1fr}.pdp-tags{font-size:14px}.product-tabs .wrap{gap:20px}}
.quantity-fieldset{min-width:0}
.quantity-fieldset legend{font-size:18px;margin-bottom:5px}
.quantity-pricing-note,.quantity-savings-note,.quantity-custom-note{font-size:11px;line-height:1.5;color:var(--muted)}
.quantity-pricing-note{margin-bottom:12px}.quantity-savings-note{margin-top:9px}
.quantity-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.quantity-option{display:block;position:relative;cursor:pointer}
.quantity-option+ .quantity-option{border-top:1px solid var(--line)}
.quantity-option>input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.quantity-option-body{min-height:52px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.5fr) minmax(78px,.85fr);align-items:center;gap:12px;padding:15px 19px;color:var(--ink);font-size:16px;line-height:1.4}
.quantity-value{display:flex;align-items:center;gap:12px}
.quantity-recommended{display:inline-flex;align-items:center;border:1px solid var(--action);background:var(--action);color:var(--white);font-size:12px;font-weight:500;line-height:1.3;padding:4px 8px;border-radius:999px;white-space:nowrap}
.quantity-price{display:flex;align-items:baseline;gap:12px;white-space:nowrap}
.quantity-total{font-size:16px;font-weight:500;min-width:29px}
.quantity-unit{font-size:14px;color:var(--muted)}
.quantity-saving{font-size:14px;color:var(--moss-deep);white-space:nowrap;text-align:right}
.quantity-option>input:checked+.quantity-option-body{background:#696f5808;box-shadow:inset 0 0 0 1.5px var(--action)}
.quantity-option>input:focus-visible+.quantity-option-body{outline:2px solid var(--action);outline-offset:-4px}
.quantity-option:hover .quantity-option-body{background:var(--moss-tint)}
.quantity-custom .quantity-option-body{display:flex;align-items:center;justify-content:space-between;font-size:16px}
.quantity-chevron{width:19px;height:19px;stroke-width:1.8;color:var(--muted);transition:transform .15s}
.quantity-custom>input:checked+.quantity-option-body .quantity-chevron{transform:rotate(180deg)}
.quantity-list .custom-field{padding:16px 19px;margin:0;background:var(--paper);border-top:1px solid var(--line)}
.quantity-custom-note{margin-top:8px}
@media(max-width:1150px){.quantity-option-body{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;min-height:76px;padding:14px}.quantity-value{grid-column:1;grid-row:1/3;flex-wrap:wrap;gap:5px 8px}.quantity-price{grid-column:2;grid-row:1;justify-content:flex-end;gap:9px}.quantity-saving{grid-column:2;grid-row:2;min-height:19px}.quantity-custom .quantity-option-body{min-height:56px}.quantity-list .custom-field{padding:14px}.quantity-recommended{font-size:11px;padding:3px 6px}}
@media(max-width:380px){.quantity-value{flex-direction:column;align-items:flex-start}.quantity-price{gap:7px}.quantity-unit{font-size:13px}}
.size-fieldset{min-width:0;border:0;padding:0;margin:0 0 21px}
.size-fieldset legend{font-size:18px;font-weight:600;margin-bottom:12px;padding:0}
.size-help{font-size:12px;font-weight:400;padding:0;margin-left:7px;text-decoration:underline;text-underline-offset:4px;border-radius:0}
.size-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.size-card{position:relative;cursor:pointer;min-width:0}
.size-card>input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.size-card-body{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:139px;height:100%;padding:16px 5px 14px;border:1px solid var(--line);border-radius:8px;text-align:center;color:var(--ink);background:transparent;transition:border-color .15s,box-shadow .15s}
.size-illustration{height:60px;display:flex;align-items:center;justify-content:center;width:100%;margin-bottom:9px}
.size-shape{display:block;background:var(--moss-tint);border:1px solid var(--moss);width:58px;height:33px}
.size-square{width:43px;height:43px}.size-european{width:56px;height:36px}.size-custom{width:58px;height:22px}
.size-name,.size-dimensions{font-size:13px;line-height:1.4}.size-name-custom{margin-top:9px}
.size-card>input:checked+.size-card-body{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}
.size-card>input:checked+.size-card-body .size-shape{background:var(--moss)}
.size-card>input:focus-visible+.size-card-body{outline:2px solid var(--action);outline-offset:4px}
.size-card:hover .size-card-body{border-color:var(--action)}
.pdp-field-wide{grid-column:1/-1}
@media(min-width:901px) and (max-width:1150px){.size-options{gap:8px}.size-name,.size-dimensions{font-size:12px}}
@media(max-width:900px){.size-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Alternating photo-and-copy features follow the homepage's module rhythm. */
.product-selling-points{display:grid;gap:var(--section-space);padding-block:var(--section-space)}
.selling-point{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}
.selling-point-image{aspect-ratio:1.12;overflow:hidden;border-radius:var(--card-button-radius);background:var(--paper)}
.selling-point-image img{display:block;width:100%;height:100%;object-fit:cover}
.selling-point-copy{max-width:490px;min-width:0}
.selling-point-copy .eyebrow{color:var(--moss-deep);margin-bottom:16px}
.selling-point-copy h2{margin-bottom:24px}
.selling-point-copy>p:not(.eyebrow){font-size:15px;line-height:1.75;color:var(--muted)}
.selling-point-copy>p+p{margin-top:16px}
.selling-point-reversed .selling-point-image{grid-column:2;grid-row:1}
.selling-point-reversed .selling-point-copy{grid-column:1;grid-row:1}
@media(max-width:1150px){.selling-point{gap:44px}}
@media(max-width:900px){.selling-point{gap:32px}.selling-point-copy h2{font-size:32px}.selling-point-copy .eyebrow{font-size:10px}.selling-point-image{aspect-ratio:1}}
@media(max-width:700px){.selling-point{grid-template-columns:minmax(0,1fr);gap:24px}.selling-point-image{aspect-ratio:1.12}.selling-point-copy{max-width:none}.selling-point-reversed .selling-point-image,.selling-point-reversed .selling-point-copy{grid-column:auto;grid-row:auto}.selling-point-copy h2{margin-bottom:18px}.selling-point-copy .eyebrow{margin-bottom:12px}.selling-point-copy>p:not(.eyebrow){font-size:14px}}
@media(prefers-reduced-motion:reduce){.product-page *{scroll-behavior:auto;transition:none!important}}

/* Product-page selection and keyboard focus use the homepage action color. */
.product-page :is(button,a,summary,input,textarea,select):focus-visible{outline-color:var(--action)}
.product-page .main-nav>button[aria-expanded=true],.product-page .quote-progress button.active{border-color:var(--action)}
.product-page .header-search:focus-within{border-color:var(--action);box-shadow:0 0 0 2px #e85a3f26}
.product-page .pdp-field select:focus{outline:none;box-shadow:none;border-color:var(--action)}
.finish-fieldset{grid-column:1/-1;min-width:0;margin:0;padding:0;border:0}
.finish-fieldset legend{font-size:18px;font-weight:600;padding:0;margin-bottom:12px}
.finish-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.finish-card{position:relative;display:block;min-width:0;cursor:pointer}
.finish-card>input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.finish-card-body{display:flex;flex-direction:column;height:100%;padding:14px;border:1px solid var(--line);border-radius:12px;transition:border-color .15s,box-shadow .15s}
.finish-card img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;border-radius:7px;background:var(--paper)}
.finish-card-title{display:block;margin-top:14px;font-size:16px;line-height:1.35;font-weight:600;color:var(--ink)}
.finish-card-description{display:block;margin-top:7px;font-size:14px;line-height:1.55;color:var(--muted)}
.finish-card:hover .finish-card-body{border-color:var(--action)}
.finish-card>input:checked+.finish-card-body{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}
.finish-card>input:focus-visible+.finish-card-body{outline:2px solid var(--action);outline-offset:3px}
@media(min-width:701px) and (max-width:1000px){.finish-options{gap:10px}.finish-card-body{padding:10px}.finish-card-title{font-size:16px}}
@media(max-width:380px){.finish-options{grid-template-columns:1fr}}

.pdp-heading{container-type:inline-size}
.product-page .pdp-heading h1{white-space:nowrap;max-width:none;font-size:min(31px,7.6cqi)}

@media(min-width:701px) and (max-width:1000px), (max-width:480px){.choice>span{padding:14px 12px;gap:10px}.corner-title{font-size:16px}.corner-icon{flex-basis:30px;width:30px;height:30px}}

/* Product information tabs share one content area. */
.product-page [role="tabpanel"][hidden]{display:none!important}
.product-tabs [role="tab"]{background:transparent;border-radius:0;text-align:left;cursor:pointer;color:var(--ink)}
.product-tabs [role="tab"][aria-selected="true"]{color:var(--moss-deep);border-bottom-color:var(--action)}
.product-tabs{scroll-margin-top:140px}
.product-tabs [role="tab"]:focus-visible{outline:2px solid var(--action);outline-offset:3px}
.product-tabs~.template-section{margin-top:36px}
@media(max-width:600px){.product-tabs~.template-section{margin-top:24px}}

/* Larger, stronger product information tab labels. */
.product-page .product-tabs [role="tab"]{font-size:16px;font-weight:600}

/* Compact product FAQ with a soft moss-green expanded state. */
#product-faq{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:64px;align-items:start}
#product-faq .product-faq-intro h2{font-size:30px;line-height:1.25;letter-spacing:-.025em;max-width:16ch;margin:0 0 22px}
#product-faq .faq-list details{padding:20px 0;background:transparent}
#product-faq .faq-list summary{align-items:center;border-radius:0;font-size:16px;font-weight:500;line-height:1.5;gap:20px}
#product-faq .faq-list summary:hover{color:var(--moss-deep)}
#product-faq .faq-list details[open]{background:var(--moss-tint);border-top-color:#c9cdbd;padding-inline:18px;border-radius:12px}
#product-faq .faq-list details[open] summary{color:var(--ink);font-weight:600}
#product-faq .faq-list .product-faq-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;font-size:21px;font-weight:400;line-height:1;background:var(--paper);color:var(--moss-deep);transform:none}
#product-faq .faq-minus{display:none}
#product-faq details[open] .product-faq-toggle{background:var(--moss-deep);color:var(--paper)}
#product-faq details[open] .faq-plus{display:none}
#product-faq details[open] .faq-minus{display:inline}
#product-faq .faq-list details>p{font-size:14px;line-height:1.75;margin-top:14px;padding-right:50px;max-width:70ch}
#product-faq summary:focus-visible{outline:2px solid var(--moss-deep);outline-offset:5px}
@media(max-width:900px){#product-faq{gap:32px}#product-faq .product-faq-intro h2{font-size:28px}}
@media(max-width:700px){#product-faq{grid-template-columns:1fr;gap:24px}#product-faq .product-faq-intro{margin:0}#product-faq .product-faq-intro h2{max-width:none;font-size:26px;margin-bottom:16px}#product-faq .faq-list summary{font-size:15px}#product-faq .faq-list details>p{padding-right:0}}

/* One display scale for the product page's primary section headings. */
.product-page .selling-point-copy h2,
.product-page .template-heading h2,
.product-page .artwork-copy h2,
.product-page .product-sample-copy h2,
.product-page .related-heading h2,
.product-page #product-faq .product-faq-intro h2{font-size:clamp(32px,3.2vw,44px);line-height:1.15}
@media(max-width:700px){.product-page .selling-point-copy h2,.product-page .template-heading h2,.product-page .artwork-copy h2,.product-page .product-sample-copy h2,.product-page .related-heading h2,.product-page #product-faq .product-faq-intro h2{font-size:32px}}

/* Keep the mobile product content broad, with a compact edge gutter. */
@media(max-width:700px){.product-page .wrap{width:calc(100% - 32px)}.product-page .pdp-layout{width:calc(100% - 32px)}.product-page .gallery-stage{aspect-ratio:1.13}}
@media(max-width:380px){.product-page .wrap{width:calc(100% - 24px)}.product-page .pdp-layout{width:calc(100% - 24px)}}

/* Mobile configuration rhythm: wider cards, tighter stacking, no horizontal squeeze. */
@media(max-width:700px){
  .product-page{overflow-x:hidden}
  .product-page .pdp-layout{gap:20px}
  .product-page .pdp-heading h1{font-size:24px!important;line-height:1.15;white-space:normal;max-width:100%}
  .product-page .pdp-tags{flex-wrap:nowrap;gap:8px;font-size:12px;white-space:nowrap}
  .product-page .pdp-form{margin-top:18px}
  .product-page .size-options{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
  .product-page .size-options::-webkit-scrollbar{display:none}
  .product-page .size-card{flex:0 0 136px}
  .product-page .size-card-body{min-height:128px;padding:13px 5px 12px}
  .product-page .size-illustration{height:52px;margin-bottom:7px}
  .product-page .finish-options{gap:10px}
  .product-page .finish-card-body{padding:8px}
  .product-page .finish-card img{aspect-ratio:2.15}
  .product-page .finish-card-title{margin-top:9px;font-size:15px}
  .product-page .finish-card-description{margin-top:5px;font-size:13px;line-height:1.45}
  .product-page .choice-row{gap:8px}
  .product-page .choice>span{min-height:72px;padding:10px 12px}
  .product-page .quantity-option-body{min-height:70px;padding:12px 13px}
  .product-page .quantity-option-body{grid-template-columns:minmax(0,.8fr) auto auto;min-height:56px;gap:6px;padding:10px 12px;font-size:14px}
  .product-page .quantity-value{grid-column:1;grid-row:1;flex-wrap:nowrap;flex-direction:row;gap:6px}
  .product-page .quantity-price{grid-column:2;grid-row:1;gap:6px}
  .product-page .quantity-saving{grid-column:3;grid-row:1;min-height:0;font-size:12px}
  .product-page .product-tabs [role="tab"]{font-size:16px}
  .product-page .gallery-thumbs{margin-top:8px}
  .product-page .related-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(280px,82vw);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .product-page .related-grid::-webkit-scrollbar{display:none}
  .product-page .related-card{scroll-snap-align:start}
  .product-page .related-heading .text-link{display:none}
  .product-page .pdp-tags{flex-wrap:wrap;white-space:normal}
  .product-page .size-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;overflow:visible;padding-bottom:0}
  .product-page .size-card{flex:initial}
  .product-page .size-card-body{min-height:108px;padding:9px 2px 8px}
  .product-page .size-illustration{height:38px;margin-bottom:5px}
  .product-page .size-name{font-size:12px;line-height:1.2}
  .product-page .size-dimensions{font-size:10px;line-height:1.2}
  .product-page .product-tabs .wrap{overflow:visible;flex-wrap:wrap}
  .product-page .related-grid{grid-template-columns:1fr;grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;scroll-snap-type:none}
  .product-page .related-card{scroll-snap-align:none}
  .product-page .quantity-option-body{grid-template-columns:minmax(0,1fr) auto;min-height:70px}
  .product-page .quantity-value{grid-column:1;grid-row:1/3;flex-wrap:wrap}
  .product-page .quantity-price{grid-column:2;grid-row:1;justify-content:flex-end}
  .product-page .quantity-saving{grid-column:2;grid-row:2;min-height:19px}
  .product-page .related-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(280px,82vw);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none}
  .product-page .related-grid::-webkit-scrollbar{display:none}
  .product-page .related-card{scroll-snap-align:start}
}
@media(max-width:900px){.breadcrumbs.wrap{padding-block:12px}}

/* The standalone product view uses semantic nav columns in its footer. */
.footer-top>nav>a{display:block;font-size:15px;line-height:1.7;margin-bottom:10px}
.footer-top>nav>a:hover{color:#f0846e}
@media(max-width:700px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top>nav{min-width:0;overflow-wrap:anywhere}}
.product-page .pdp-mobile-bar{display:none!important}
.product-page .related-card .atlas{aspect-ratio:1;background-size:400% 200%;background-position:var(--x,0%) var(--y,0%)}
.product-page .related-card{display:block;color:inherit;text-decoration:none}
.product-page .related-product-image,.product-page .related-product-placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;background:#e9e7e1;overflow:hidden}
.product-page .related-product-image img{display:block;width:100%;height:100%;object-fit:cover}
.product-page .related-product-placeholder{font-size:clamp(76px,12vw,168px);font-weight:900;color:#eb573d}
.product-page .button,.product-page .footer-subscribe,.product-page .text-link,.product-page .size-help{font-size:16px;font-weight:600}
.product-page .product-sample>img{object-fit:contain;object-position:center;background:var(--paper)}
.product-page .product-sample>img{height:auto;min-height:0;aspect-ratio:auto;align-self:center;object-fit:contain!important;object-position:center!important;max-width:100%}
.product-page .related-heading .text-link{display:inline-flex;align-items:center;gap:18px;border:1px solid var(--ink);border-radius:999px;padding:12px 18px;text-decoration:none}
.product-page .related-heading .text-link span{margin-left:0}
.product-page .related-heading .text-link{transition:background .2s ease,color .2s ease,border-color .2s ease}
.product-page .related-heading .text-link:hover{background:var(--action);border-color:var(--action);color:#fff}

/* The legacy Soft Touch page shares real, crawlable catalog navigation. */
.main-nav>a{display:inline-flex;align-items:center;border-bottom:2px solid transparent;white-space:nowrap;font-size:13px;font-weight:600}.main-nav>a:hover{border-color:var(--action);color:var(--action)}.main-nav{overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.mobile-nav>a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;font-size:15px;font-weight:600}.mobile-nav>a span{color:var(--action)}
@media(max-width:1150px){.main-nav>a{font-size:12px}}@media(max-width:900px){.main-nav{display:none}}

/* Editable design-page body content. */
.moss-page-editorial{max-width:960px;padding-block:56px 72px}
.moss-page-editorial>*+*{margin-top:22px}
.moss-page-editorial h2{font-size:clamp(30px,4vw,48px);line-height:1.15}
.moss-page-editorial h3{font-size:clamp(20px,2vw,28px)}
.moss-page-editorial p,.moss-page-editorial li{font-size:16px;line-height:1.75}
.moss-page-editorial ul,.moss-page-editorial ol{padding-left:1.5em}
.moss-page-editorial img{height:auto;border-radius:12px}
.moss-page-editorial a:not(.button){text-decoration:underline;text-underline-offset:3px}
.moss-page-editorial details{padding:18px 0;border-top:1px solid var(--line)}
.moss-page-editorial summary{cursor:pointer;font-weight:600}
.product-page .related-product-image{position:relative}
.product-page .related-product-image .moss-concept-badge{position:absolute;left:12px;bottom:12px;z-index:2;padding:7px 10px;border-radius:4px;background:#1e241fde;color:#fff;font-size:10px;font-weight:600;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}

/* The soft-touch project brief uses the same clear consent treatment as the catalog. */
.product-brief-form .moss-consent{display:flex;align-items:flex-start;gap:11px;margin:18px 0;font-size:12px;font-weight:400;line-height:1.55;color:#454b42;cursor:pointer}
.product-brief-form .moss-consent input[type=checkbox]{display:block;flex:0 0 18px;width:18px;height:18px;min-width:18px;padding:0;margin:1px 0 0;border-radius:3px;accent-color:var(--moss-deep)}
.product-brief-form .moss-consent span{flex:1;min-width:0}
.product-brief-form .moss-consent:focus-within{outline:2px solid var(--action);outline-offset:4px}
.product-brief-form .moss-upload-note,.product-brief-form .moss-form-note{display:block;color:var(--muted);font-size:11px;line-height:1.55;margin:7px 0 15px}
