@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";:root{--orange:#f16d01;--ink:#1c1c1b;--paper:#f5f4ef;--line:#d5d4ce;--body:"DM Sans",Arial,sans-serif;--display:"Barlow Condensed","Arial Narrow",Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0;font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}::selection{background:var(--orange);color:#fff}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.015em;font-weight:600;line-height:.96}.topline{background:var(--ink);color:var(--paper);letter-spacing:.075em;justify-content:space-between;align-items:center;padding:10px 4.3%;font-size:.75rem;font-weight:500;display:flex}.top-separator{color:var(--orange);padding:0 14px}.topline a{letter-spacing:.02em}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:26px 4.3%;display:flex}.wordmark{letter-spacing:.045em;flex-direction:column;font-size:.9rem;line-height:1;display:flex}.wordmark strong{letter-spacing:-.045em;font-size:1.7rem;font-weight:700;line-height:1.13}.brand-dot{color:var(--orange)}.header nav{align-items:center;gap:44px;font-size:.875rem;font-weight:600;display:flex}.header nav>a{position:relative}.header nav>a:not(.nav-contact):after{content:"";background:var(--orange);height:2px;transition:right .2s;position:absolute;bottom:-5px;left:0;right:100%}.header nav>a:hover:after{right:0}.nav-contact{background:var(--orange);align-items:center;gap:36px;padding:12px 20px;display:flex}.small-plus{font-size:1.4rem;font-weight:400;line-height:1}.menu-toggle,.mobile-menu[hidden]{display:none}.hero{grid-template-columns:1.17fr 1fr;min-height:660px;display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:67px 6.5% 60px 7.35%;display:flex}.eyebrow{letter-spacing:.1em;font-size:.75rem;font-weight:600;line-height:1.5}.hero .eyebrow{align-items:center;gap:12px;margin-bottom:32px;display:flex}.line-marker{background:var(--orange);width:26px;height:2px}h1{letter-spacing:-.025em;font-size:clamp(4.5rem,7.7vw,8.5rem);font-weight:600;line-height:.99}.orange{color:var(--orange)}.hero-bottom{flex-direction:column;align-items:flex-start;gap:25px;margin-top:42px;display:flex}.hero-bottom p{color:#5a5a54;font-size:1rem;line-height:1.65}.button{align-items:center;gap:42px;padding:16px 22px;font-size:.875rem;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button-dark{color:var(--paper);background:var(--ink)}.button-dark:hover{background:#3c3c38}.hero-art{background:var(--orange);flex-direction:column;justify-content:space-between;padding:30px 34px;display:flex;position:relative;overflow:hidden}.art-top,.art-bottom{letter-spacing:.07em;z-index:2;justify-content:space-between;align-items:center;font-size:.75rem;font-weight:600;display:flex;position:relative}.art-top{border-bottom:1px solid #1c1c1b55;padding-bottom:17px}.art-bottom{border-top:1px solid #1c1c1b55;padding-top:17px}.art-square{background:var(--ink);width:14px;height:14px}.construction-grid{background:linear-gradient(90deg,#0000 49.9%,#1c1c1b24 50%,#0000 50.1%),linear-gradient(#0000 49.9%,#1c1c1b24 50%,#0000 50.1%);border:1px solid #1c1c1b24;position:absolute;inset:100px 34px}.identity-photo{aspect-ratio:695/445;width:calc(100% + 16px);margin-left:-8px;position:relative;overflow:hidden}.identity-photo img{width:107.77%;max-width:none;height:auto;display:block;position:absolute;top:0;left:-2.72%}.section-space{padding:105px 7.2%}.intro{grid-template-columns:1fr 2.1fr;gap:45px;display:grid}.section-index{flex-direction:column;justify-content:space-between;align-items:flex-start;display:flex}.intro-stamp{width:110px;height:110px;box-shadow:7px 7px 0 var(--ink);margin-top:40px;overflow:hidden;transform:rotate(-5deg)}.intro-stamp img{object-fit:cover;width:100%;height:100%;display:block}h2{font-size:clamp(3.5rem,5.7vw,6.4rem)}.outline-word{-webkit-text-stroke:1.2px var(--ink);color:#0000}.intro-description{grid-template-columns:1fr 1fr;gap:36px;max-width:800px;margin:36px 0 28px;display:grid}.intro-description p{color:#66665e;font-size:1rem}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:45px;padding-bottom:9px;font-size:.875rem;font-weight:600;display:inline-flex}.text-link span{color:var(--orange);font-size:1.5rem}.services{background:var(--ink);color:var(--paper)}.section-heading{grid-template-columns:1fr 2.1fr;gap:45px;margin-bottom:58px;display:grid}.section-heading>div>p{color:#b7b7ae;margin-top:24px}.service-item{border-top:1px solid #66665f}.service-item:last-child{border-bottom:1px solid #66665f}.service-item summary{cursor:pointer;align-items:center;gap:30px;padding:25px 0;list-style:none;display:flex}.service-item summary::-webkit-details-marker{display:none}.service-number{color:#a3a39b;min-width:40px;font-size:.75rem}.service-item h3{font-size:clamp(2rem,3.3vw,3.5rem);line-height:1.1;transition:color .2s}.service-item[open] h3,.service-item summary:hover h3{color:var(--orange)}.service-sign{flex-shrink:0;width:32px;height:32px;margin-left:auto;position:relative}.service-sign:before,.service-sign:after{content:"";background:var(--paper);width:22px;height:1px;position:absolute;top:15px;left:5px}.service-sign:after{transition:transform .2s;transform:rotate(90deg)}.service-item[open] .service-sign:after{transform:rotate(0)}.service-item[open] .service-sign:before,.service-item[open] .service-sign:after{background:var(--orange)}.service-detail{justify-content:space-between;align-items:flex-end;gap:60px;padding:0 62px 30px 70px;display:flex}.service-detail p{color:#bdbdb5;max-width:540px;font-size:1rem}.service-tag{letter-spacing:.075em;color:var(--orange);max-width:200px;font-size:.75rem;line-height:1.6}.approach{background:var(--orange);padding-top:57px;padding-bottom:64px}.approach-top{justify-content:space-between;align-items:center;display:flex}.approach h2{letter-spacing:-.025em;margin:28px 0 44px;font-size:clamp(5rem,10.5vw,11rem)}.approach h2 span{color:var(--paper)}.approach-bottom{border-top:1px solid #1c1c1b66;justify-content:space-between;align-items:center;gap:35px;padding-top:26px;display:flex}.approach-bottom p{font-size:1rem}.button-light{background:var(--paper);color:var(--ink)}.contact{grid-template-columns:1.3fr 1fr;gap:80px;display:grid}.contact h2{margin-top:28px;font-size:clamp(4rem,6.5vw,7rem)}.contact-info{padding-top:14px}.contact-lead{margin-bottom:34px;font-size:1.3rem;line-height:1.5}.contact-row{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:8px;padding:22px 0;display:flex}.contact-row>span{letter-spacing:.1em;color:#6b6b62;font-size:.75rem;font-weight:600}.phone{font-family:var(--display);font-size:clamp(2.3rem,3.5vw,3.6rem);font-weight:600;line-height:1.2}.phone:hover,.contact-link:hover,.map-link:hover{color:#bc5600}.contact-link{align-items:center;gap:80px;font-size:1.2rem;font-weight:600;display:flex}.contact-link span{color:var(--orange);font-size:1.7rem}.contact-row p{font-size:1rem}.map-link{text-underline-offset:5px;margin-top:5px;font-size:.875rem;text-decoration:underline}footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin:0 4.3%;padding:32px 0;display:flex}footer p{letter-spacing:.06em;font-size:.75rem}footer>a:last-child{align-items:center;gap:30px;font-size:.875rem;display:flex}footer>a:last-child span{color:var(--orange);font-size:1.5rem}.footer-mark strong{font-size:1.4rem}.footer-mark>span{font-size:.75rem}@media (width>=1500px){.hero{min-height:760px}.hero-copy{padding-top:90px;padding-bottom:90px}body{max-width:1920px;margin:auto}.hero-art{padding:38px 45px}}@media (width<=1000px){.hero{min-height:570px}.hero-copy{padding:45px 7%}.hero-art{padding:25px}.art-top{font-size:.65rem}.art-top span:first-child{display:none}h1{font-size:6.6vw}.hero .eyebrow{font-size:.65rem}.hero-bottom{margin-top:30px}.button{gap:25px}.section-space{padding:80px 6%}.intro,.section-heading{grid-template-columns:1fr 2.7fr;gap:30px}.service-detail{gap:30px}.contact{gap:50px}.contact-lead{font-size:1.15rem}}@media (width<=700px){.topline{padding:8px 6%;font-size:.65rem}.topline>span:first-child{display:none}.topline>span:last-child{justify-content:space-between;align-items:center;width:100%;display:flex}.top-separator{display:none}.header{padding:20px 6%}.wordmark strong{font-size:1.5rem}.wordmark>span{font-size:.75rem}.header nav{display:none}.menu-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:44px;height:44px;display:flex}.menu-toggle span{background:var(--ink);width:25px;height:2px;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px)rotate(-45deg)}.mobile-menu{border-bottom:1px solid var(--line);flex-direction:column;gap:18px;padding:12px 6% 24px;font-size:1.15rem;font-weight:600;display:flex}.hero{flex-direction:column;min-height:0;display:flex}.hero-copy{padding:40px 6% 42px}.hero .eyebrow{gap:9px;margin-bottom:26px;font-size:.7rem}h1{font-size:clamp(4.3rem,13.2vw,6.6rem)}.hero-bottom{gap:22px;margin-top:25px}.hero-bottom p{font-size:1rem}.hero-art{height:340px;min-height:310px;padding:20px 6%}.art-top{font-size:.65rem}.art-top span:first-child{display:block}.art-bottom{padding-top:12px;font-size:.65rem}.art-top{padding-bottom:12px}.construction-grid{inset:60px 6%}.identity-photo{flex-shrink:0;width:75%;max-width:390px;margin:auto}.section-space{padding:65px 6%}.intro{display:block}.section-index{margin-bottom:30px;display:block}.intro-stamp{display:none}h2{font-size:3.6rem}.intro-description{grid-template-columns:1fr;gap:18px;margin-top:26px}.outline-word{-webkit-text-stroke:1px var(--ink)}.section-heading{margin-bottom:32px;display:block}.section-heading>.eyebrow{margin-bottom:30px}.section-heading>div>p{max-width:250px;font-size:1rem}.service-item summary{gap:16px;padding:22px 0}.service-number{min-width:20px}.service-item h3{font-size:2.2rem}.service-sign{width:24px}.service-sign:before,.service-sign:after{width:18px;left:3px}.service-detail{padding:0 10px 25px 36px;display:block}.service-detail p{font-size:1rem}.service-tag{max-width:none;margin-top:18px;font-size:.7rem;display:block}.approach{padding-top:35px;padding-bottom:40px}.approach-top .eyebrow{font-size:.7rem}.approach h2{margin:30px 0;font-size:clamp(4.8rem,15vw,7.5rem)}.approach-bottom{flex-direction:column;align-items:flex-start;gap:24px;padding-top:22px}.approach-bottom p{font-size:1rem}.contact{display:block}.contact h2{font-size:4rem}.contact-info{margin-top:40px;padding-top:0}.contact-lead{font-size:1.15rem}.phone{font-size:2.8rem}footer{flex-wrap:wrap;gap:22px;margin:0 6%;padding:26px 0}footer p{font-size:.65rem}footer>a:last-child{border-top:1px solid var(--line);justify-content:space-between;width:100%;padding-top:18px;font-size:.875rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.header nav>a[aria-current=page],.mobile-menu a[aria-current=page]{color:#bc5600}.header nav>a[aria-current=page]:after{right:0}.footer-portfolio{font-size:.875rem}.portfolio-intro{padding-top:42px;padding-bottom:58px}.breadcrumbs{color:#66665e;align-items:center;gap:16px;margin-bottom:50px;font-size:.875rem;display:flex}.breadcrumbs a:hover{color:#bc5600}.breadcrumbs span[aria-current]{color:var(--ink)}.portfolio-title-row{justify-content:space-between;align-items:center;gap:30px;display:flex}.portfolio-title-row .eyebrow{align-items:center;gap:12px;margin-bottom:24px;display:flex}.portfolio-title-row h1{font-size:clamp(4.4rem,8.5vw,9rem)}.portfolio-intro-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:35px;margin-top:38px;padding-top:25px;display:flex}.portfolio-intro-bottom p{color:#66665e;max-width:540px}.portfolio-intro-bottom .eyebrow{white-space:nowrap}.portfolio-gallery{background:var(--ink);color:var(--paper);padding-top:40px;padding-bottom:30px}.portfolio-gallery-heading{border-bottom:1px solid #66665f;justify-content:space-between;align-items:center;gap:20px;padding-bottom:22px;display:flex}.coming-soon{border:1px solid var(--orange);color:var(--orange);letter-spacing:.1em;padding:6px 12px;font-size:.75rem}.portfolio-empty{grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;min-height:350px;padding:58px 0;display:grid}.portfolio-empty-word{font-family:var(--display);letter-spacing:-.03em;color:#0000;-webkit-text-stroke:1px #66665f;font-size:clamp(6rem,12vw,13rem);font-weight:600;line-height:.9}.portfolio-empty-copy .line-marker{width:42px;margin-bottom:25px;display:block}.portfolio-empty-copy h2{font-size:clamp(3.4rem,5.4vw,5.8rem)}.portfolio-empty-copy p{color:#bdbdb5;max-width:390px;margin-top:24px}.portfolio-gallery-bottom{letter-spacing:.08em;border-top:1px solid #66665f;justify-content:space-between;align-items:center;gap:20px;padding-top:22px;font-size:.75rem;display:flex}.portfolio-gallery-bottom .art-square{background:var(--orange)}.portfolio-contact{grid-template-columns:1.35fr 1fr;align-items:center;gap:60px;display:grid}.portfolio-contact h2{margin-top:24px}.portfolio-contact>div:last-child p{color:#66665e;margin-bottom:25px}.portfolio-home-link{border-bottom:1px solid var(--ink);width:max-content;margin-top:23px;padding-bottom:5px;font-size:.875rem;display:block}@media (width>=701px) and (width<=1000px){.header nav{gap:23px}.nav-contact{gap:22px;padding:12px 16px}.portfolio-intro-bottom{flex-direction:column;align-items:flex-start;gap:18px}.portfolio-empty{gap:35px}.portfolio-empty-word{font-size:12vw}.portfolio-contact{gap:35px}}@media (width<=700px){.portfolio-intro{padding-top:27px;padding-bottom:35px}.breadcrumbs{margin-bottom:32px}.portfolio-title-row{align-items:flex-start;position:relative}.portfolio-title-row h1{font-size:clamp(3.5rem,12.8vw,5.6rem)}.portfolio-title-row .eyebrow{gap:8px;margin-bottom:22px;font-size:.65rem}.portfolio-intro-bottom{flex-direction:column;align-items:flex-start;gap:22px;margin-top:28px;padding-top:20px}.portfolio-intro-bottom p{font-size:1rem}.portfolio-intro-bottom .eyebrow{white-space:normal;font-size:.65rem}.portfolio-gallery{padding-top:27px;padding-bottom:24px}.portfolio-gallery-heading .eyebrow{font-size:.7rem}.coming-soon{padding:5px 9px;font-size:.65rem}.portfolio-empty{grid-template-columns:1fr;gap:32px;min-height:0;padding:35px 0 40px}.portfolio-empty-word{font-size:clamp(5rem,23vw,9rem)}.portfolio-empty-copy h2{font-size:3.5rem}.portfolio-empty-copy p{max-width:340px;font-size:1rem}.portfolio-gallery-bottom{font-size:.65rem}.portfolio-contact{grid-template-columns:1fr;gap:30px}.portfolio-contact .eyebrow{font-size:.7rem}.portfolio-contact h2{font-size:3.5rem}.portfolio-contact>div:last-child p{margin-bottom:22px}}.service-strip{--strip-gap:clamp(28px, 4vw, 64px);background:var(--ink);color:var(--paper);font-family:var(--display);letter-spacing:.025em;padding:21px 0;font-size:1.5rem;position:relative;overflow:hidden}.service-strip-track{width:max-content;animation:36s linear infinite service-strip-right;display:flex}.service-strip-group{justify-content:space-around;align-items:center;gap:var(--strip-gap);min-width:100vw;padding:0 calc(var(--strip-gap) / 2);flex:none;display:flex}.service-strip-group span{white-space:nowrap}.service-strip-divider{background:var(--orange);opacity:.65;flex:0 0 1px;width:1px;height:18px}.service-strip.is-paused .service-strip-track{animation-play-state:paused}.service-strip-toggle{background:var(--ink);color:#b7b7ae;cursor:pointer;border:0;place-items:center;width:40px;height:40px;padding:0;display:grid;position:absolute;inset:50% 12px auto auto;transform:translateY(-50%)}.service-strip-toggle:hover,.service-strip-toggle:focus-visible{color:var(--orange)}.service-strip-toggle:focus-visible{outline-offset:0}.service-strip-toggle span{border-inline:2px solid;width:10px;height:12px}.service-strip-toggle[aria-pressed=true] span{border:0;border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:9px solid;width:0;height:0}@keyframes service-strip-right{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (hover:hover){.service-strip:hover .service-strip-track{animation-play-state:paused}}@media (width<=700px){.service-strip{padding:18px 0;font-size:1.2rem}.service-strip-divider{height:14px}.service-strip-toggle{right:6px}}@media (prefers-reduced-motion:reduce){.service-strip-track{width:auto;animation:none}.service-strip-group{flex-wrap:wrap;justify-content:center;gap:12px 20px;width:100%;min-width:0;padding:0 6%}.service-strip-group[aria-hidden=true],.service-strip-toggle{display:none}}.contact-map{border:1px solid var(--line);background:#e8e6df;width:100%;margin-top:18px}.contact-map iframe{border:0;width:100%;height:300px;display:block}.quick-contacts{right:max(24px, env(safe-area-inset-right));bottom:max(24px, env(safe-area-inset-bottom));z-index:20;flex-direction:column;gap:12px;display:flex;position:fixed}.quick-contact{border-radius:50%;place-items:center;width:54px;height:54px;transition:transform .2s,box-shadow .2s;display:grid;position:relative;box-shadow:0 3px 12px #1c1c1b26}.quick-contact:hover{transform:translateY(-3px);box-shadow:0 5px 18px #1c1c1b30}.quick-contact svg{width:25px;height:25px}.quick-contact-phone{background:var(--orange);color:var(--ink)}.quick-contact-whatsapp{color:#fff;background:#128c4e}.quick-contact-label{background:var(--ink);color:var(--paper);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;padding:6px 12px;font-size:.8rem;line-height:1.5;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;right:calc(100% + 10px);transform:translate(4px)}.quick-contact:focus-visible .quick-contact-label{opacity:1;visibility:visible;transform:translate(0)}footer{padding-bottom:150px}@media (hover:hover){.quick-contact:hover .quick-contact-label{opacity:1;visibility:visible;transform:translate(0)}}@media (width<=700px){.contact-map iframe{height:280px}.quick-contacts{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));gap:10px}.quick-contact{width:48px;height:48px}.quick-contact svg{width:23px;height:23px}footer{padding-bottom:135px}}
