*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper,#f5f3ed);color:var(--ink,#20231e);font:14px/1.6 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent,#b38961);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.02;font-weight:500}h1,h2{letter-spacing:-.055em}h2{font-size:clamp(42px,5.5vw,80px)}em{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1 em,h2 em{letter-spacing:-.045em}p{line-height:1.8}a,button{transition:background .2s,color .2s,transform .2s}.wrap{padding-left:5.5vw;padding-right:5.5vw}.kicker{font-size:10px;letter-spacing:.17em;line-height:1.5;font-weight:700}.concept-banner{padding:8px 5.5vw;display:flex;justify-content:space-between;gap:16px;background:#1d2421;color:#f5f4ef;font-size:9px;letter-spacing:.09em}.site-header{padding:26px 5.5vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:30px;font-weight:800;letter-spacing:-.06em;line-height:1;display:block}.brand small{display:block;font-size:8px;letter-spacing:.15em;margin-top:10px;font-weight:500}.site-header nav{display:flex;align-items:center;gap:34px;font-size:11px}.nav-cta{display:flex;gap:30px;align-items:center;border:1px solid currentColor;background:transparent;padding:13px 20px;border-radius:40px;font-size:11px}.nav-cta:hover{background:var(--ink,#20231e);color:var(--paper,#fff)}.menu-toggle{display:none;background:transparent}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ink,#20231e);color:var(--paper,#fff);padding:18px 25px;border-radius:40px;font-size:12px;min-height:52px;font-weight:600}.button span{font-size:20px;line-height:1}.button:hover{transform:translateY(-3px);background:var(--accent,#71614a);color:var(--ink,#20231e)}.text-button{padding:12px 0;display:inline-flex;gap:28px;align-items:center;border-bottom:1px solid currentColor;background:transparent;font-size:11px}.round-link,.circle-button{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border:1px solid currentColor;border-radius:50%;background:transparent;font-size:28px}.circle-button{width:54px;height:54px;font-size:18px}.round-link:hover,.circle-button:hover{transform:rotate(12deg);background:var(--accent,#e2dac8)}.section-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:55px}.section-heading>.kicker{width:100%;margin-bottom:14px}.section-heading>p:not(.kicker){max-width:340px;font-size:13px}.faqs details{border-top:1px solid #7775;padding:20px 0}.faqs details:last-child{border-bottom:1px solid #7775}.faqs summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:30px;font-size:14px}.faqs summary::-webkit-details-marker{display:none}.faqs summary span{font-size:24px;font-weight:300;line-height:1}.faqs details[open] summary span{transform:rotate(45deg)}.faqs details p{font-size:13px;max-width:580px;margin:18px 0 0;opacity:.75}.faqs{width:100%}footer{padding:60px 5.5vw 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:30px;flex-wrap:wrap;border-top:1px solid #7774}.footer-name{font-size:25px;font-weight:700;letter-spacing:-.04em}footer>div{display:flex;gap:26px;font-size:10px}footer p{width:100%;max-width:920px;font-size:9px;opacity:.65;margin-top:25px}.concept-note{padding:18px 5.5vw;font-size:9px;opacity:.7;border-top:1px solid #7774}.photo-note{font-size:9px;letter-spacing:.1em}dialog{border:1px solid #ddd;background:#faf9f4;color:#20231e;padding:50px;max-width:560px;width:calc(100% - 32px);border-radius:18px;box-shadow:0 30px 120px #0006}dialog::backdrop{background:#101817bb;backdrop-filter:blur(7px)}dialog h2{font-size:50px;margin:18px 0}dialog p:not(.kicker){font-size:13px;margin-bottom:25px}dialog small{display:block;font-size:10px;margin-top:25px}.dialog-close{position:absolute;top:12px;right:20px;font-size:30px;background:transparent}[hidden]{display:none!important}
/* Maintexx — restrained architectural editorial. */
.maintexx{--paper:#f0ede5;--ink:#262722;--accent:#c5b69b}.brand-x{color:#918269}.maintexx .site-header{border-bottom:1px solid #2c30222b}.mx-intro{padding:54px 5.5vw 35px}.mx-intro h1{font-size:clamp(66px,8.5vw,132px);font-weight:500;position:relative;margin-top:25px;max-width:1200px}.mx-intro h1 em{font-size:1.12em}.mx-asterisk{position:absolute;right:0;top:15px;font-size:90px;color:#9f8e6f;font-weight:400}.mx-intro-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:32px}.mx-intro-bottom p{font-size:11px;line-height:1.7}.mx-intro-bottom .round-link{width:50px;height:50px;font-size:23px}.mx-hero{margin:0 2vw;position:relative;height:580px;overflow:hidden}.mx-hero img{object-position:center 53%}.mx-hero:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0007)}.mx-photo-label{position:absolute;bottom:25px;left:3.5vw;right:3.5vw;display:flex;justify-content:space-between;z-index:1;color:#fff;font-size:9px;letter-spacing:.12em}.mx-statement{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding-top:100px;padding-bottom:100px;border-bottom:1px solid #2223}.mx-statement h2{font-size:clamp(38px,4.2vw,62px)}.side-label{font-size:10px;margin-top:13px;opacity:.6}.mx-statement .body-copy{grid-column:2;max-width:550px;font-size:13px}.mx-services{padding-top:90px;padding-bottom:100px}.mx-services h2{font-size:65px}.mx-service-row{display:grid;grid-template-columns:70px 1.2fr 1fr 100px;gap:30px;align-items:center;border-top:1px solid #3334;padding:32px 0}.mx-service-row>span{font-size:10px;color:#847a69}.mx-service-row h3{font-size:25px}.mx-service-row p{font-size:12px;max-width:300px;opacity:.7}.mx-editorial{padding-top:75px;padding-bottom:75px;background:#282d28;color:#ece9df;display:grid;grid-template-columns:1.15fr 1fr;gap:8vw;align-items:center}.mx-editorial-image{height:560px;position:relative}.mx-editorial-image span{position:absolute;left:20px;bottom:20px;color:#fff;font-size:8px;letter-spacing:.1em;text-shadow:0 1px 8px #000}.mx-editorial h2{font-size:clamp(45px,5vw,76px);margin:25px 0}.mx-editorial p:not(.kicker){max-width:360px;font-size:12px;color:#c7c8bd;margin-bottom:30px}.mx-editorial .button{background:#ded4be;color:#282d28}.mx-end{padding-top:100px;padding-bottom:100px;position:relative}.mx-end h2{font-size:clamp(70px,9vw,130px);margin-top:30px}.mx-end>.round-link{position:absolute;right:7vw;bottom:110px;width:100px;height:100px;font-size:32px}.mx-end>.round-link span{font-size:32px}
/* Phil — bright, optimistic service brand. */
.phil{--paper:#fcfcf7;--ink:#123fdf;--accent:#d9ef5d}.phil .brand{display:flex;gap:10px;align-items:center;font-size:33px}.phil .brand small{max-width:110px;line-height:1.6;font-size:7px;letter-spacing:.09em;margin:0 0 0 5px}.phil-mark{display:grid;place-items:center;background:#123fdf;color:#fff;border-radius:9px;width:40px;height:40px;font-size:34px;padding-bottom:8px}.phil-hero{display:grid;grid-template-columns:1.03fr 1fr;gap:6vw;padding-top:55px;padding-bottom:70px;align-items:center}.phil-headline h1{font-size:clamp(62px,6.7vw,102px);font-weight:700;letter-spacing:-.065em;margin:25px 0;position:relative;line-height:1.08}.phil-headline h1>span{position:relative;white-space:nowrap;background:linear-gradient(transparent 74%,#deee86 74%,#deee86 93%,transparent 93%)}.phil-spark{position:absolute;top:-28px;right:-5px;width:62px;fill:#cedd57;transform:rotate(14deg)}.phil-headline>p:not(.kicker){font-size:14px;color:#596365;line-height:1.9;margin-bottom:30px}.phil .button{border-radius:12px;background:#123fdf;color:#fff}.phil .button:hover{background:#dcf05c;color:#123fdf}.phil-photo{height:570px;position:relative}.phil-photo>img{border-radius:180px 180px 22px 22px;object-position:55% center}.phil-sticker{position:absolute;right:-12px;bottom:30px;background:#dced70;color:#1b3d2f;transform:rotate(7deg);padding:25px;font-size:18px;border-radius:15px;box-shadow:0 8px 20px #0001;line-height:1.4}.phil-sticker span{display:block;margin-top:10px;font-size:30px}.phil-strip{padding:23px 5.5vw;background:#123fdf;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;font-weight:600;letter-spacing:.08em}.phil-strip i{font-size:25px;color:#ddef70;font-style:normal}.phil-services{padding-top:95px;padding-bottom:100px}.phil-services h2{font-size:clamp(45px,5vw,73px);font-weight:700;line-height:1.1}.phil-services .section-heading>p:not(.kicker){color:#5f6873}.phil-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.phil-cards article{background:#edf1fc;border-radius:20px;padding:33px;min-height:360px;position:relative}.phil-cards article:nth-child(2){background:#e7efce}.phil-cards article:nth-child(3){background:#f5e9d9}.service-symbol{font-size:50px;display:block;line-height:1;margin-bottom:30px}.phil-cards h3{font-size:29px;font-weight:700;letter-spacing:-.04em;line-height:1.15}.phil-cards p{font-size:12px;color:#536276;max-width:250px;margin:22px 0}.phil-story{background:#e9eee5;padding-top:80px;padding-bottom:80px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:8vw}.phil-story-photo{height:560px;position:relative}.phil-story-photo img{border-radius:24px;object-position:42% center}.phil-story-photo .photo-note{position:absolute;bottom:20px;left:20px;background:#fff;padding:11px 18px;border-radius:25px;font-size:8px}.phil-story h2{font-size:clamp(48px,5.5vw,82px);font-weight:600;margin:26px 0}.phil-story h2 em{font-size:1.13em;line-height:.9}.phil-story p:not(.kicker){font-size:13px;color:#5d695f;max-width:370px;margin-bottom:30px}.phil-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:8vw;padding-top:100px;padding-bottom:100px}.phil-faq h2{font-size:58px;margin-top:25px;font-weight:600}.phil-end{background:#dcef6c;padding-top:60px;padding-bottom:60px;display:flex;align-items:center;justify-content:space-between;gap:35px}.phil-end>span{font-size:50px;line-height:1.1;letter-spacing:-.05em;font-weight:600}
/* Puremate — soft lifestyle editorial, organic forms. */
.puremate{--paper:#f8f5f0;--ink:#4c4169;--accent:#e3d5ed}.puremate .site-header{padding-top:30px;padding-bottom:30px}.puremate .brand{font-size:32px;font-weight:600}.pm-flower{color:#a093b1;margin-left:6px}.puremate .brand small{font-size:7px;letter-spacing:.12em}.puremate .button{background:#65527e;color:white;padding:17px 25px}.puremate .button:hover{background:#d8c3e0;color:#4c4169}.pm-hero{display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding-top:35px;padding-bottom:65px;align-items:center}.pm-hero h1{font-size:clamp(63px,6.6vw,101px);line-height:.99;font-weight:400;letter-spacing:-.055em;margin:30px 0}.pm-hero h1 em{font-size:1.13em;color:#8c799e}.pm-hero-copy>p:not(.kicker){font-size:12px;max-width:340px;margin:30px 0;color:#6e6678}.pm-note{display:flex;align-items:center;gap:10px;margin-top:30px;font-size:9px;color:#8a7c95}.pm-note span{font-size:25px}.pm-hero-visual{height:660px;position:relative;padding:20px}.pm-hero-visual>img{border-radius:46% 46% 8px 8px;object-position:50% center}.pm-hero-visual:before{content:'';position:absolute;inset:0;border:1px solid #d7cedc;border-radius:46% 46% 8px 8px;transform:rotate(4deg);z-index:-1}.pm-orbit{position:absolute;right:-12px;top:20px;padding:20px 0;writing-mode:vertical-rl;font-size:8px;letter-spacing:.16em;color:#8c779a}.pm-mini-card{position:absolute;left:-35px;bottom:35px;background:#eee4f0;border:7px solid #f8f5f0;padding:24px 32px;transform:rotate(-6deg);box-shadow:0 10px 35px #4b316415}.pm-mini-card>span{font-size:8px;letter-spacing:.15em}.pm-mini-card p{font-family:'Cormorant Garamond',Georgia,serif;font-size:31px;line-height:1.05;margin-top:13px}.pm-manifesto{padding-top:90px;padding-bottom:90px;text-align:center;background:#ede6ef}.pm-manifesto h2{font-size:clamp(38px,4.5vw,65px);margin:28px auto}.pm-manifesto h2 em{font-size:1.2em}.pm-manifesto>p:last-child{max-width:460px;margin:auto;font-size:12px;color:#7b6e84}.pm-services{padding-top:95px;padding-bottom:100px}.pm-service-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:45px;gap:30px}.pm-service-title h2{font-size:60px;font-family:'Cormorant Garamond',Georgia,serif}.pill-tabs{display:flex;gap:8px;background:#eee7ee;padding:6px;border-radius:40px}.pill-tabs button{border-radius:40px;padding:10px 17px;background:transparent;font-size:10px;white-space:nowrap}.pill-tabs button[aria-pressed=true]{background:#fff;box-shadow:0 2px 8px #58356b10}.pm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.pm-cards article>img{height:320px;border-radius:130px 130px 10px 10px}.pm-cards article:nth-child(2)>img{border-radius:10px}.pm-cards article>div{padding:23px 4px}.pm-cards article>div>span{font-size:8px;letter-spacing:.1em;opacity:.7}.pm-cards h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;margin:16px 0}.pm-cards p{font-size:11px;max-width:250px;color:#7a6c85}.pm-cards .text-button{margin-top:13px;font-size:10px}.pm-maintenance{display:grid;grid-template-columns:1fr 1.4fr;gap:7vw;align-items:center;background:#e4dfd4;padding-top:75px;padding-bottom:75px}.pm-big-flower{font-size:330px;line-height:1;text-align:center;color:#a69aaf;font-family:Georgia,serif}.pm-maintenance h2{font-size:61px;margin:28px 0}.pm-maintenance p:not(.kicker){max-width:420px;font-size:12px;margin-bottom:25px;color:#756c7a}.pm-faq{padding-top:90px;padding-bottom:90px;max-width:1050px;margin:auto}.pm-faq h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:60px;margin-bottom:40px}.pm-end{padding-top:80px;padding-bottom:90px;background:#ede6ef;text-align:center}.pm-end h2{font-size:85px;margin:30px 0}.pm-end h2 em{font-size:1.15em}
/* P2 — kinetic automotive, graphic red accents. */
.p2-design{--paper:#101112;--ink:#f1f0e9;--accent:#ed3b2d}.p2-design h1,.p2-design h2,.p2-design h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:-.025em}.p2-design .site-header{background:#101112}.p2-design .brand{display:flex;align-items:center;gap:15px}.p2-design .brand small{max-width:90px;line-height:1.6;font-size:8px;margin:0}.p2-logo{font-family:'Barlow Condensed',Impact,sans-serif;font-style:italic;font-size:53px;letter-spacing:-.08em}.p2-logo>span{color:#ed3b2d}.p2-design .nav-cta{border-radius:0;border-color:#555;background:#ed3b2d;border-color:#ed3b2d;color:#fff}.p2-design .button{border-radius:0;background:#ed3b2d;color:white;text-transform:uppercase;font-size:10px;letter-spacing:.08em}.p2-design .button:hover{background:white;color:#111}.p2-hero{position:relative;height:690px;overflow:hidden;background:#25272b}.p2-hero-img{position:absolute;inset:0;object-position:center 53%;filter:brightness(.65)}.p2-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07090ae6,#07090a30 75%),linear-gradient(0deg,#07090aaa,transparent 35%)}.p2-grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#fff1 25%);z-index:1}.p2-hero-content{position:relative;z-index:2;padding:65px 5.5vw}.p2-hero h1{font-size:clamp(95px,11vw,166px);line-height:.84;margin:30px 0;font-style:italic}.p2-hero h1 span{color:#ed3b2d}.p2-hero-bottom{display:flex;align-items:center;gap:65px;margin-top:45px}.p2-hero-bottom p{font-size:12px;color:#d2d1cb}.p2-hero-foot{position:absolute;z-index:2;left:5.5vw;right:5.5vw;bottom:30px;display:flex;justify-content:space-between;gap:25px;font-size:8px;letter-spacing:.13em}.p2-ticker{background:#ed3b2d;padding:20px 5.5vw;display:flex;align-items:center;justify-content:space-between;font:600 31px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.02em;gap:15px}.p2-ticker i{font-size:27px;font-style:normal}.p2-services{padding-top:100px;padding-bottom:100px}.p2-services h2{font-size:86px;line-height:.92}.p2-services h2 span{color:#737777}.p2-services .section-heading p:not(.kicker){color:#999e9d}.p2-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.p2-service-grid article{border:1px solid #ffffff2b;padding:35px;display:flex;align-items:flex-start;flex-direction:column;min-height:340px}.p2-service-grid article+article{border-left:0}.p2-service-grid .index{font-size:8px;letter-spacing:.13em;color:#929693}.p2-service-grid h3{font-size:46px;margin:30px 0 20px}.p2-service-grid p{font-size:11px;color:#a2a6a2;max-width:240px}.p2-service-grid .text-button{margin-top:auto;padding-top:25px;color:#ed6755}.p2-detail{display:grid;grid-template-columns:1fr 1fr;background:#e4e3dc;color:#111}.p2-detail>div:first-child{height:620px}.p2-detail img{object-position:45% center}.p2-detail-copy{padding:65px 6vw}.p2-detail h2{font-size:80px;line-height:.9;margin:25px 0}.p2-detail h2 span{color:#ed3b2d}.p2-detail p:not(.kicker){font-size:12px;max-width:350px;color:#5a5d59;margin-bottom:30px}.p2-end{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-top:90px;padding-bottom:90px}.p2-end h2{font-size:74px;line-height:.96;margin-top:25px}.p2-end h2 span{color:#ed3b2d}
/* Muller — technical luxury, silver and ink. */
.muller{--paper:#131719;--ink:#eceded;--accent:#b8c9cd}.muller .brand{font-size:21px;letter-spacing:.12em;display:flex;align-items:center;gap:14px}.muller .brand small{font-size:7px;letter-spacing:.11em;line-height:1.7;max-width:110px;margin:0;border-left:1px solid #fff3;padding-left:14px}.mm-icon{font-size:26px;letter-spacing:-.4em;border:1px solid #fff6;padding:10px 18px 10px 7px;display:inline-block;line-height:1}.mm-icon>span{opacity:.45}.muller .site-header{padding-top:30px;padding-bottom:30px}.muller .nav-cta{border-color:#697173}.muller .button{background:#c7d4d6;color:#121719;font-size:11px}.muller .button:hover{background:white}.mm-hero{height:690px;position:relative;overflow:hidden}.mm-hero-photo{position:absolute;inset:0}.mm-hero-photo img{object-position:center 55%;filter:brightness(.6) saturate(.5)}.mm-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111719d9,transparent),linear-gradient(0deg,#111719dd,transparent 60%)}.mm-hero-content{position:relative;z-index:1;padding:90px 5.5vw 40px}.mm-hero h1{font-size:clamp(58px,6.5vw,95px);line-height:1.06;max-width:1000px;margin:40px 0;font-weight:400}.mm-hero h1 em{color:#ced8db;font-size:1.14em}.mm-hero-line{display:flex;justify-content:space-between;align-items:center;gap:40px;max-width:950px}.mm-hero-line p{font-size:12px;color:#d7dedc}.mm-hero-caption{position:absolute;z-index:1;left:5.5vw;right:5.5vw;bottom:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;gap:30px}.mm-intro{padding-top:100px;padding-bottom:100px;text-align:center;max-width:1100px;margin:auto}.mm-intro h2{font-size:68px;margin:30px 0}.mm-intro h2 em{color:#adbfc2;font-size:1.1em}.mm-intro>p:last-child{font-size:12px;max-width:510px;margin:auto;color:#9da9a9}.mm-treatments{padding-top:70px;padding-bottom:85px;background:#1b2224}.mm-treatments h2{font-size:66px}.mm-treatments h2 em{color:#a9bec3}.mm-treatment{display:grid;grid-template-columns:80px 1fr 70px;gap:30px;border-top:1px solid #fff3;padding:35px 0;align-items:center}.mm-treatment>span{font-size:10px;color:#829397}.mm-treatment h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:38px;margin-bottom:15px}.mm-treatment p{font-size:11px;max-width:480px;color:#9caaaa}.mm-treatment .circle-button{font-size:0}.mm-treatment .circle-button span{font-size:21px}.mm-treatment .circle-button:hover{color:#151b1e}.mm-gallery{display:grid;grid-template-columns:1.25fr 1fr;gap:8vw;padding-top:100px;padding-bottom:100px;align-items:center}.mm-gallery figure{height:570px;position:relative}.mm-gallery img{filter:saturate(.4);object-position:46% center}.mm-gallery figcaption{position:absolute;bottom:22px;left:22px;letter-spacing:.1em;font-size:8px}.mm-gallery h2{font-size:75px;margin:30px 0}.mm-gallery h2 em{color:#b4c4c8}.mm-gallery p:not(.kicker){font-size:12px;color:#99a7a9;max-width:330px}.mm-cross{display:block;font-size:90px;font-weight:300;line-height:1;margin-top:35px;color:#91a6ad}.mm-finish{padding-top:75px;padding-bottom:100px;background:#dce2e1;color:#182123;text-align:center}.mm-finish h2{font-size:93px;line-height:1;margin:35px 0}.mm-finish .button{background:#182123;color:#eef0eb}
@media(min-width:1600px){.wrap,.site-header,.mx-intro{padding-left:max(5.5vw,calc((100vw - 1440px)/2));padding-right:max(5.5vw,calc((100vw - 1440px)/2))}}
@media(max-width:1050px){.site-header nav{gap:20px}.mx-intro h1{font-size:85px}.mx-asterisk{font-size:60px}.phil-headline h1{font-size:65px}.phil-photo{height:500px}.pm-hero h1{font-size:73px}.pm-hero-visual{height:580px}.pm-big-flower{font-size:240px}.p2-hero h1{font-size:125px}.p2-service-grid article{padding:25px}.p2-service-grid h3{font-size:37px}.mm-hero h1{font-size:70px}.mx-service-row{grid-template-columns:40px 1fr 1fr 70px;gap:20px}.mx-service-row h3{font-size:22px}}
@media(max-width:760px){html{scroll-padding-top:15px}.concept-banner{padding:8px 5vw;font-size:7px;letter-spacing:.04em}.concept-banner a{white-space:nowrap}.site-header{position:relative;padding:22px 5vw;gap:10px}.brand{font-size:27px}.brand small{font-size:7px}.menu-toggle{display:flex;gap:12px;font-size:11px;align-items:center;padding:10px 0 10px 10px}.menu-toggle span{font-size:18px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper,#faf9f4);color:var(--ink,#20231e);z-index:20;padding:25px 5vw;border-top:1px solid #7774;box-shadow:0 20px 25px #0002;font-size:13px}.site-header nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:20px}.site-header nav .nav-cta{align-self:flex-start}.wrap{padding-left:6vw;padding-right:6vw}.kicker{font-size:8px;letter-spacing:.12em}.section-heading{margin-bottom:35px;gap:18px}.section-heading>.kicker{margin-bottom:5px}h2{font-size:46px}.section-heading>p:not(.kicker){font-size:12px}.button{font-size:11px;padding:16px 21px;min-height:50px}.text-button{font-size:10px}.mx-intro{padding:32px 6vw 25px}.mx-intro h1{font-size:53px;line-height:1.04;margin-top:22px}.mx-intro h1 em{font-size:1.04em}.mx-asterisk{font-size:35px;right:-5px;top:-30px}.mx-intro-bottom{margin-top:24px}.mx-intro-bottom p{font-size:9px}.mx-hero{height:370px;margin:0 3vw}.mx-hero img{object-position:45% center}.mx-photo-label{left:15px;right:15px;bottom:18px;font-size:7px;gap:18px}.mx-photo-label span:last-child{max-width:130px;text-align:right}.mx-statement{padding-top:55px;padding-bottom:55px;grid-template-columns:1fr;gap:25px}.mx-statement .body-copy{grid-column:auto;font-size:12px}.mx-statement h2{font-size:39px}.side-label{margin-top:8px;font-size:9px}.mx-services{padding-top:55px;padding-bottom:55px}.mx-services h2{font-size:46px}.mx-service-row{grid-template-columns:25px 1fr 55px;gap:15px;padding:25px 0}.mx-service-row h3{font-size:20px}.mx-service-row p{grid-column:2;grid-row:auto;font-size:11px}.mx-service-row .text-button{grid-column:3;grid-row:1/3;font-size:0;gap:0;justify-content:center}.mx-service-row .text-button span{font-size:20px}.mx-editorial{padding-top:40px;padding-bottom:50px;grid-template-columns:1fr;gap:35px}.mx-editorial-image{height:360px}.mx-editorial h2{font-size:49px;margin:20px 0}.mx-end{padding-top:60px;padding-bottom:65px}.mx-end h2{font-size:64px}.mx-end>.round-link{position:static;margin-top:30px;width:60px;height:60px}.phil .brand{font-size:28px}.phil-mark{width:34px;height:34px;font-size:30px}.phil .brand small{max-width:90px;font-size:6px}.phil-hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:45px;gap:35px}.phil-headline h1{font-size:55px;margin:20px 0}.phil-headline>p:not(.kicker){font-size:12px}.phil-spark{width:43px;top:-5px;right:4px}.phil-photo{height:400px;margin:0 10px}.phil-photo>img{border-radius:150px 150px 18px 18px}.phil-sticker{font-size:15px;padding:20px;bottom:20px;right:-8px}.phil-sticker span{font-size:25px;margin-top:5px}.phil-strip{padding:18px 6vw;font-size:8px;flex-wrap:wrap;gap:12px;justify-content:center}.phil-strip i{font-size:17px}.phil-strip i:last-of-type{display:none}.phil-services{padding-top:60px;padding-bottom:60px}.phil-services h2{font-size:44px}.phil-cards{grid-template-columns:1fr;gap:15px}.phil-cards article{padding:27px;min-height:260px}.service-symbol{position:absolute;right:25px;top:30px;font-size:43px}.phil-cards h3{font-size:29px}.phil-cards p{font-size:12px;max-width:230px}.phil-story{grid-template-columns:1fr;padding-top:45px;padding-bottom:55px;gap:35px}.phil-story-photo{height:380px}.phil-story h2{font-size:56px}.phil-faq{grid-template-columns:1fr;padding-top:60px;padding-bottom:60px;gap:35px}.phil-faq h2{font-size:45px;margin-top:20px}.phil-end{padding-top:40px;padding-bottom:45px;align-items:flex-start;flex-direction:column;gap:27px}.phil-end>span{font-size:42px}.pm-hero{grid-template-columns:1fr;padding-top:20px;padding-bottom:45px;gap:35px}.pm-hero h1{font-size:65px;margin:22px 0}.pm-hero h1 br:nth-child(2){display:none}.pm-hero-copy>p:not(.kicker){font-size:12px;margin:25px 0}.pm-note{margin-top:20px}.pm-hero-visual{height:460px;margin:0 12px 0 20px;padding:14px}.pm-mini-card{left:-20px;bottom:25px;padding:18px 23px}.pm-mini-card p{font-size:27px}.pm-orbit{font-size:7px;right:-10px}.pm-manifesto{padding-top:60px;padding-bottom:60px}.pm-manifesto h2{font-size:34px;line-height:1.15}.pm-manifesto h2 em{font-size:1.15em}.pm-manifesto>p:last-child{font-size:11px}.pm-services{padding-top:55px;padding-bottom:55px}.pm-service-title{align-items:flex-start;flex-direction:column;gap:25px}.pm-service-title h2{font-size:48px}.pill-tabs button{padding:8px 15px;font-size:10px}.pm-cards{grid-template-columns:1fr;gap:25px}.pm-cards article>img{height:350px;border-radius:140px 140px 8px 8px}.pm-cards article>div{padding:20px 3px}.pm-cards h3{font-size:37px}.pm-cards p{max-width:100%;font-size:12px}.pm-maintenance{grid-template-columns:1fr;padding-top:35px;padding-bottom:50px;gap:30px}.pm-big-flower{font-size:150px;line-height:1;text-align:left}.pm-maintenance h2{font-size:45px;margin:20px 0}.pm-faq{padding-top:55px;padding-bottom:55px}.pm-faq h2{font-size:47px;margin-bottom:30px}.pm-end{padding-top:55px;padding-bottom:65px}.pm-end h2{font-size:62px}.p2-design .brand small{font-size:7px}.p2-logo{font-size:45px}.p2-hero{height:610px}.p2-hero-img{object-position:63% center}.p2-hero-content{padding:48px 6vw}.p2-hero h1{font-size:78px;line-height:.9;margin:30px 0}.p2-hero-bottom{align-items:flex-start;flex-direction:column;gap:25px;margin-top:30px}.p2-hero-bottom p{font-size:11px}.p2-hero-foot{left:6vw;right:6vw;font-size:7px;line-height:1.7;gap:30px}.p2-ticker{padding:18px 6vw;font-size:22px;gap:10px;flex-wrap:wrap;justify-content:center}.p2-ticker i{font-size:18px}.p2-ticker span:last-child,.p2-ticker i:last-of-type{display:none}.p2-services{padding-top:60px;padding-bottom:60px}.p2-services h2{font-size:58px}.p2-service-grid{grid-template-columns:1fr}.p2-service-grid article{min-height:280px;padding:28px}.p2-service-grid article+article{border-left:1px solid #ffffff2b;border-top:0}.p2-service-grid h3{font-size:42px;margin:24px 0 20px}.p2-service-grid p{font-size:12px;max-width:260px}.p2-detail{grid-template-columns:1fr}.p2-detail>div:first-child{height:360px}.p2-detail-copy{padding:45px 6vw}.p2-detail h2{font-size:63px}.p2-end{align-items:flex-start;flex-direction:column;padding-top:60px;padding-bottom:60px;gap:35px}.p2-end h2{font-size:54px}.muller .brand{font-size:16px;gap:12px;letter-spacing:.09em}.muller .brand small{font-size:6px;max-width:80px;padding-left:10px}.mm-icon{font-size:22px;padding:8px 15px 8px 6px}.muller .site-header{padding-top:23px;padding-bottom:23px}.mm-hero{height:590px}.mm-hero-photo img{object-position:60% center;filter:brightness(.55) saturate(.4)}.mm-hero-content{padding:45px 6vw}.mm-hero h1{font-size:51px;line-height:1.1;margin:35px 0}.mm-hero h1 em{font-size:1.08em}.mm-hero-line{align-items:flex-start;flex-direction:column;gap:30px}.mm-hero-line p{font-size:11px}.mm-hero-caption{left:6vw;right:6vw;font-size:7px;bottom:20px}.mm-hero-caption span:last-child{max-width:140px;text-align:right}.mm-intro{padding-top:60px;padding-bottom:60px}.mm-intro h2{font-size:43px;margin:25px 0}.mm-intro>p:last-child{font-size:11px}.mm-treatments{padding-top:55px;padding-bottom:55px}.mm-treatments h2{font-size:51px}.mm-treatment{grid-template-columns:20px 1fr 40px;gap:15px;padding:27px 0}.mm-treatment h3{font-size:29px;line-height:1.1}.mm-treatment p{font-size:11px}.mm-treatment .circle-button{width:38px;height:38px}.mm-treatment .circle-button span{font-size:18px}.mm-gallery{grid-template-columns:1fr;padding-top:55px;padding-bottom:55px;gap:35px}.mm-gallery figure{height:380px}.mm-gallery h2{font-size:59px;margin:25px 0}.mm-cross{font-size:65px;margin-top:20px}.mm-finish{padding-top:55px;padding-bottom:65px}.mm-finish h2{font-size:64px;margin:30px 0}footer{padding:40px 6vw 23px;gap:25px}.footer-name{font-size:23px}footer>div{flex-direction:column;gap:12px}footer p{font-size:8px;margin-top:12px}.concept-note{font-size:8px;padding:15px 6vw}dialog{padding:40px 25px}dialog h2{font-size:40px}.faqs summary{font-size:12px}.faqs details p{font-size:11px}}
.mx-end>.round-link{font-size:0}.mx-end>.round-link span{font-size:32px}
@media(max-width:760px){.pm-hero h1 br:nth-child(2){display:initial}.mx-end>.round-link{font-size:0}.mx-end>.round-link span{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Motion is progressive enhancement. No content is hidden by default. */
.reading-progress{position:fixed;left:0;right:0;top:0;height:2px;background:var(--accent,#a99b82);z-index:100;transform-origin:left;scale:0 1;pointer-events:none}
.motion-control{position:fixed;bottom:18px;right:18px;z-index:45;border:1px solid #80808045;border-radius:30px;background:var(--paper,#fff);color:var(--ink,#222);padding:9px 13px;display:flex;align-items:center;gap:9px;box-shadow:0 3px 20px #0001;font-size:9px;letter-spacing:.03em;min-height:36px}
.motion-control-icon{font-size:12px}.motion-control:hover{box-shadow:0 5px 25px #0002}.motion-control:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.motion-active [data-depth]{translate:0 var(--depth-offset,0);scale:1.045;will-change:translate}
.motion-paused .reading-progress{opacity:0}.motion-paused [data-depth]{translate:none;scale:1}
.motion-active .site-header nav>a{position:relative}.motion-active .site-header nav>a:after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.motion-active .site-header nav>a:hover:after,.motion-active .site-header nav>a:focus-visible:after{transform:scaleX(1);transform-origin:left}
.motion-active .button>span,.motion-active .nav-cta>span,.motion-active .text-button>span{display:inline-block;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.motion-active .button:hover>span,.motion-active .nav-cta:hover>span,.motion-active .text-button:hover>span{transform:translate(3px,-3px)}
.motion-active .round-link>span,.motion-active .circle-button>span{transition:rotate .35s,scale .35s}.motion-active .round-link:hover>span,.motion-active .circle-button:hover>span{rotate:10deg;scale:1.1}
.motion-active dialog[open]{animation:dialog-in .38s cubic-bezier(.2,.8,.2,1)}.motion-active dialog[open]::backdrop{animation:backdrop-in .3s ease-out}
@keyframes dialog-in{from{opacity:0;translate:0 15px;scale:.98}to{opacity:1;translate:0 0;scale:1}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
/* Maintexx: slow rotation, quiet photo drift, architectural rules. */
.motion-active.maintexx .mx-asterisk{animation:architect-rotate 28s linear infinite}.motion-active.maintexx .mx-hero{clip-path:inset(0);animation:architect-open 1.45s cubic-bezier(.19,1,.22,1)}
@keyframes architect-rotate{to{rotate:180deg}}@keyframes architect-open{from{clip-path:inset(5% 4% 5% 4%)}to{clip-path:inset(0)}}
.mx-service-row{position:relative}.motion-active .mx-service-row:after{content:'';position:absolute;top:-1px;left:0;height:1px;width:100%;background:#8a795c;scale:0 1;transform-origin:left;transition:scale .65s}.motion-active .mx-service-row:hover:after,.motion-active .mx-service-row:focus-within:after{scale:1 1}.motion-active .mx-service-row h3{transition:translate .4s}.motion-active .mx-service-row:hover h3{translate:8px 0}
/* Phil: buoyant accents and a confident card lift. */
.motion-active.phil .phil-spark{animation:phil-twirl 20s linear infinite}.motion-active.phil .phil-sticker{animation:phil-bob 6s ease-in-out infinite}.motion-active.phil .phil-strip i{animation:phil-twirl 14s linear infinite}.motion-active.phil .phil-strip i:nth-of-type(2){animation-direction:reverse}
@keyframes phil-twirl{to{rotate:360deg}}@keyframes phil-bob{0%,100%{translate:0 0}50%{translate:0 -9px}}
.phil-cards article{transition:translate .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}.motion-active .phil-cards article:hover,.motion-active .phil-cards article:focus-within{translate:0 -8px;box-shadow:0 17px 35px #123fdf0c}.motion-active .phil-cards article .service-symbol{transition:rotate .5s}.motion-active .phil-cards article:hover .service-symbol{rotate:12deg}
/* Puremate: a soft breathing rhythm and a floating paper note. */
.motion-active.puremate .pm-flower,.motion-active.puremate .pm-note>span{display:inline-block;animation:flower-turn 35s linear infinite}.motion-active.puremate .pm-big-flower{animation:flower-breathe 9s ease-in-out infinite}.motion-active.puremate .pm-mini-card{animation:paper-float 7s ease-in-out infinite}.motion-active.puremate .pm-orbit{animation:orbit-drift 9s ease-in-out infinite}
@keyframes flower-turn{to{rotate:360deg}}@keyframes flower-breathe{0%,100%{rotate:-4deg;scale:1}50%{rotate:4deg;scale:1.035}}@keyframes paper-float{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes orbit-drift{0%,100%{translate:0 0;opacity:.65}50%{translate:0 7px;opacity:1}}
.pm-cards article{overflow:clip}.pm-cards article>img{transition:scale .8s cubic-bezier(.2,.8,.2,1),filter .8s}.motion-active .pm-cards article:hover>img{scale:1.025;filter:saturate(1.1)}.pill-tabs button{transition:background .3s,box-shadow .3s,translate .3s}.motion-active .pill-tabs button:hover{translate:0 -2px}
[data-tilt]{rotate:x var(--tilt-x,0deg);transform-style:preserve-3d}.motion-active [data-tilt]{transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotate(var(--note-angle,0deg));transition:transform .25s ease-out}.phil-sticker{--note-angle:7deg}.pm-mini-card{--note-angle:-6deg}
/* P2: quick entrance, passing light trails, directional service panels. */
.p2-speed-lines{position:absolute;left:0;right:0;bottom:70px;height:70px;z-index:1;pointer-events:none;overflow:hidden}.p2-speed-lines i{position:absolute;left:-30%;top:10px;width:25%;height:1px;background:linear-gradient(90deg,transparent,#ed3b2d99);opacity:0}.motion-active .p2-speed-lines i{animation:speed-line 7s cubic-bezier(.5,0,.6,1) infinite}.p2-speed-lines i:nth-child(2){top:35px;animation-delay:1.3s}.p2-speed-lines i:nth-child(3){top:53px;animation-delay:2.6s;width:18%}
@keyframes speed-line{0%,15%{translate:0 0;opacity:0}25%{opacity:.7}55%{translate:650% 0;opacity:0}100%{translate:650% 0;opacity:0}}
.p2-service-grid article{position:relative;overflow:hidden;transition:background .3s}.p2-service-grid article:before{content:'';position:absolute;left:0;bottom:0;right:0;height:3px;background:#ed3b2d;scale:0 1;transform-origin:left;transition:scale .4s}.motion-active .p2-service-grid article:hover:before,.motion-active .p2-service-grid article:focus-within:before{scale:1 1}.motion-active .p2-service-grid article:hover{background:#ffffff05}.motion-active .p2-ticker i{animation:p2-arrow 3s ease-in-out infinite}.motion-active .p2-ticker i:nth-of-type(2){animation-delay:.4s}.motion-active .p2-ticker i:nth-of-type(3){animation-delay:.8s}@keyframes p2-arrow{0%,75%,100%{translate:0 0;opacity:1}85%{translate:4px -4px;opacity:.5}}
/* Muller: a very faint moving light across the finish. */
.mm-sheen{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 30%,#e3f0f50a 46%,#ffffff10 50%,transparent 60%);background-size:250% 100%;background-position:130% 0;mix-blend-mode:screen}.motion-active .mm-sheen{animation:finish-sweep 14s ease-in-out infinite}
@keyframes finish-sweep{0%,12%{opacity:0;background-position:150% 0}28%{opacity:.6}60%{opacity:0;background-position:-80% 0}100%{opacity:0;background-position:-80% 0}}
.motion-active.muller .mm-hero:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at var(--shine-x,70%) 50%,#d3e2ec0a,transparent 55%)}.motion-active.muller .mm-cross{animation:cross-turn 20s linear infinite;transform-origin:25px center}.mm-treatment{position:relative}.motion-active .mm-treatment h3{transition:translate .5s,color .5s}.motion-active .mm-treatment:hover h3{translate:6px 0;color:#c9e0e6}.motion-active .mm-treatment:after{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:#dcebed;scale:0 1;transform-origin:left;transition:scale .9s}.motion-active .mm-treatment:hover:after,.motion-active .mm-treatment:focus-within:after{scale:1 1}@keyframes cross-turn{to{rotate:180deg}}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused [data-tilt]{rotate:none}
@media(max-width:760px){.motion-control{right:12px;bottom:12px;font-size:8px;padding:8px 11px;min-height:34px}.motion-active [data-depth]{scale:1.035}.p2-speed-lines{bottom:80px}.motion-active .phil-sticker{animation-duration:8s}.phil-spark{top:-28px;right:2px;width:35px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reading-progress{display:none}[data-depth]{translate:none!important;scale:1!important}.motion-active [data-tilt]{transform:none!important}.mm-sheen,.p2-speed-lines{display:none}.motion-control{opacity:.8}}
