:root{--navy:#183446;--terra:#c56849;--ivory:#f4f0e8;--gray:#69757a;--line:#dfe3e2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--navy);background:#fff;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}img{max-width:100%}p{line-height:1.65}.announcement{background:var(--navy);color:#fff;text-align:center;padding:10px;font-size:11px;letter-spacing:1.3px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:var(--ivory);position:sticky;top:0;z-index:20;border-bottom:1px solid #18344612}.brand{display:flex;align-items:center;gap:12px}.brand img{width:44px}.brand span{font-size:29px;font-weight:800;letter-spacing:1px}.brand small{display:block;color:var(--terra);font-size:10px;font-style:italic;font-weight:400;letter-spacing:.5px;margin-top:3px}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a:hover{color:var(--terra)}.nav-contact{border-bottom:1px solid var(--terra);padding:12px 0}#menu{display:none}.hero{background:var(--ivory);position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:630px;padding:55px 6% 65px;gap:40px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold;color:var(--terra);margin:0 0 22px}h1{font-size:clamp(45px,5.7vw,85px);line-height:1.03;letter-spacing:-3px;font-weight:600;margin:0 0 30px}h2{font-size:clamp(30px,3.2vw,48px);line-height:1.15;letter-spacing:-1.5px;font-weight:600;margin:0 0 24px}h3{font-weight:500}.lead{font-size:17px;color:var(--gray)}.actions{display:flex;align-items:center;gap:26px;margin:32px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:0;background:var(--terra);color:white;padding:18px 25px;font-size:13px;transition:background .2s}.button:hover{background:#a85035}.text-link{font-size:12px;border-bottom:1px solid var(--navy);padding:12px 0}.hero-note{display:flex;align-items:center;gap:14px;font-size:10px;line-height:1.8;letter-spacing:.5px;margin-top:45px}.mini-symbol{font-weight:bold;color:var(--terra);font-size:38px;border-right:1px solid #18344630;padding-right:15px}.hero-image{position:relative;margin:0 0 0 20px;min-width:0;overflow:hidden;border-radius:100px 0 0 0}.hero-image>img{height:100%;width:100%;object-fit:cover}.photo-caption{position:absolute;bottom:0;left:0;right:0;color:#fff;background:linear-gradient(transparent,#183446df);padding:80px 30px 28px;font-size:10px;letter-spacing:1.7px}.photo-caption span{display:block;font-size:20px;letter-spacing:0;margin-top:10px}.hero-number{position:absolute;bottom:20px;font-size:9px;letter-spacing:1.7px;color:var(--gray)}.values{display:flex;justify-content:space-around;padding:25px 6%;border-bottom:1px solid var(--line);font-size:12px}.values span:before{content:'+';color:var(--terra);margin-right:15px}.section{padding:90px 6%;max-width:1600px;margin:auto}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:35px}.section-head>p{max-width:350px;color:var(--gray);font-size:14px}.family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.family{padding:30px;background:#e9edef;display:flex;flex-direction:column;min-height:405px;transition:transform .2s}.family:hover{transform:translateY(-5px)}.family>span{font-size:10px;letter-spacing:1.5px}.family h3{font-size:29px;line-height:1.15;margin:22px 0}.family img{height:180px;width:100%;object-fit:contain;mix-blend-mode:multiply;margin-bottom:20px}.family b{font-size:12px;font-weight:500;margin-top:auto;border-top:1px solid #18344630;padding-top:18px}.family.ivory{background:var(--ivory)}.family.terrace{background:var(--navy);color:white}.family.terrace img{object-fit:cover;mix-blend-mode:normal;border-radius:35px 0 0 0}.products-section{background:#fafaf8;max-width:none}.search-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.search{display:flex;align-items:center;background:#fff;border:1px solid var(--line);max-width:550px;width:100%;padding:0 18px;gap:12px}.search>span{font-size:27px}.search input{border:none;width:100%;padding:17px 0;background:transparent}.search-row>span{font-size:12px;color:var(--gray);white-space:nowrap}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.filters button{border:1px solid var(--line);color:var(--navy);background:#fff;padding:11px 17px;font-size:12px}.filters button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;padding:22px;display:flex;flex-direction:column;text-align:left;border:1px solid #e9eceb;color:var(--navy);min-width:0}.product-card:hover{border-color:var(--terra)}.product-card img{height:165px;width:100%;object-fit:contain;margin-bottom:18px}.ref{font-size:10px;color:var(--terra);letter-spacing:1px}.product-card h3{font-size:15px;line-height:1.5;font-weight:500;margin:12px 0 20px}.product-card .card-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;color:var(--gray);font-size:11px;display:flex;justify-content:space-between;gap:15px}.secondary{background:var(--navy);display:block;margin:32px auto 0}.source-note{font-size:11px;color:var(--gray);line-height:1.6;margin-top:25px}.precision{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.precision p:not(.eyebrow){color:var(--gray);font-size:15px;max-width:480px}.precision-art{position:relative;height:390px;background:var(--ivory);overflow:hidden;padding:28px}.tile{position:absolute;width:135px;height:135px;border-radius:25px}.one{top:60px;left:60px;background:var(--navy)}.two{top:60px;left:210px;background:var(--terra)}.three{top:210px;left:60px;background:var(--terra)}.four{top:210px;left:210px;background:#d5dce0}.precision-art>span{position:absolute;right:20px;bottom:30px;font-size:11px;line-height:1.8;letter-spacing:2px;background:var(--ivory);padding:12px}.calculator{display:grid;grid-template-columns:1fr 1fr;gap:90px;background:var(--ivory);max-width:none}.calculator>div>p:not(.eyebrow){max-width:420px;color:var(--gray)}form label{display:block;font-size:12px;margin-bottom:18px}input,textarea{border:1px solid var(--line);padding:15px;width:100%;background:#fff;color:var(--navy);margin-top:9px;min-width:0}textarea{resize:vertical}.input-unit{display:flex;align-items:center;background:#fff;border:1px solid var(--line);margin-top:9px}.input-unit input{border:0;margin:0}.input-unit>span{padding-right:20px;color:var(--gray)}.calc-dims{display:grid;grid-template-columns:1fr 1fr;gap:20px}#calc-result{display:flex;align-items:center;gap:25px;margin-top:25px;border-top:1px solid #18344630;padding-top:22px}#calc-result strong{font-size:55px;font-weight:500}#calc-result span{font-size:12px;line-height:1.8}.catalogue-section{background:var(--navy);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:100px;padding:80px 15%}.catalogue-section>div>p:not(.eyebrow){font-size:14px;color:#c4d0d5;max-width:420px}.catalogue-cover{aspect-ratio:595/842;background:var(--ivory);color:var(--navy);padding:35px;box-shadow:15px 20px 0 #ffffff10;position:relative;max-width:310px;transform:rotate(-5deg)}.catalogue-cover img{width:36px}.catalogue-cover h3{margin:10px 0 0;font-size:30px;font-weight:bold;letter-spacing:1px}.catalogue-cover i{color:var(--terra);font-size:10px}.catalogue-cover>div{color:var(--terra);font-size:9px;letter-spacing:1px;margin-top:65px}.catalogue-cover p{font-size:23px;line-height:1.2}.catalogue-cover small{position:absolute;bottom:0;left:0;right:0;background:var(--terra);color:#fff;padding:20px;font-size:8px}.file-note{display:block;color:#c4d0d5;font-size:10px;margin-top:15px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{max-width:430px;color:var(--gray)}footer{background:var(--ivory);padding:45px 6%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}footer p{font-size:12px;margin:0}footer>div{display:flex;flex-direction:column;align-items:start;gap:14px;font-size:12px}footer button{border:0;padding:0;background:none;color:var(--gray);font-size:11px}footer>small{grid-column:1/-1;border-top:1px solid #18344620;padding-top:25px;font-size:10px;color:var(--gray)}dialog{border:none;padding:50px;max-width:760px;width:90%;color:var(--navy);max-height:90vh;overflow:auto}dialog::backdrop{background:#183446aa}.close{position:absolute;top:10px;right:15px;background:none;border:none;font-size:30px;color:var(--navy)}#product-detail{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}#product-detail img{width:100%;max-height:330px;object-fit:contain}#product-detail h2{font-size:27px;letter-spacing:-.5px}#product-detail p{font-size:14px}#product-detail .button{margin-top:15px}#legal-dialog p{font-size:14px}
@media(min-width:1500px){.hero{padding-left:calc((100vw - 1400px)/2);padding-right:calc((100vw - 1400px)/2)}}@media(max-width:1000px){nav{gap:16px}.product-grid{grid-template-columns:repeat(3,1fr)}.hero{gap:10px}.hero-image{margin:0}.actions{align-items:start;flex-direction:column;gap:10px}.precision,.calculator,.contact{gap:40px}.catalogue-section{gap:60px;padding:70px 10%}.family{padding:22px}.family h3{font-size:24px}}
@media(max-width:720px){header{height:82px;padding:0 5%}.brand span{font-size:25px}.brand img{width:35px}#menu{display:block;background:none;border:none;font-size:25px;color:var(--navy)}nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px;background:var(--ivory);flex-direction:column;align-items:start;border-bottom:1px solid var(--line)}nav.open{display:flex}.announcement{font-size:9px;letter-spacing:.5px}.hero{grid-template-columns:1fr;padding:42px 5% 50px;min-height:0;gap:32px}h1{font-size:57px;letter-spacing:-2px}.hero-image{height:330px;border-radius:65px 0 0 0}.hero-copy .lead{font-size:15px}.actions{flex-direction:row;align-items:center;gap:20px}.button{padding:16px 19px;font-size:12px}.hero-note{margin-top:25px}.values{padding:20px 5%;gap:12px;flex-wrap:wrap;justify-content:start;font-size:10px}.values span:before{margin-right:5px}.section{padding:55px 5%}.section-head{display:block}.section-head>p{max-width:none}.family-grid{grid-template-columns:1fr}.family{min-height:330px;display:grid;grid-template-columns:1fr 1fr;column-gap:10px}.family>span{grid-column:1/-1}.family img{grid-column:2;grid-row:2/4;height:170px;margin:auto}.family b{grid-column:1/-1}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-card{padding:14px}.product-card img{height:125px}.product-card h3{font-size:13px}.search-row{display:block}.search-row>span{display:block;margin-top:15px}.filters{gap:6px}.filters button{padding:10px;font-size:11px}.precision,.calculator,.contact{grid-template-columns:1fr;gap:30px}.precision-art{height:350px}.catalogue-section{grid-template-columns:1fr;padding:60px 8%;gap:50px}.catalogue-cover{width:240px;margin:auto}.catalogue-cover>div{margin-top:35px}.catalogue-cover p{font-size:20px}footer{grid-template-columns:1fr;gap:25px}.photo-caption{padding:60px 20px 24px}.photo-caption span{font-size:18px}#product-detail{grid-template-columns:1fr}dialog{padding:35px 25px}#product-detail img{max-height:200px}.eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* POSAVIO: supplied identity, with ivory as the dominant surface. */
body{background:var(--ivory);font-size:16px}h1,h2,h3{font-weight:750}h1{letter-spacing:-.055em}.announcement{font-size:14px;letter-spacing:.05em}.brand-reference{position:relative;display:block;width:240px;height:57px;overflow:hidden;flex-shrink:0}.brand-reference img{position:absolute;width:444px;max-width:none;height:auto;left:-14.4px;top:-31.7px}nav{font-size:14px;gap:24px}.brand small{font-size:14px}.button,.text-link,.family b,.filters button,form label{font-size:14px}.eyebrow{font-size:14px;letter-spacing:.12em}.hero-note{font-size:14px}.hero-number,.ref{font-size:13px}.values{font-size:14px;background:var(--ivory)}.section-head>p{font-size:16px}.family>span{font-size:13px}.product-card h3{font-size:16px}.product-card .card-bottom{font-size:14px}.search-row>span,.source-note{font-size:14px}.products-section{background:#eeeae2}.precision-photo{background:white;padding:40px;min-width:0}.precision-photo img{width:100%;height:300px;object-fit:contain}.file-note,footer p,footer>div,footer button,footer>small{font-size:14px}.photo-caption{font-size:13px}.catalogue-cover small{font-size:12px}.contact{background:var(--ivory)}.nav-contact{background:var(--terra);color:white;padding:13px 20px;border:0}.nav-contact:hover{background:#a85035;color:white}.button:disabled{opacity:.5;cursor:default}
@media(max-width:720px){.announcement{font-size:12px}.brand-reference{width:210px;height:50px}.brand-reference img{width:388.5px;left:-12.6px;top:-27.7px}.product-card h3{font-size:16px}.filters button{font-size:14px}.values{font-size:14px}.eyebrow{font-size:13px}.hero{padding-top:35px}h1{font-size:clamp(36px,9vw,60px)}.actions{flex-wrap:wrap}.family>span,.family b{font-size:14px}.hero-image{height:290px}.button{font-size:14px}}

/* Remove the pale background from the supplied logo without recolouring its lettering. */
.brand-filter-defs{position:absolute;pointer-events:none}.brand-reference img{filter:url(#posavio-transparent-background)}

/* Keep the expanded primary navigation usable on tablets. */
@media(min-width:721px) and (max-width:1100px){header #menu{display:block;background:none;border:none;font-size:25px;color:var(--navy)}header nav{display:none;position:absolute;top:100px;left:0;right:0;padding:25px;background:var(--ivory);flex-direction:column;align-items:start;border-bottom:1px solid var(--line)}header nav.open{display:flex}}

/* Fond blanc uniforme pour les photos de produits détourées. */
.product-card img,#product-detail img{background:#fff;}

/* Tiramisu Speed demonstration on the home page */
.speed-demo{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.6fr);gap:48px;align-items:center;padding-top:70px;padding-bottom:70px;border-bottom:1px solid var(--line)}
.speed-demo-copy p:not(.eyebrow){font-size:1rem;color:var(--gray);max-width:380px}.speed-demo .eyebrow{font-size:.875rem;letter-spacing:1.4px}.speed-demo h2{font-size:clamp(1.875rem,3.1vw,3rem)}
.speed-demo-player{min-width:0;background:var(--ivory);border:1px solid var(--line)}.speed-demo video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--ivory)}
@media(max-width:800px){.speed-demo{grid-template-columns:1fr;gap:24px;padding-top:48px;padding-bottom:48px}.speed-demo-copy p:not(.eyebrow){max-width:none}.speed-demo h2 br{display:none}.speed-demo h2 br:after{content:" "}}
