@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/dm-sans-400.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/dm-sans-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/manrope-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/manrope-500.ttf) format('truetype');
}
:root{--paper:#f7f5ef;--ink:#292c26;--muted:#66675e;--line:#d9d7cc;--bronze:#93764f;--dark:#252721}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.09}h1{font-size:clamp(54px,5.5vw,86px)}h2{font-size:clamp(38px,4.1vw,64px)}h3{font-weight:400;line-height:1.3}em{font-weight:400;color:var(--bronze)}p+p{margin-top:20px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #b99361;outline-offset:6px}input:focus,select:focus,textarea:focus{outline:1px solid #c7b38e;outline-offset:5px}.section{padding:110px max(6.2vw,24px)}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:600;line-height:1.5;margin-bottom:26px}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 4.4vw;background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid #dedbd3}.wordmark{font-size:32px;letter-spacing:.13em;font-weight:300;line-height:1;display:inline-flex;flex-direction:column}.wordmark span{font-size:8px;letter-spacing:.44em;margin-top:10px;text-align:center}.header nav{display:flex;gap:29px;font-size:12px}.header nav a:hover{color:var(--bronze)}.header-contact{font-size:12px;border-bottom:0;padding:8px 0;min-width:104px;display:flex;justify-content:space-between}.header-contact span{font-size:20px}.menu-toggle{display:none}.hero{height:min(790px,calc(100svh - 96px));min-height:610px;position:relative;color:#fff;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(12,16,12,.72),rgba(12,16,12,.2) 76%),linear-gradient(0deg,rgba(12,16,12,.55),transparent 35%)}.hero-content{position:relative;padding:95px 6.2vw 110px}.hero h1 em{color:#dfc8a6}.hero .eyebrow{color:#e1d8c9}.hero-copy{font-size:15px;line-height:1.7;margin:25px 0 30px;color:#e8e6df}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:16px 23px;font-size:12px;border:1px solid transparent;transition:background .2s,color .2s}.button span{font-size:22px;line-height:1}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#d7c3a5}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#65543d}.hero-bottom{position:absolute;bottom:32px;left:6.2vw;right:6.2vw;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.14em;border-top:1px solid #ffffff40;padding-top:24px}.hero-bottom a{font-size:11px;letter-spacing:0}.hero-bottom a span{margin-left:35px}.hero-side{position:absolute;right:27px;top:44%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.18em}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:65px 100px}.intro-copy{max-width:485px;padding-top:48px;color:var(--muted)}.intro-copy .lead{font-size:22px;color:var(--ink);line-height:1.5}.text-link{display:inline-flex;gap:36px;align-items:center;font-size:12px;border-bottom:1px solid currentColor;padding:10px 0}.intro-copy .text-link{margin-top:23px;color:var(--ink)}.text-link span{font-size:20px}.intro-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:26px;font-size:9px;letter-spacing:.12em;color:var(--muted)}.lighting{background:#eeede6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:47px}.heading-copy{max-width:400px;color:var(--muted);font-size:14px}.heading-copy .text-link{margin-top:12px;color:var(--ink)}.filters{display:flex;gap:30px;border-bottom:1px solid #cccabd;margin-bottom:38px;overflow:auto}.filters button{flex-shrink:0;border:0;background:none;color:var(--muted);padding:0 0 17px;font-size:12px;position:relative}.filters button.active{color:var(--ink)}.filters button.active:after{content:'';height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--ink)}.filters small{font-size:9px;margin-left:6px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 22px}.product-card[hidden]{display:none}.product-image{position:relative;overflow:hidden;background:#e2e1da;aspect-ratio:1.15}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.product-number{position:absolute;top:14px;left:14px;color:white;background:#242620b0;padding:2px 8px;font-size:9px}.product-arrow{position:absolute;bottom:12px;right:12px;width:30px;height:30px;background:var(--paper);border-radius:50%;text-align:center;line-height:30px}.product-card h3{font-size:18px;margin:18px 0 5px}.product-card p{font-size:10px;color:var(--muted)}.lighting-note{display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid #cccabd;margin-top:50px;padding-top:30px}.lighting-note>span{font-size:9px;letter-spacing:.12em;max-width:170px}.lighting-note p{font-size:12px;max-width:610px;color:var(--muted)}.round-link{flex-shrink:0;border:1px solid #a9a99b;border-radius:50%;width:44px;height:44px;display:grid;place-items:center}.range-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:start}.range-visual{position:sticky;top:130px;height:650px;overflow:hidden;background:#d9d5ca}.range-visual>img{height:100%;width:100%;object-fit:cover;object-position:39%}.range-visual:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#10130fbd)}.range-visual>div{position:absolute;bottom:36px;left:34px;z-index:1;color:white}.range-visual>div>p:last-child{font-family:Georgia,serif;font-size:36px;line-height:1.2}.range-visual .eyebrow{font-size:8px;margin-bottom:18px}.range-list details{border-top:1px solid var(--line)}.range-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:18px;cursor:pointer;padding:27px 0}summary::-webkit-details-marker{display:none}summary h3{font-family:Georgia,serif;font-size:22px;flex:1}.range-no{font-size:10px;color:var(--bronze)}.plus{width:14px;height:14px;position:relative;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;background:var(--ink)}.plus:before{height:1px;width:14px;top:6px}.plus:after{width:1px;height:14px;left:6px}details[open] .plus:after{display:none}.range-body{padding:0 15px 28px 32px;color:var(--muted);font-size:13px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.tags span{border:1px solid var(--line);padding:4px 8px;font-size:9px}.reference-links{display:flex;gap:10px 18px;flex-wrap:wrap;font-size:10px;color:var(--ink);margin:20px 0}.reference-links a:hover{text-decoration:underline}.range-body .text-link{font-size:11px;color:var(--ink)}.range-note{font-size:10px;color:var(--muted);margin-top:28px;text-align:right}.materials{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--dark);color:#e6e4da;align-items:center}.materials em{color:#c4ad87}.materials-copy>p:not(.eyebrow){font-size:14px;color:#c4c5b8;margin-top:26px;max-width:440px}.material-types{display:grid;margin:26px 0}.material-types span{border-bottom:1px solid #5b5d51;padding:12px 0;font-size:11px}.material-actions{display:flex;flex-direction:column;align-items:start;gap:18px}.subtle-link{font-size:11px;color:#c6b89e}.material-art{height:525px;position:relative;background:#d1c6b4;overflow:hidden;box-shadow:inset 0 0 100px #53463255}.swatch{position:absolute;width:54%;height:63%;box-shadow:10px 18px 26px #15170f55;background-size:4px 4px}.swatch-one{background-color:#e2dbce;transform:rotate(-17deg);left:4%;top:7%;background-image:repeating-linear-gradient(90deg,#ffffff30 0 1px,transparent 1px 4px)}.swatch-two{background-color:#ae9b7b;transform:rotate(9deg);left:29%;top:17%;background-image:repeating-linear-gradient(0deg,#34271435 0 1px,transparent 1px 3px)}.swatch-three{background-color:#7c7e6c;transform:rotate(-9deg);left:5%;top:40%;background-image:repeating-linear-gradient(90deg,#ffffff25 0 1px,transparent 1px 3px)}.swatch-four{background-color:#584735;transform:rotate(13deg);left:48%;top:47%;background-image:repeating-linear-gradient(0deg,#1b160c30 0 1px,transparent 1px 3px)}.material-art>span{position:absolute;bottom:18px;left:22px;color:#fff;font-size:8px;letter-spacing:.18em;text-shadow:0 1px 4px #000}.catalogue{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#e9e6dc}.catalogue-art{height:420px;display:flex;justify-content:center;align-items:center;background:radial-gradient(ellipse,#c6c1b2,transparent 70%)}.catalogue-art img{height:390px;width:auto;transform:rotate(-7deg);box-shadow:20px 22px 30px #29271c44}.catalogue p:not(.eyebrow){color:var(--muted);font-size:14px;margin:25px 0}.catalogue small{display:block;font-size:10px;color:var(--muted);margin-top:14px}.process{padding-top:80px;padding-bottom:80px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6vw}.process-grid>div{border-top:1px solid var(--line);padding-top:20px}.process-grid span{font-size:9px;color:var(--bronze);letter-spacing:.1em}.process-grid h3{font-family:Georgia,serif;font-size:25px;margin:18px 0 15px}.process-grid p{font-size:13px;color:var(--muted)}.contact{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1fr 1.1fr;gap:75px 8vw}.contact em{color:#c4ad87}.contact-heading>p:not(.eyebrow){max-width:370px;color:#c0c1b5;font-size:13px;margin-top:25px}.contact-email{font-family:Georgia,serif;font-size:25px;display:block;margin:28px 0 12px}.contact-heading>.text-link{font-size:11px;color:#d3c2a5}.contact-form{padding-top:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-form label{display:block;font-size:10px;letter-spacing:.02em;margin-bottom:26px;color:#e1dfd6}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:0;border-bottom:1px solid #717365;border-radius:0;background:transparent;color:#f7f5ef;font-size:13px;padding:12px 0;resize:vertical}.contact-form select{height:48px;text-overflow:ellipsis}.contact-form option{background:var(--dark)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a9ab9e;opacity:1}.contact-form .button{width:100%;margin-top:10px}.form-note{font-size:10px;color:#b4b7a8;margin-top:12px}.form-status{font-size:12px;margin-top:12px;color:#dec9a8}.contact-details{grid-column:1/-1;border-top:1px solid #5b5d51;padding-top:35px;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:35px}.contact-details .eyebrow{color:#bdbba9;display:block;margin-bottom:15px;font-size:9px}.contact-details address{font-style:normal;font-size:12px;line-height:1.8;margin-bottom:12px;color:#dadbcf}.contact-details a{display:block;font-size:13px;line-height:1.9}.contact-details>div:first-child a{font-size:10px;color:#d3c2a5}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 6.2vw;border-top:1px solid #5b5d51;background:var(--dark);color:#b8bcae}footer .wordmark{font-size:24px;color:var(--paper)}footer .wordmark span{font-size:6px}footer p,footer>a:last-child{font-size:9px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--paper);padding:10px;z-index:100}.skip-link: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}
@media(min-width:1700px){.section{padding-left:max(6.2vw,calc((100vw - 1500px)/2));padding-right:max(6.2vw,calc((100vw - 1500px)/2))}}@media(max-width:1100px){.header nav{gap:17px;font-size:11px}.header{padding:0 4vw}.wordmark{font-size:27px}.section{padding:85px 5vw}.intro{gap:50px}.range-layout{gap:5vw}.range-visual{height:580px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-image{aspect-ratio:1.5}.material-art{height:470px}.contact{gap:50px 5vw}}@media(max-width:760px){html{scroll-padding-top:78px}.header{height:78px;padding:0 23px}.wordmark{font-size:26px}.wordmark span{font-size:6px;margin-top:8px}.header-contact{margin-left:auto;margin-right:25px;min-width:75px;font-size:11px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:0;background:none;padding:12px 0;width:25px}.menu-toggle span{height:1px;width:25px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:24px;box-shadow:0 12px 20px #0001}.header nav.open{display:flex;flex-direction:column;gap:0;font-size:17px}.header nav a{padding:14px 0;border-bottom:1px solid var(--line)}.hero{height:690px;min-height:0;max-height:calc(100svh - 78px)}.hero-content{padding:68px 25px 105px}.hero h1{font-size:clamp(43px,8vw,60px)}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero-copy{font-size:13px;margin:24px 0}.hero-image{object-position:57%}.hero-overlay{background:linear-gradient(90deg,#10140edb,#10140e33),linear-gradient(0deg,#10140e90,transparent)}.hero-bottom{left:25px;right:25px;bottom:22px}.hero-bottom>span{font-size:7px;letter-spacing:.06em;max-width:190px}.hero-bottom a{font-size:9px}.hero-bottom a span{margin-left:10px}.hero-side{display:none}.section{padding:65px 25px}.eyebrow{font-size:9px;margin-bottom:22px}h2{font-size:43px}.intro,.materials,.catalogue,.contact{grid-template-columns:1fr;gap:35px}.intro-copy{padding-top:0;max-width:none;font-size:14px}.intro-copy .lead{font-size:20px}.intro-foot{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:8px;margin-top:10px}.section-heading{display:block;margin-bottom:30px}.heading-copy{margin-top:22px;font-size:13px}.filters{gap:24px;margin-bottom:25px}.filters button{font-size:11px}.product-grid{gap:28px 15px}.product-image{aspect-ratio:1.03}.product-card h3{font-size:17px}.product-card p{font-size:9px;line-height:1.6}.lighting-note{gap:20px;flex-wrap:wrap;margin-top:35px}.lighting-note>span{max-width:none;width:100%}.lighting-note p{flex:1;font-size:11px}.range-layout{grid-template-columns:1fr;gap:30px}.range-visual{position:relative;top:auto;height:380px}.range-visual>div{left:25px;bottom:25px}.range-visual>div>p:last-child{font-size:31px}summary{padding:23px 0;gap:12px}summary h3{font-size:21px}.range-body{padding-left:25px}.range-note{text-align:left;font-size:9px}.material-art{height:380px;order:2;margin-top:10px}.materials-copy{order:1}.catalogue-art{height:340px}.catalogue-art img{height:315px}.catalogue>div:last-child{padding-top:10px}.process-grid{grid-template-columns:1fr;gap:25px}.process-grid h3{margin:12px 0}.process-grid p{max-width:450px}.contact-form{padding:0}.contact-details{grid-template-columns:1fr 1fr;gap:30px}.contact-details>div:first-child{grid-column:1/-1}.contact-email{font-size:24px}.form-row{gap:18px}.contact-form input,.contact-form select{font-size:16px}.contact-form textarea{font-size:16px}footer{padding:30px 25px;flex-wrap:wrap;gap:25px}footer p{order:3;width:100%;border-top:1px solid #56594d;padding-top:20px}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Supplied transparent wordmark; frame excludes the original empty canvas. */
.header .wordmark,footer .wordmark{display:block;position:relative;width:195px;aspect-ratio:1960 / 285;overflow:hidden;flex-shrink:0;line-height:0}
.wordmark img{position:absolute;left:-5.30612245%;top:-81.75438596%;width:110.81632653%;height:auto;max-width:none}
footer .wordmark img{filter:brightness(0) invert(1)}
@media(max-width:760px){.header .wordmark,footer .wordmark{width:150px}}

/* Typography aligned with the original reference: clean sans-serif,
   expressive headings and readable supporting text. */
:root{--font-sans:Arial,Helvetica,sans-serif}
body{font-family:var(--font-sans);font-size:16px;line-height:1.75}
h1,h2,h3,.range-visual>div>p:last-child,.contact-email{font-family:var(--font-sans);font-weight:500}
h1,h2{letter-spacing:-.055em}
em{font-style:normal}
h1{font-size:clamp(60px,7.1vw,104px);line-height:1}
h2{font-size:clamp(44px,5.2vw,78px);line-height:1.04}
.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;line-height:1.6;margin-bottom:26px}
.header nav{font-size:13px;gap:26px}
.header-contact{font-size:13px}
.hero{height:800px;min-height:710px;max-height:none}
.hero-content{padding-top:76px;padding-bottom:115px}
.hero-copy{font-size:17px;line-height:1.75;margin:28px 0 30px}
.hero-bottom{font-size:10px}
.hero-bottom a{font-size:12px}
.button{font-size:13px;padding:17px 24px;min-height:56px}
.text-link{font-size:14px;line-height:1.5}
.intro{column-gap:7vw}
.intro-copy{font-size:16px;line-height:1.85;padding-top:46px}
.intro-copy .lead{font-size:24px;line-height:1.5;letter-spacing:-.02em}
.intro-foot{font-size:11px;line-height:1.6;letter-spacing:.1em}
.heading-copy{font-size:16px;line-height:1.75;max-width:430px}
.filters{gap:32px}
.filters button{font-size:14px;padding-bottom:19px}
.filters small{font-size:10px}
.product-card h3{font-size:22px;letter-spacing:-.025em;line-height:1.2;margin-top:20px;margin-bottom:9px}
.product-card p{font-size:12px;line-height:1.65}
.product-number{font-size:11px}
.lighting-note>span{font-size:11px;line-height:1.7}
.lighting-note p{font-size:14px;line-height:1.75}
.range-layout{grid-template-columns:1fr 1.15fr;gap:6vw}
.range-visual>div>p:last-child{font-size:42px;line-height:1.05;letter-spacing:-.04em}
.range-visual .eyebrow{font-size:10px}
summary{padding:28px 0}
summary h3{font-size:26px;letter-spacing:-.035em;line-height:1.2}
.range-no{font-size:12px}
.range-body{font-size:15px;line-height:1.8}
.tags span{font-size:11px}
.reference-links{font-size:12px;line-height:1.7}
.range-body .text-link{font-size:13px}
.range-note{font-size:12px;line-height:1.7}
.materials-copy>p:not(.eyebrow){font-size:16px;line-height:1.85;max-width:490px}
.material-types span{font-size:13px;padding:14px 0}
.subtle-link{font-size:13px}
.material-art>span{font-size:10px}
.catalogue p:not(.eyebrow){font-size:16px;line-height:1.85}
.catalogue small{font-size:12px}
.process-grid span{font-size:11px}
.process-grid h3{font-size:27px;letter-spacing:-.035em;line-height:1.2}
.process-grid p{font-size:15px;line-height:1.8}
.contact h2{font-size:clamp(58px,6.4vw,96px);line-height:1}
.contact-heading>p:not(.eyebrow){font-size:16px;line-height:1.85;max-width:420px}
.contact-email{font-size:clamp(23px,2.3vw,32px);letter-spacing:-.035em;line-height:1.4;overflow-wrap:anywhere}
.contact-heading>.text-link{font-size:13px}
.contact-form label{font-size:12px;letter-spacing:.025em}
.contact-form input,.contact-form textarea,.contact-form select{font-size:16px;line-height:1.5}
.contact-form select{height:50px}
.form-note{font-size:12px;line-height:1.7}
.form-status{font-size:14px}
.contact-details .eyebrow{font-size:11px}
.contact-details address{font-size:14px;line-height:1.9}
.contact-details a{font-size:15px;line-height:1.9}
.contact-details>div:first-child a{font-size:13px}
footer p,footer>a:last-child{font-size:12px;line-height:1.6}
@media(min-width:761px) and (max-width:1100px){
 .header nav{gap:16px;font-size:12px}
 .header .wordmark{width:165px}
 .intro-foot{font-size:10px}
 .range-layout{gap:4vw}
 summary h3{font-size:23px}
 .range-body{padding-left:28px;padding-right:0}
 .section-heading{gap:30px}
 .heading-copy{max-width:340px}
}
@media(max-width:760px){
 body{font-size:15px}
 h1{font-size:clamp(38px,10vw,64px);line-height:1.03}
 h2{font-size:clamp(38px,9.4vw,56px);line-height:1.06}
 .section{padding-top:70px;padding-bottom:70px}
 .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:22px}
 .header nav{font-size:18px;gap:0}
 .header-contact{font-size:12px}
 .hero{height:auto;min-height:650px;max-height:none}
 .hero-content{padding:65px 25px 135px}
 .hero h1{font-size:clamp(38px,10vw,64px);line-height:1.03}
 .hero .eyebrow{font-size:10px;letter-spacing:.1em;max-width:280px}
 .hero-copy{font-size:15px;line-height:1.75;margin:26px 0 28px}
 .hero-bottom>span{font-size:9px;line-height:1.7;max-width:175px}
 .hero-bottom a{font-size:11px}
 .button{font-size:13px;gap:25px}
 .intro-copy{padding-top:0;font-size:15px;line-height:1.85}
 .intro-copy .lead{font-size:22px;line-height:1.5}
 .intro-foot{font-size:10px;gap:20px;line-height:1.7}
 .heading-copy{font-size:15px;line-height:1.75}
 .filters{gap:25px}
 .filters button{font-size:13px;min-height:44px}
 .product-card h3{font-size:19px;line-height:1.25;margin-top:16px}
 .product-card p{font-size:12px;line-height:1.65}
 .lighting-note>span{font-size:10px}
 .lighting-note p{font-size:14px}
 .range-layout{grid-template-columns:1fr;gap:30px}
 .range-visual>div>p:last-child{font-size:36px;line-height:1.07}
 .range-visual .eyebrow{font-size:10px}
 summary{padding:24px 0;gap:12px}
 summary h3{font-size:23px;line-height:1.2}
 .range-body{font-size:15px;padding-left:25px;padding-right:0}
 .range-note{font-size:12px}
 .materials-copy>p:not(.eyebrow),.catalogue p:not(.eyebrow){font-size:15px}
 .material-types span{font-size:13px}
 .material-art>span{font-size:9px}
 .process-grid h3{font-size:25px}
 .process-grid p{font-size:15px}
 .contact h2{font-size:clamp(52px,13vw,74px);line-height:1.02}
 .contact-heading>p:not(.eyebrow){font-size:15px}
 .contact-email{font-size:26px}
 .contact-details address{font-size:14px}
 .contact-details a{font-size:14px}
 footer p,footer>a:last-child{font-size:11px}
}

/* Every service has a visible sample, with source attribution. */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 30px}
.service-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:28px;display:flex;flex-direction:column}
.service-sample{margin:0 0 21px}
.service-image{position:relative;aspect-ratio:4 / 3;background:#ebe9e1;overflow:hidden}
.service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.service-image.contain img{object-fit:contain;padding:25px}
.service-image.switch-image img{object-position:50% 17%}
.service-card:hover .service-image img{transform:scale(1.025)}
.sample-index{position:absolute;top:15px;left:15px;padding:4px 8px;font-size:10px;letter-spacing:.08em;color:var(--ink);background:var(--paper)}
.service-sample figcaption{font-size:10px;line-height:1.6;color:var(--muted);padding-top:10px}
.service-sample figcaption a:hover{text-decoration:underline}
.service-card>h3{font-size:27px;line-height:1.15;letter-spacing:-.035em;margin:0 0 20px;max-width:350px}
.service-card .range-body{padding:0;font-size:14px;line-height:1.8;display:flex;flex-direction:column;flex:1}
.service-card .range-body>p{margin:0}
.service-card .range-body>p+p{margin-top:15px}
.service-card .range-body>.text-link{align-self:flex-start;margin-top:auto;padding-top:16px;font-size:13px;gap:24px}
.service-card .tags{margin:20px 0 12px}
.service-card .reference-links{margin:8px 0 20px;gap:8px 15px;font-size:11px}
.ranges .range-note{text-align:left;margin-top:26px}
.material-photo{margin:0;align-self:stretch;min-height:400px;display:flex;flex-direction:column;justify-content:center}
.material-photo>img{width:100%;height:auto;max-height:530px;object-fit:contain;background:#ede9e1}
.material-photo figcaption{font-size:11px;line-height:1.7;color:#d4c3a6;padding-top:14px}
@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}.service-card>h3{font-size:26px}}
@media(max-width:760px){.service-grid{grid-template-columns:1fr;gap:40px}.service-card>h3{font-size:27px;max-width:none;margin-bottom:16px}.service-card .range-body{font-size:15px}.service-image{aspect-ratio:4 / 3}.service-image.contain img{padding:30px}.service-sample figcaption{font-size:11px}.service-card .reference-links{font-size:12px}.service-card .range-body>.text-link{margin-top:8px}.material-photo{min-height:0;order:2;margin-top:10px}.material-photo>img{max-height:none}}

/* Replacement product photography, framed around the relevant detail. */
.service-image.focus-lutron-image img{object-position:50% 85%}
.service-image.seating-detail-image{background:#e1e1e1}
.service-image.seating-detail-image img{object-fit:contain;padding:0}
.service-image.acoustic-interior-image img{object-position:center}

/* A coordinated set of actual fabric samples. */
.fabric-board{align-self:center;min-width:0}
.fabric-swatches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 14px}
.fabric-swatches figure{margin:0;min-width:0}
.fabric-swatches img{width:100%;height:auto;aspect-ratio:5 / 6;object-fit:cover;background:#d3c7b4}
.fabric-swatches figcaption{padding-top:10px;line-height:1.5}
.fabric-swatches figcaption span{display:block;font-size:13px;color:#f7f5ef}
.fabric-swatches figcaption small{display:block;font-size:10px;color:#bfc1b4;margin-top:3px}
.fabric-source{display:inline-block;font-size:11px;color:#d4c3a6;margin-top:25px;border-bottom:1px solid #7b7868;padding-bottom:5px}
@media(max-width:760px){.fabric-board{order:2;margin-top:12px}.fabric-swatches{gap:22px 11px}.fabric-swatches figcaption span{font-size:12px}.fabric-swatches figcaption small{font-size:10px}.fabric-source{font-size:12px}}

/* Premium cinema seating, with two manually selected room views. */
.service-image.seating-premium-image{background:#10151b}
.service-image.seating-premium-image img{object-fit:cover;object-position:50% 58%;padding:0}
.seating-view-controls{position:absolute;bottom:14px;left:14px;right:14px;display:flex;gap:6px}
.seating-view-controls button{border:1px solid #ffffff80;background:#111820cc;color:#fff;padding:8px 12px;font-size:11px;min-height:38px;line-height:1.4}
.seating-view-controls button[aria-pressed="true"]{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.seating-view-controls button:hover{background:#e0c7a1;color:var(--ink)}
@media(max-width:760px){.seating-view-controls button{min-height:44px;font-size:12px}}

/* Catalogue modules and coordinated brass controls remain fully visible. */
.product-image.magnetic-product{background:#efefef}
.product-image.magnetic-product img{object-fit:contain;padding:16px}
.service-image.brass-controls-image{display:flex;align-items:center;background:#f0ece3;padding:32px 22px}
.brass-controls{display:grid;grid-template-columns:222fr 369fr;align-items:center;gap:18px;width:100%}
.brass-controls img{width:100%;height:auto;object-fit:contain;border-radius:3px}
.service-image.curtains-interior-image img{object-position:center}

/* DALI specification content within the single-page lighting collection. */
.dali-overview{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:75px;padding-top:55px;border-top:1px solid var(--line);scroll-margin-top:100px}
.dali-intro h2{font-size:clamp(32px,3.3vw,50px);line-height:1.12;margin:18px 0 24px}
.dali-intro>p:not(.eyebrow),.dali-details p,.lighting-faq p{font-size:15px;line-height:1.8;color:var(--muted)}
.dali-intro .text-link{margin-top:24px}
.dali-details article+article{margin-top:28px}
.dali-details h3,.lighting-faq>h3{font-size:22px;line-height:1.3;margin:0 0 12px;letter-spacing:-.02em}
.dali-details a{text-decoration:underline;text-underline-offset:3px}
.lighting-faq{margin-top:45px;max-width:900px}
.lighting-faq details{border-bottom:1px solid var(--line);padding:18px 0}
.lighting-faq summary{cursor:pointer;font-size:16px;line-height:1.5}
.lighting-faq details p{margin:14px 0 0}
@media(max-width:760px){.dali-overview{grid-template-columns:1fr;gap:32px;margin-top:45px;padding-top:35px}.lighting-faq{margin-top:35px}}

/* Available control categories beneath each lighting range. */
.product-card{min-width:0}
.product-card .control-types{color:#686863;font-size:10px;line-height:1.7;margin-top:10px;font-weight:400;white-space:nowrap;max-width:100%;padding-bottom:0}

/* Crisp vector arrows retain their appearance across desktop and mobile. */
.arrow-icon{display:inline-block;width:.75em;height:.75em;min-width:.75em;vertical-align:-.14em;flex-shrink:0;pointer-events:none}
.product-arrow{display:grid;place-items:center;line-height:1}
.product-arrow .arrow-icon{width:13px;height:13px;min-width:13px}
.round-link .arrow-icon{width:15px;height:15px;min-width:15px}
.header-contact>span,.text-link>span,.button>span{display:inline-flex;align-items:center;justify-content:center}

/* A tighter rhythm across sections, cards and supporting content. */
.section{padding-top:80px;padding-bottom:80px}
.eyebrow{margin-bottom:18px}
p+p{margin-top:16px}
.hero{height:740px;min-height:680px}
.hero-content{padding-top:60px;padding-bottom:100px}
.hero-copy{margin:22px 0 24px}
.hero-bottom{padding-top:18px;bottom:26px}
.intro{row-gap:44px;column-gap:5vw}
.intro-copy{padding-top:34px}
.intro-copy .text-link{margin-top:16px}
.intro-foot{padding-top:20px;gap:18px}
.section-heading{gap:32px;margin-bottom:32px}
.heading-copy .text-link{margin-top:8px}
.filters{gap:24px;margin-bottom:28px}
.filters button{padding-bottom:14px}
.product-grid{gap:26px 18px}
.product-card h3{margin-top:14px;margin-bottom:6px}
.product-card .control-types{margin-top:7px}
.lighting-note{margin-top:36px;padding-top:22px;gap:28px}
.service-grid{gap:38px 24px}
.service-card{padding-bottom:20px}
.service-sample{margin-bottom:15px}
.service-sample figcaption{padding-top:7px}
.service-card>h3{margin-bottom:14px}
.service-card .range-body>p+p{margin-top:12px}
.service-card .tags{margin:14px 0 9px}
.service-card .reference-links{margin:6px 0 14px;gap:6px 12px}
.service-card .range-body>.text-link{padding-top:12px}
.ranges .range-note{margin-top:18px}
.materials,.catalogue{column-gap:6vw}
.materials-copy>p:not(.eyebrow){margin-top:20px}
.material-types{margin:18px 0}
.material-types span{padding:10px 0}
.material-actions{gap:12px}
.fabric-swatches{gap:18px 12px}
.fabric-swatches figcaption{padding-top:7px}
.fabric-source{margin-top:18px}
.catalogue p:not(.eyebrow){margin:18px 0}
.catalogue small{margin-top:10px}
.process{padding-top:58px;padding-bottom:58px}
.process-grid{gap:4vw}
.process-grid>div{padding-top:16px}
.process-grid h3{margin:13px 0 10px}
.contact{gap:50px 6vw}
.contact-heading>p:not(.eyebrow){margin-top:18px}
.contact-email{margin:20px 0 8px}
.contact-form{padding-top:12px}
.contact-form label{margin-bottom:20px}
.form-row{gap:20px}
.contact-details{padding-top:26px;gap:26px}
.contact-details .eyebrow{margin-bottom:10px}
footer{padding-top:26px;padding-bottom:26px}
.dali-overview{gap:48px;margin-top:52px;padding-top:38px}
.dali-intro h2{margin:14px 0 18px}
.dali-intro .text-link{margin-top:16px}
.dali-details article+article{margin-top:20px}
.lighting-faq{margin-top:30px}
.lighting-faq details{padding:6px 0}
.lighting-faq summary{padding:14px 0;min-height:44px}
.lighting-faq details p{margin:4px 0 14px}
@media(min-width:761px) and (max-width:1100px){
 .section{padding-top:64px;padding-bottom:64px}
 .service-grid{gap:32px 22px}
 .intro{gap:36px}
}
@media(max-width:760px){
 .section{padding-top:48px;padding-bottom:48px}
 .eyebrow{margin-bottom:16px}
 .hero{height:auto;min-height:590px}
 .hero-content{padding:48px 25px 112px}
 .hero-copy{margin:20px 0 22px}
 .hero-bottom{bottom:20px;padding-top:16px}
 .intro,.materials,.catalogue,.contact{gap:26px}
 .intro-copy{padding-top:0}
 .intro-foot{gap:14px;margin-top:4px;padding-top:18px}
 .section-heading{margin-bottom:24px}
 .heading-copy{margin-top:16px}
 .filters{gap:20px;margin-bottom:20px}
 .product-grid{gap:22px 14px}
 .product-card h3{margin-top:12px}
 .lighting-note{gap:16px;margin-top:26px;padding-top:20px}
 .service-grid{gap:28px}
 .service-card>h3{margin-bottom:12px}
 .service-card .range-body>.text-link{margin-top:6px}
 .fabric-swatches{gap:16px 10px}
 .process-grid{gap:20px}
 .contact-form{padding-top:0}
 .form-row{gap:16px}
 .contact-details{gap:22px;padding-top:22px}
 footer{padding-top:22px;padding-bottom:22px;gap:18px}
 footer p{padding-top:16px}
 .dali-overview{gap:24px;margin-top:32px;padding-top:26px}
 .lighting-faq{margin-top:24px}
}

/* Modern typography: architectural headings and clear, restrained body text. */
:root{--font-sans:'DM Sans',Arial,Helvetica,sans-serif;--font-display:'Manrope',Arial,Helvetica,sans-serif}
body{font-family:var(--font-sans);font-weight:400;line-height:1.7}
h1,h2,h3,.contact-email,.range-visual>div>p:last-child{font-family:var(--font-display);font-weight:400}
h1{font-size:clamp(56px,6.5vw,94px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
h2{font-size:clamp(40px,4.6vw,68px);line-height:1.12;letter-spacing:-.04em;text-wrap:balance}
h3{letter-spacing:-.025em;text-wrap:balance}
em{font-family:inherit;font-weight:inherit}
.eyebrow{font-family:var(--font-sans);font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.header nav,.header-contact,.button,.text-link{font-weight:500;letter-spacing:.005em}
.hero-copy{font-size:16px;line-height:1.75;font-weight:400}
.intro-copy,.materials-copy>p:not(.eyebrow),.catalogue p:not(.eyebrow),.contact-heading>p:not(.eyebrow){line-height:1.75}
.intro-copy .lead{font-family:var(--font-display);font-weight:400;font-size:23px;line-height:1.5;letter-spacing:-.025em}
.heading-copy{font-size:15px;line-height:1.75}
.product-card h3{font-size:21px;font-weight:500;line-height:1.3;letter-spacing:-.025em}
.service-card>h3{font-size:25px;font-weight:400;line-height:1.25;letter-spacing:-.03em}
.service-card .range-body{line-height:1.75}
.tags span{font-size:10px;font-weight:400;letter-spacing:.015em}
.service-sample figcaption{letter-spacing:.015em}
.process-grid h3{font-family:var(--font-display);font-size:25px;line-height:1.3;font-weight:400}
.contact h2{font-size:clamp(48px,5.5vw,80px);line-height:1.1;letter-spacing:-.045em}
.contact-email{font-weight:400;letter-spacing:-.025em}
.dali-intro h2{font-size:clamp(32px,3.2vw,46px);line-height:1.15;letter-spacing:-.035em}
.dali-details h3,.lighting-faq>h3{font-size:21px;line-height:1.35;font-weight:500}
.lighting-faq summary{font-weight:500}
@media(max-width:760px){
 .hero h1{font-size:clamp(36px,9.2vw,58px);line-height:1.1;letter-spacing:-.04em}
 h2{font-size:clamp(34px,8.4vw,50px);line-height:1.15;letter-spacing:-.035em}
 .eyebrow,.hero .eyebrow{font-size:9px;letter-spacing:.12em}
 .hero-copy{font-size:15px}
 .intro-copy .lead{font-size:21px}
 .product-card h3{font-size:18px;line-height:1.3}
 .service-card>h3{font-size:24px;line-height:1.25}
 .contact h2{font-size:clamp(43px,11vw,64px);line-height:1.1}
 .process-grid h3{font-size:23px}
 .dali-intro h2{font-size:34px}
}

/* Keep the complete control line visible without a scrolling region. */
.product-card{container-type:inline-size}
.product-card .control-types{font-size:min(10px,2.15cqw)}
@media(max-width:600px){.product-grid{grid-template-columns:1fr}.product-image{aspect-ratio:4 / 3}}

.dali-driver-image{display:block;width:100%;max-width:360px;height:auto;aspect-ratio:3 / 2;object-fit:contain;margin-top:28px;mix-blend-mode:multiply}
