:root{--ink:#202221;--muted:#686b68;--paper:#f7f7f2;--red:#c83c2c;--line:#dcded7}*{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}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:5px}button{color:inherit}.topline{padding:11px 5%;background:#242723;color:#f1f2ec;font-size:10px;letter-spacing:1.8px;display:flex;justify-content:space-between}.topline a{letter-spacing:.4px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:var(--paper)}.logo{font-size:42px;font-weight:950;letter-spacing:-4px;line-height:.8;font-style:italic;display:inline-flex;flex-direction:column}.logo span{font-size:9px;letter-spacing:5px;font-style:normal;padding:10px 0 0 7px}nav{display:flex;gap:35px;font-size:13px}.header-cta{font-size:13px;border-bottom:1px solid #555;padding:12px 0;display:flex;gap:35px}#menu{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:650px}.hero-copy{padding:80px 6% 32px 9.5%;display:flex;flex-direction:column}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;display:flex;align-items:center;gap:10px;margin:0 0 30px}.eyebrow i{width:7px;height:7px;background:var(--red);border-radius:50%}h1{font-size:clamp(65px,7.3vw,116px);line-height:.96;letter-spacing:-7px;font-weight:500;margin:0 0 30px}h1 span{color:var(--red)}.lead{font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 32px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.button{padding:18px 22px;background:var(--ink);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:0;font-size:12px;min-height:52px}.button:hover{background:var(--red)}.button span{font-size:19px}.text-link{font-size:12px;display:inline-flex;gap:20px;align-items:center}.hero-foot{display:flex;gap:20px;font-size:8px;letter-spacing:1px;margin-top:auto;padding-top:50px;color:var(--muted)}.hero-visual{position:relative;background:#e9ebe4;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:560px}.visual-index{position:absolute;top:35px;left:35px;font-size:9px;letter-spacing:2px;z-index:2}.hero-visual img{width:83%;height:65%;max-height:440px;object-fit:contain;mix-blend-mode:multiply;position:relative;z-index:1}.orbit{width:450px;height:450px;border:1px solid #d1d4c9;border-radius:50%;position:absolute}.orbit:before{content:'';position:absolute;inset:45px;border:1px solid #d9dcd2;border-radius:50%}.visual-caption{position:absolute;bottom:30px;left:35px;right:35px;border-top:1px solid #c7cbbf;padding-top:20px;display:flex;justify-content:space-between;align-items:center}.visual-caption small{display:block;font-size:8px;letter-spacing:1.7px;margin-bottom:8px}.visual-caption strong{font-size:14px;font-weight:normal}.visual-caption a{font-size:25px}.principles{padding:25px 5%;display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);font-size:12px}.principles b{color:var(--red);font-size:10px;margin-right:20px}.section{padding:95px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}h2{font-size:clamp(37px,4.3vw,66px);font-weight:500;letter-spacing:-2.5px;line-height:1.05;margin:0}p{line-height:1.65}.section-heading>p{font-size:14px;color:var(--muted);padding-right:5%}.catalog-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{border:1px solid transparent;background:none;font-size:11px;padding:12px}.filters button.active{background:var(--ink);color:white}.search{position:relative}.search>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.search input{background:transparent;border:0;border-bottom:1px solid #aaa;padding:10px 28px 10px 0;width:165px;font-size:12px;border-radius:0}.search b{position:absolute;right:5px;top:4px;font-size:24px;font-weight:normal}.result-count{font-size:10px;color:var(--muted);margin:20px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 22px}.product{display:block;width:100%;text-align:left;padding:0;border:0;background:none}.product-image{height:280px;background:#eaece5;position:relative;padding:25px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .35s}.product:hover img{transform:scale(1.06)}.product-image>span{position:absolute;right:17px;bottom:17px;background:var(--paper);width:33px;height:33px;border-radius:50%;display:grid;place-items:center;font-size:18px}.product small{font-size:9px;letter-spacing:1px;color:var(--muted);display:block;margin:20px 0 8px}.product h3{font-size:19px;font-weight:500;margin:0;letter-spacing:-.5px}.product p{font-size:12px;color:var(--muted);margin:8px 0 0}.service{background:#242b27;color:#f3f3e9;display:grid;grid-template-columns:1fr 1fr;gap:12%}.service .eyebrow{color:#c0c8b7}.service h2{font-size:75px}.service h2 em{font-style:normal;color:#adbca3}.service>div>p:not(.eyebrow){color:#bec6be;font-size:14px;max-width:380px;margin:28px 0}.light{background:#eff1e7;color:#252c27}.steps{padding-top:40px}.steps article{display:flex;gap:25px;border-top:1px solid #4f5750;padding:30px 0}.steps article>span{font-size:11px;color:#b0baa9;padding-top:5px}.steps h3{font-size:23px;font-weight:normal;margin:0 0 12px;letter-spacing:-.6px}.steps p{font-size:13px;color:#bcc5be;max-width:320px;margin:0}.about{display:grid;grid-template-columns:.55fr 1.3fr 1fr;gap:35px;align-items:start;border-bottom:1px solid var(--line)}.about .eyebrow{padding-top:8px}.about h2{font-size:43px}.about p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:420px}.about .text-link{margin-top:15px}.brand-block{background:#e8ebe2;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center}.brand-block>span{font-size:80px;font-weight:900;letter-spacing:-7px;font-style:italic}.brand-block small{font-size:8px;letter-spacing:2px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.contact h2 span{color:var(--red)}.contact p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:320px}.contact-email{display:block;font-size:25px;letter-spacing:-.7px;margin:30px 0 15px}.contact a[href^=tel]{font-size:15px}form{display:grid;gap:22px}form label{display:grid;font-size:11px;gap:8px}form input,form textarea{width:100%;border:0;border-bottom:1px solid #b7bdb1;padding:12px 0;background:none;font-size:14px;resize:vertical;border-radius:0}form .button{justify-self:start}form small{font-size:10px;color:var(--muted);line-height:1.6;max-width:330px}footer{border-top:1px solid var(--line);padding:40px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p,footer a:not(.logo),footer small{font-size:11px;line-height:1.7}footer div{display:grid;gap:8px}footer small{color:var(--muted)}dialog{width:min(850px,92vw);max-height:90vh;overflow:auto;border:0;padding:45px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#142018ad;backdrop-filter:blur(5px)}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;padding:5px 10px}#detail{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}#detail img{width:100%;height:300px;object-fit:contain;mix-blend-mode:multiply}#detail h2{font-size:34px;letter-spacing:-1px}#detail p{font-size:14px;color:var(--muted)}#detail .eyebrow{font-size:9px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:5px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){.hero-copy{padding-top:60px}h1{letter-spacing:-4px}.hero-foot{gap:12px;font-size:7px}.catalog-toolbar{align-items:start;flex-direction:column}.about{grid-template-columns:1fr 1fr}.about>.eyebrow{grid-column:1/-1}.product-image{height:230px}.hero{min-height:600px}.service{gap:8%}}@media(max-width:700px){header{height:80px;position:relative}.logo{font-size:35px}.header-cta{margin-left:auto;margin-right:25px;font-size:11px;gap:15px}#menu{display:block;border:0;background:none;font-size:22px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:25px;z-index:4;box-shadow:0 10px 15px #0001}nav.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 30px}h1{font-size:76px;letter-spacing:-5px}.lead{font-size:15px}.hero-foot{padding-top:30px;font-size:7px}.hero-visual{min-height:360px}.hero-visual img{height:250px;width:70%;margin-bottom:30px}.visual-index{top:20px;left:6%}.visual-caption{bottom:20px;left:6%;right:6%}.orbit{width:320px;height:320px}.principles{gap:12px;padding:23px 6%;align-items:start}.principles span{font-size:10px;line-height:1.6;flex:1}.principles b{display:block;margin-bottom:5px}.section{padding:60px 6%}.section-heading{display:block}.section-heading>p{margin-top:22px}.section-heading>p br{display:none}h2{font-size:43px}.eyebrow{margin-bottom:22px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.product-image{height:185px;padding:15px}.product h3{font-size:16px}.product small{font-size:8px}.product p{font-size:11px}.filters button{font-size:10px;padding:10px 8px}.service,.contact{grid-template-columns:1fr;gap:35px}.service h2{font-size:65px}.steps{padding-top:0}.about{grid-template-columns:1fr}.brand-block{min-height:200px}.about h2{font-size:40px}footer{flex-wrap:wrap;padding:35px 6%}footer>small{width:100%}#detail{grid-template-columns:1fr;gap:15px}#detail img{height:200px}dialog{padding:40px 25px}.topline{font-size:8px}.search input{width:220px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original IMEX identity: keep the full artwork and natural proportions. */
.logo{display:inline-flex;flex-direction:row;align-items:center;flex-shrink:0;line-height:1;letter-spacing:normal;font-style:normal}.logo img{display:block;width:auto;height:78px;object-fit:contain}header{height:112px}footer .logo img{height:88px}.brand-block{padding:30px;gap:20px}.brand-block img{display:block;width:190px;max-width:100%;height:auto}.brand-block small{text-align:center;line-height:1.5}@media(max-width:700px){header{height:94px}.logo img{height:70px}nav{top:94px}footer .logo img{height:76px}.brand-block img{width:175px}.header-cta{margin-right:20px}}

.materials{border-top:1px solid var(--line);background:#eff0e9}.materials-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%}.warranty-panel{padding:35px;background:#e1e5d9}.warranty-panel h3{font-size:40px;font-weight:500;letter-spacing:-1.5px;line-height:1.1;margin:0 0 22px}.warranty-panel p:not(.eyebrow),.document-list p{font-size:13px;color:var(--muted)}details{border-top:1px solid #b9c1ae;margin:22px 0;padding-top:18px}summary{cursor:pointer;font-size:12px;font-weight:bold}.warranty-panel .text-link{margin-top:8px;font-weight:bold}.document-list article{padding:24px 0;border-top:1px solid #c9cfc0}.document-list h3{font-size:23px;font-weight:500;margin:0}.document-list article>a,.product-documents>a{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #d3d7cc;padding:15px 0;font-size:11px;line-height:1.6}.document-list article>a:hover,.product-documents>a:hover{color:var(--red)}.document-list article>a span{white-space:nowrap}.document-help a{text-decoration:underline}.warranty-note{background:#e4e9db;padding:18px;margin:20px 0}.warranty-note strong{font-size:15px}#detail .warranty-note p{font-size:12px}.product-documents{margin:22px 0}.product-documents h3{font-size:12px}.product-documents>a{font-size:11px}#detail{align-items:start}@media(max-width:700px){.materials-layout{grid-template-columns:1fr;gap:35px}.warranty-panel{padding:25px}.warranty-panel h3{font-size:34px}header nav{gap:25px}}

.catalog-toolbar{align-items:flex-start;flex-wrap:wrap}.filters{row-gap:8px}.hero-foot{flex-wrap:wrap;row-gap:10px}

.product-gallery{display:flex;flex-direction:column;gap:24px;min-width:0}.product-gallery figure{margin:0;background:#eaece5;padding:18px}.product-gallery figcaption{text-align:center;font-size:15px;font-weight:bold;letter-spacing:.4px;padding:10px 0 2px}#detail .product-gallery img{display:block;width:100%;height:235px;object-fit:contain}@media(max-width:700px){#detail .product-gallery img{height:200px}.product-gallery{gap:16px}}

.cookie-banner{position:relative;z-index:20;background:#e9ede3;border-bottom:1px solid #c8d1bd;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:35px}.cookie-banner[hidden]{display:none}.cookie-copy{max-width:680px}.cookie-copy .eyebrow{font-size:8px;margin-bottom:7px}.cookie-copy strong{font-size:21px;font-weight:500;letter-spacing:-.5px}.cookie-copy p{font-size:12px;color:#4c5748;line-height:1.6;margin:8px 0 0}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions button{border:1px solid #28342b;background:transparent;padding:14px 18px;font-size:11px}.cookie-actions button:last-child{background:#28342b;color:white}.cookie-settings{border:0;padding:0;background:none;font-size:11px;text-align:left;cursor:pointer}.material-intro{padding:32px 5% 0;font-size:12px}.material-intro+ .materials{border-top:0;padding-top:55px}@media(max-width:800px){.cookie-banner{flex-direction:column;align-items:stretch;gap:18px;padding:20px 6%}.cookie-actions button{flex:1}.cookie-actions{width:100%}}

.materials h1{font-size:clamp(37px,4.3vw,66px);font-weight:500;letter-spacing:-2.5px;line-height:1.05;margin:0}

#detail .order-button{margin-top:12px;background:var(--red)}#detail .order-help{font-size:11px;margin:10px 0 22px}

.tekton-guide{margin:32px 0 40px;padding:32px;background:#e9ede3}.tekton-guide[hidden]{display:none}.tekton-guide>h3{font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-1px;margin:0}.guide-lead{max-width:700px;font-size:14px;color:var(--muted)}.guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:28px 0}.guide-grid article{background:var(--paper);padding:23px;display:flex;flex-direction:column}.guide-grid .eyebrow{font-size:9px;min-height:24px;margin-bottom:10px}.guide-grid h4{font-size:24px;font-weight:500;margin:0 0 18px}.guide-grid strong{font-size:13px;line-height:1.5}.guide-grid article>p:not(.eyebrow){font-size:12px;color:var(--muted)}.guide-grid button{margin-top:auto;border:0;padding:12px 0 0;background:none;text-align:left;cursor:pointer}.guide-help{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px}.tekton-guide>small{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:14px}@media(max-width:1050px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.tekton-guide{padding:22px 16px}.guide-grid{grid-template-columns:1fr}.guide-help{align-items:flex-start;flex-direction:column;gap:0}}

.guide-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-example{font-size:13px;border-top:1px solid #ccd3c7;padding-top:14px}.guide-grid article{min-width:0}@media(max-width:1050px){.guide-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.guide-grid-two,.guide-grid-three{grid-template-columns:1fr}}

/* Consistent content width and balanced editorial layout across desktop sizes. */
:root{--content-width:1320px;--page-gutter:max(5%,calc((100% - var(--content-width))/2));--section-space:clamp(64px,6vw,96px)}
body{max-width:none;margin:0}
header,.topline,.principles,.section,footer,.cookie-banner{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}
.hero{max-width:1480px;margin-inline:auto;min-height:620px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.hero-copy{padding:72px 8% 64px 10%;justify-content:center}
h1{font-size:clamp(64px,6.5vw,104px);letter-spacing:-.065em}
.hero-visual{min-height:560px}
.section-heading{gap:48px}
.section-heading>p{padding-right:0;max-width:320px}
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}
.product-image{height:clamp(230px,21vw,300px)}
.product p{font-size:14px;line-height:1.6;max-width:42ch}
.service,.contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,80px)}
.service h2{font-size:clamp(52px,5vw,72px)}
.service>div>p:not(.eyebrow),.steps p{font-size:15px;max-width:46ch}
.steps{padding-top:8px}
.about{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:'label brand' 'copy brand';column-gap:clamp(40px,5vw,80px);row-gap:22px;align-items:start}
.about>.eyebrow{grid-area:label;padding:0;margin:0}
.about>div:not(.brand-block){grid-area:copy}
.about>.brand-block{grid-area:brand;align-self:stretch}
.about h2{font-size:clamp(38px,3.5vw,52px);letter-spacing:-.045em;line-height:1.1}
.about p:not(.eyebrow){font-size:16px;max-width:51ch;margin:22px 0 0}
.about .text-link{margin-top:26px}
.brand-block{min-height:330px;padding:40px;gap:24px}
.brand-block img{width:210px}
.contact{align-items:start}
.contact h2{font-size:clamp(42px,4.3vw,62px);letter-spacing:-.05em;line-height:1.08}
.contact p:not(.eyebrow){font-size:16px;max-width:42ch}
.contact-email{font-size:clamp(24px,2.2vw,30px);overflow-wrap:anywhere}
.contact form{background:#eef0e8;padding:32px;gap:24px}
form label{font-size:12px;line-height:1.5}
form input,form textarea{font-size:16px;line-height:1.6;min-width:0}
form textarea{min-height:110px}
form small{font-size:12px;max-width:42ch}
input:focus-visible,textarea:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.text-link{font-size:13px;line-height:1.6}
.guide-grid article>p:not(.eyebrow){font-size:14px;line-height:1.6}
.guide-grid article>.text-link{margin-top:auto;padding-top:16px}
.guide-grid strong{font-size:14px}
.guide-grid .eyebrow{line-height:1.5}
.guide-help>a{flex-shrink:0}
#detail>div{min-width:0}
#detail h2{overflow-wrap:anywhere}
@media(min-width:701px) and (max-width:1100px){
 .hero-copy{padding:48px 8%}.hero{min-height:560px}.hero-visual{min-height:520px}
 .guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact form{padding:26px}
}
@media(max-width:700px){
 :root{--page-gutter:6%;--section-space:60px}
 .hero{grid-template-columns:minmax(0,1fr);min-height:0}
 .hero-copy{padding:45px 6% 40px}
 h1{font-size:clamp(60px,13vw,84px)}
 .hero-visual{min-height:360px}
 .section-heading{display:block}
 .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}
 .product-image{height:185px}.product p{font-size:12px}
 .service,.contact{grid-template-columns:minmax(0,1fr);gap:36px}
 .about{grid-template-columns:minmax(0,1fr);grid-template-areas:'label' 'copy' 'brand';gap:24px}
 .brand-block{min-height:260px;padding:30px}.brand-block img{width:175px}
 .contact form{padding:24px}
 .guide-help{flex-wrap:wrap}
}
/* Give the original rings their own row above the caption divider. */
.hero-visual{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;justify-items:center;padding:35px;gap:24px}
.visual-index{position:static;grid-area:1 / 1;justify-self:start;line-height:1.6}
.orbit{position:relative;grid-area:2 / 1;align-self:center;width:min(100%,450px);height:auto;aspect-ratio:1;pointer-events:none}
.orbit:before{inset:10%}
.hero-visual img{grid-area:2 / 1;align-self:center;width:83%;height:auto;max-height:320px;margin:0}
.visual-caption{position:static;grid-area:3 / 1;width:100%;gap:20px;padding-top:20px}
.visual-caption strong{line-height:1.5}
@media(max-width:700px){
 .hero-visual{padding:20px 6%;gap:20px}
 .orbit{width:min(100%,320px);height:auto}
 .orbit:before{inset:14.0625%}
 .hero-visual img{width:70%;height:auto;max-height:250px;margin:0}
}
@media(max-width:550px){.guide-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){.header-cta{gap:8px;margin-right:10px}.product-image{height:155px;padding:12px}.contact form{padding:20px}.cookie-actions{flex-wrap:wrap}.cookie-actions button{min-width:130px}}

@media(max-width:700px){
 footer{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
  gap:22px;
  padding-top:38px;
  padding-bottom:34px;
 }
 footer .logo{justify-self:start}
 footer .logo img{height:82px}
 footer p{margin:0;font-size:13px;line-height:1.7}
 footer div{
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  width:100%;
  padding-top:20px;
  border-top:1px solid var(--line);
 }
 footer a:not(.logo),footer .cookie-settings{font-size:12px;line-height:1.7}
 footer>small{
  width:100%;
  padding-top:20px;
  border-top:1px solid var(--line);
 }
}
