:root{--ink:#171918;--muted:#606662;--paper:#f6f7f4;--white:#fff;--line:#dce0d9;--yellow:#f4cd27;--dark:#151916;--container:1240px;--radius:8px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-size:16px;line-height:1.6}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1,h2{font-weight:500;letter-spacing:-.045em;line-height:1.07}h1{font-size:clamp(2.7rem,4.5vw,4.25rem)}h2{font-size:clamp(2rem,3.25vw,3.25rem)}h3{font-size:1.35rem;line-height:1.25;letter-spacing:-.025em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a57c00;outline-offset:5px}a:hover{text-decoration-color:var(--yellow)}[hidden]{display:none!important}.container{width:min(var(--container),calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:12px;left:12px;transform:translateY(-200%);background:var(--yellow);padding:12px 20px;z-index:300}.skip:focus{transform:translateY(0)}.eyebrow{display:block;font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:22px}.eyebrow:before{content:'';display:inline-block;vertical-align:middle;width:26px;height:2px;background:var(--yellow);margin-right:11px}.muted{color:var(--muted)}.section{padding-block:92px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-head>p{max-width:370px;color:var(--muted)}.section-head h2{max-width:600px}.arrow{font-size:1.4em;line-height:1}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;min-height:52px;padding:14px 22px;border-radius:4px;font-size:.875rem;font-weight:700;background:var(--yellow);color:var(--ink);transition:background .2s,transform .2s}.button:hover{background:#ffe063;transform:translateY(-2px)}.button.secondary{background:transparent;box-shadow:inset 0 0 0 1px #737970;color:inherit}.button.secondary:hover{background:#ffffff12}.actions{display:flex;flex-wrap:wrap;gap:14px}.text-link{font-size:.875rem;font-weight:700;display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid currentColor;padding-bottom:5px}
.site-header{position:sticky;top:0;z-index:90;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:86px;display:flex;align-items:center;gap:28px;justify-content:space-between}.logo img{width:208px;height:auto}.nav{display:flex;align-items:center;gap:28px;font-size:.875rem}.nav>a:hover{color:#746000}.nav .header-call{border:1px solid var(--line);padding:11px 17px;border-radius:4px;font-weight:700;white-space:nowrap}.menu-toggle{display:none;background:var(--paper);padding:10px 14px;min-height:44px;border-radius:4px}
.hero{background:var(--dark);color:#fff}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding-block:58px 48px}.hero .eyebrow{color:#c9cec7;margin-bottom:28px}.hero h1 span{color:var(--yellow)}.hero-copy>p{color:#c2c9c0;font-size:1.0625rem;line-height:1.7;max-width:470px;margin-top:24px;margin-bottom:29px}.hero-proof{display:flex;gap:12px;align-items:flex-start;font-size:.875rem;margin-top:32px;color:#d3d7d1}.hero-proof svg{flex-shrink:0;stroke:var(--yellow);margin-top:3px}.hero-proof strong{display:block;color:#fff;font-weight:500}.hero-proof small{font-size:.8125rem;color:#aab3a7}.hero-figure{margin:0;position:relative}.hero-figure>img{width:100%;aspect-ratio:1.02;object-fit:cover;border-radius:5px}.hero-caption{background:#fff;color:var(--ink);position:absolute;left:20px;right:20px;bottom:20px;padding:17px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-left:3px solid var(--yellow)}.hero-caption strong{font-weight:600;font-size:.9375rem}.hero-caption small{display:block;font-size:.8125rem;color:var(--muted)}.hero-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid #394038;padding-block:20px 22px;font-size:.875rem;color:#c2c9c0}.hero-bottom span{display:flex;align-items:center;gap:12px}.hero-bottom b{font-size:.75rem;color:var(--yellow);font-weight:400;font-variant-numeric:tabular-nums}
.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s,border-color .2s}.service-card:hover{box-shadow:0 12px 35px #1719180c;border-color:#939d90}.service-card img{width:100%;height:192px;object-fit:cover;transition:transform .3s}.service-image{overflow:hidden}.service-card:hover img{transform:scale(1.025)}.service-body{padding:24px 25px;display:flex;flex-direction:column;flex:1}.service-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.service-top span{color:#757d71;font-size:.75rem}.service-card p{color:var(--muted);font-size:.9375rem;margin-top:13px}.service-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding-top:17px;border-top:1px solid var(--line);font-size:.8125rem;font-weight:700}.service-link .arrow{color:#857015}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.about-intro>p{color:var(--muted);margin-top:23px}.signature{border-top:1px solid var(--line);margin-top:28px;padding-top:23px}.signature strong{display:block;font-size:1.05rem;font-weight:600}.signature span{font-size:.875rem;color:var(--muted)}.principles{display:grid;gap:0}.principle{display:grid;grid-template-columns:32px 1fr;gap:17px;padding:23px 0;border-top:1px solid var(--line)}.principle:first-child{padding-top:0;border-top:0}.principle>span{font-size:.75rem;color:#827013;padding-top:5px}.principle h3{font-size:1.25rem}.principle p{margin-top:8px;color:var(--muted);font-size:.9375rem}.brand-note{display:flex;align-items:center;gap:35px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:45px;padding-top:28px}.brand-note>span{font-size:.8125rem;color:var(--muted);max-width:170px}.brand-list{display:flex;align-items:center;flex-wrap:wrap;gap:28px;font-size:1rem;letter-spacing:.04em;font-weight:700;color:#5c6359}
.projects{background:var(--paper)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.filters button{padding:10px 18px;background:transparent;border:1px solid #c8cec4;border-radius:3px;font-size:.875rem;min-height:44px}.filters button[aria-pressed=true]{background:var(--dark);color:#fff;border-color:var(--dark)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px 20px}.gallery-item{padding:0;background:transparent;text-align:left}.gallery-item img{width:100%;aspect-ratio:1.32;object-fit:cover;border-radius:5px}.gallery-item .gallery-label{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:12px}.gallery-item strong{display:block;font-size:.9375rem;font-weight:600}.gallery-item small{display:block;font-size:.8125rem;color:var(--muted)}.gallery-item .plus{width:30px;height:30px;border:1px solid #cbd0c8;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.gallery-item:hover .plus{background:var(--yellow);border-color:var(--yellow)}.gallery-status{font-size:.8125rem;color:var(--muted);margin-bottom:17px}.lightbox{width:min(1100px,calc(100% - 32px));max-height:95dvh;background:#161a16;color:#fff;border:0;padding:55px 16px 16px;border-radius:8px}.lightbox::backdrop{background:#080c08db}.lightbox img{max-height:72dvh;width:100%;object-fit:contain}.lightbox .close{position:absolute;right:16px;top:10px;background:transparent;color:#fff;font-size:.875rem;padding:8px 10px;min-height:40px}.lightbox p{font-size:.875rem;padding:15px 8px 3px}
.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.faq-intro p{margin-top:22px;color:var(--muted)}details{border-bottom:1px solid var(--line)}summary{font-size:1rem;font-weight:600;cursor:pointer;padding:22px 42px 22px 0;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:7px;top:19px;font-size:1.45rem;font-weight:400}details[open] summary:after{content:'−'}details p{padding:0 32px 24px 0;color:var(--muted)}.faq-list details:first-child summary{padding-top:0}.faq-list details:first-child summary:after{top:-4px}
.contact{padding-block:78px;background:var(--dark);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact h2{max-width:550px}.contact-copy>p{color:#bdc6b9;margin-top:24px;max-width:450px}.contact .actions{margin-top:29px}.contact-details{font-style:normal;padding-left:40px;border-left:1px solid #434a3f}.contact-details>p{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#c0c8bd;margin-bottom:8px}.contact-phone{font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.025em}.contact-mail{display:block;font-size:1rem;color:#dce2d8;overflow-wrap:anywhere;margin-top:4px}.contact-line{border-top:1px solid #434a3f;padding-top:21px;margin-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:.875rem}.contact-line span{color:#bac4b5}.contact-line strong{font-weight:500}.contact-line a{text-decoration:underline;text-underline-offset:4px}.site-footer{background:#fff;font-size:.8125rem;color:var(--muted);padding-block:23px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-inner a{color:var(--ink)}.mobile-call{display:none}
.breadcrumb{font-size:.8125rem;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap;padding-block:27px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.detail-hero{background:var(--paper);padding-bottom:65px}.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center;margin-top:22px}.detail-grid h1{font-size:clamp(2.5rem,4.3vw,4rem)}.detail-grid .lead{font-size:1.0625rem;color:var(--muted);margin-top:24px;margin-bottom:28px}.detail-grid img{width:100%;aspect-ratio:1.18;object-fit:cover;border-radius:6px}.detail-location{display:block;color:#686e64;font-size:.8125rem;margin-top:22px}.detail-body{display:grid;grid-template-columns:1.25fr .75fr;gap:80px}.detail-content h2{font-size:2rem;margin-bottom:20px}.detail-content p{margin-bottom:20px;color:var(--muted)}.scope{list-style:none;padding:0;margin:28px 0 45px}.scope li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line);position:relative}.scope li:before{content:'✓';position:absolute;left:0;color:#8b7310}.detail-aside{background:var(--paper);padding:30px;align-self:start;border-top:3px solid var(--yellow)}.detail-aside h2{font-size:1.45rem;letter-spacing:-.025em}.detail-aside ul{padding-left:20px;color:var(--muted);font-size:.9375rem;margin-block:22px}.detail-aside li{margin-block:10px}.detail-aside p{font-size:.875rem;color:var(--muted)}.related{display:flex;flex-wrap:wrap;gap:15px;margin-top:28px}.related a{font-size:.875rem;border-bottom:1px solid var(--ink);padding-bottom:4px}.detail-photos{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:45px}
@media(min-width:1500px){.hero-grid{padding-block:70px 58px}.hero-figure>img{aspect-ratio:1.06}}
@media(max-width:1100px){.container{width:calc(100% - 48px)}.nav{gap:17px}.logo img{width:177px}.hero-grid{gap:32px}.hero h1{font-size:3.35rem}.hero-figure>img{aspect-ratio:.87}.about-grid,.contact-grid{gap:50px}.faq-grid{gap:40px}.service-body{padding:22px 18px}.service-top h3{font-size:1.2rem}.detail-body{gap:40px}}
@media(max-width:800px){.header-inner{min-height:76px;flex-wrap:wrap;gap:0}.logo img{width:177px}.nav{width:100%;padding:12px 0 20px;gap:18px;flex-wrap:wrap}.js .menu-toggle{display:block}.js .nav{display:none}.js .nav.open{display:flex}.nav .header-call{margin-left:auto}.hero-grid{gap:40px;padding-block:44px 35px;grid-template-columns:1fr}.hero-copy{max-width:610px}.hero h1{font-size:clamp(2.75rem,7.4vw,4.6rem)}.hero-copy>p{max-width:540px}.hero-figure>img{aspect-ratio:1.5;max-height:470px}.hero-bottom{gap:18px;font-size:.8125rem}.hero-bottom span{align-items:flex-start}.section{padding-block:65px}.section-head{gap:22px;align-items:flex-start;flex-direction:column;margin-bottom:30px}.section-head>p{max-width:580px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card img{height:190px}.about-grid{grid-template-columns:1fr;gap:40px}.about-intro{max-width:580px}.brand-note{gap:20px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.faq-grid{grid-template-columns:1fr;gap:34px}.faq-intro p{max-width:500px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-details{padding-left:0;border-left:0;border-top:1px solid #434a3f;padding-top:30px}.contact-line{max-width:600px}.contact{padding-block:60px}.detail-grid{grid-template-columns:1fr;gap:35px}.detail-grid img{aspect-ratio:1.65}.detail-body{grid-template-columns:1fr;gap:30px}.detail-aside{max-width:600px}.detail-hero{padding-bottom:40px}.footer-inner{flex-wrap:wrap}}
@media(max-width:480px){.container{width:calc(100% - 36px)}h2{font-size:2.1rem}.hero-grid{padding-top:37px;gap:30px}.hero .eyebrow{font-size:.75rem;letter-spacing:.09em}.hero h1{font-size:2.8rem}.hero-copy>p{font-size:1rem}.hero-proof{margin-top:25px}.hero-figure>img{aspect-ratio:1.04}.hero-caption{left:12px;right:12px;bottom:12px;padding:12px}.hero-caption strong{font-size:.875rem}.hero-caption small{font-size:.75rem}.hero-bottom{grid-template-columns:1fr;gap:8px;padding-block:17px}.hero-bottom span{gap:15px}.hero-bottom b{width:15px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card img{height:205px}.service-body{padding:22px}.service-top h3{font-size:1.45rem}.service-card p{font-size:1rem}.gallery-grid{gap:20px 12px}.gallery-item img{aspect-ratio:1}.gallery-item strong{font-size:.875rem}.gallery-item small{font-size:.75rem}.gallery-item .plus{display:none}.filters{gap:8px}.filters button{padding:9px 12px;font-size:.8125rem}.brand-list{gap:20px}.contact-mail{font-size:.9375rem}.contact-line{flex-direction:column;gap:5px}.mobile-call{display:flex;position:fixed;bottom:14px;left:18px;right:18px;background:var(--yellow);padding:13px 18px;z-index:80;align-items:center;justify-content:space-between;font-weight:700;font-size:.875rem;border-radius:4px;box-shadow:0 5px 20px #0003}.site-footer{padding-bottom:95px}.detail-grid h1{font-size:2.6rem}.detail-content h2{font-size:1.8rem}.detail-photos{gap:12px}.nav{align-items:stretch;flex-direction:column;gap:0}.nav>a{padding:10px 0}.nav .header-call{margin:12px 0 0;padding:10px 15px;text-align:center}}
.brand-catalog{margin-top:60px;padding-top:50px;border-top:1px solid var(--line)}.brand-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:32px}.brand-heading h2{font-size:clamp(1.8rem,2.8vw,2.65rem)}.brand-heading p{color:var(--muted);font-size:.9375rem;max-width:450px}.brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px}.brand-category{border-top:1px solid var(--line);padding:23px 0 28px}.brand-category h3{font-size:.875rem;font-weight:400;letter-spacing:0;color:var(--muted);margin-bottom:13px}.brand-category ul,.service-brands ul{list-style:none;margin:0;padding:0;display:flex;gap:10px 18px;flex-wrap:wrap}.brand-category li{font-size:1.125rem;font-weight:600;letter-spacing:-.02em;line-height:1.45}.service-brands{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.service-brands h3{font-size:1.1rem}.service-brands p{margin-block:10px 16px}.service-brands ul{font-size:.875rem;font-weight:600;color:var(--ink);gap:8px}.service-brands li{border:1px solid var(--line);border-radius:3px;padding:5px 9px;margin:0}.service-brands ul{padding:0}
@media(max-width:800px){.brand-heading{flex-direction:column;gap:20px;align-items:flex-start}.brand-heading p{max-width:580px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}}
@media(max-width:480px){.brand-catalog{margin-top:38px;padding-top:35px}.brand-grid{grid-template-columns:1fr}.brand-category{padding:20px 0}.brand-category li{font-size:1.0625rem}.brand-heading{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
