:root{--yellow:#ffdc00;--ink:#17191b;--muted:#666a6e;--line:#dedfe0;--paper:#f5f6f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white;font-size:16px;line-height:1.65}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}a{color:inherit}button,a{touch-action:manipulation}img{display:block;max-width:100%}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #2472da;outline-offset:5px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{height:98px;display:flex;align-items:center;justify-content:space-between;position:relative}.brand{display:flex;align-items:center;gap:15px;text-decoration:none;font-size:15px;line-height:1.15;font-weight:900;letter-spacing:.035em}.brand>span:last-child b{color:#888}.brand-number{display:flex;align-items:center;background:var(--yellow);height:58px;padding:0 10px;font-size:31px;font-weight:900;letter-spacing:-2px;transform:skew(-5deg)}.brand-number span{font-size:12px;align-self:flex-start;margin-top:10px;letter-spacing:0}.brand img{object-fit:contain;width:68px;height:68px}.header-right{display:flex;align-items:center;gap:35px}.header-phone{font-size:16px;font-weight:700;text-decoration:none}.menu-toggle{border:0;background:var(--ink);width:52px;height:48px;border-radius:4px;display:grid;place-content:center;gap:7px}.menu-toggle span{width:23px;height:2px;background:var(--yellow);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)}nav{position:absolute;right:0;top:85px;width:310px;background:white;padding:20px;border:1px solid var(--line);box-shadow:0 18px 35px #0002}nav a{display:block;padding:13px 17px;text-decoration:none;font-weight:700}nav a:hover,nav a[aria-current]{background:var(--yellow)}.skip{position:absolute;top:-100px}.skip:focus{top:10px;left:10px;z-index:100;background:white;padding:12px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:60px;padding-top:52px;padding-bottom:50px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase;display:flex;gap:10px;align-items:center}.eyebrow>span{display:block;width:25px;height:3px;background:var(--yellow)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(42px,4.7vw,66px);font-weight:900;margin:27px 0 24px}h1 em{font-style:normal;display:inline;background:linear-gradient(transparent 65%,var(--yellow) 65%,var(--yellow) 92%,transparent 92%)}h2{font-size:clamp(30px,3vw,43px);margin:20px 0 25px}h3{font-size:23px}p{color:var(--muted);margin-bottom:22px}.hero-copy>p{font-size:19px;max-width:450px;line-height:1.65}.actions{display:flex;gap:12px;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 25px;min-height:52px;border:1px solid transparent;border-radius:3px;text-decoration:none;font-weight:700;font-size:15px;line-height:1.4}.yellow{background:var(--yellow);color:var(--ink)}.outline{border-color:var(--ink);background:white}.dark{background:var(--ink);color:white}.button:hover{filter:brightness(.95)}.hero-note{font-size:14px;margin-top:28px;color:var(--muted)}.hero-visual{height:480px;position:relative;background:var(--yellow);overflow:hidden;border-radius:3px}.hero-visual>img{width:100%;height:100%;object-fit:cover}.photo-label{position:absolute;left:0;bottom:0;padding:14px 20px;background:var(--yellow);font-size:12px;letter-spacing:.1em;font-weight:800}.hero-type{padding:50px 30px;display:flex;flex-direction:column;justify-content:center;height:100%}.hero-type span{font-size:36px;font-weight:900;line-height:1.1;letter-spacing:-2px}.hero-type strong{font-size:55px;letter-spacing:-3px;margin:8px 0 20px}.hero-type small{font-size:12px;letter-spacing:.13em}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0}.stats>div{padding:0 35px;border-right:1px solid var(--line)}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{font-size:43px;letter-spacing:-2px;line-height:1.1}.stats strong span{color:#aa9200}.stats p{margin:10px 0 0;font-size:14px}.section{padding-top:86px;padding-bottom:86px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.lead{font-size:23px;color:var(--ink);line-height:1.5}.services-teaser{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.text-link{font-size:15px;font-weight:700;text-underline-offset:7px;white-space:nowrap;margin-bottom:28px}.service-links{border-top:1px solid #d3d5d7}.service-links a{display:grid;grid-template-columns:55px 1.1fr 1fr 30px;align-items:center;gap:15px;text-decoration:none;padding:25px 0;border-bottom:1px solid #d3d5d7}.service-links a>span{font-size:15px;color:#73777b}.service-links h3{margin:0;font-size:23px}.service-links small{font-size:14px;color:var(--muted)}.service-links b{font-size:25px;font-weight:400}.service-links a:hover h3{text-decoration:underline;text-decoration-color:#c1a600;text-underline-offset:5px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{border:0;padding:0;background:var(--paper);position:relative;text-align:left;overflow:hidden;border-radius:3px}.gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;font-size:14px;font-weight:700;line-height:1.4}.gallery-item b{font-size:22px}.gallery-fallback{margin:24px 0 0;font-size:15px}.contact{background:var(--yellow)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{color:#424440;max-width:430px}.contact-phone{font-size:38px;letter-spacing:-1.5px;font-weight:800;text-decoration:none}.contact-social{display:flex;gap:25px;margin-top:20px;font-size:15px;font-weight:700}.location{background:#fff;padding:30px;border-radius:3px}.location h3{font-size:23px;margin:0 0 12px}.location iframe{width:100%;height:260px;border:0;margin:8px 0 15px;background:var(--paper)}.location .text-link{white-space:normal}.location .small{font-size:13px;margin:23px 0 0;color:#6e7275}.page-intro{padding-top:65px;padding-bottom:60px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:850px}.page-intro>p{max-width:580px;font-size:20px;margin-bottom:0}.service-detail{display:grid;grid-template-columns:1fr 3fr;gap:30px;padding:58px 0;border-bottom:1px solid var(--line);scroll-margin-top:120px}.service-detail>div{max-width:780px}.big-number{font-size:80px;line-height:1;font-weight:900;letter-spacing:-5px;color:#d8ba00}.service-detail p{font-size:18px;line-height:1.85;margin:0}.service-detail h2{margin:14px 0 23px}.service-detail .eyebrow{color:var(--muted);font-size:12px}.callout{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--yellow);padding:40px;margin-top:60px;margin-bottom:70px}.callout h2{font-size:31px;margin:0 0 15px}.callout p{margin:0;color:#424440}.callout .button{flex-shrink:0}.gallery-section{padding-top:35px;padding-bottom:70px}.gallery-end{padding:65px 20px;text-align:center;background:var(--paper);margin-top:30px}.gallery-end h2{font-size:31px}.gallery-end p{max-width:560px;margin:0 auto 25px}footer{background:var(--ink);color:white;padding:55px 0 24px}footer .brand{width:max-content}footer .brand-number{color:var(--ink)}footer p{color:#b5b7b9;font-size:14px;margin-top:23px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:45px;padding-bottom:30px}footer h3{font-size:15px;letter-spacing:0;margin:5px 0 20px}footer div>a:not(.brand){display:block;text-decoration:none;font-size:14px;margin-bottom:10px}footer div>a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #444;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#bbb}.footer-bottom>a{font-size:12px!important}.mobile-contact{display:none}dialog{max-width:95vw;width:1050px;padding:55px 20px 15px;border:0;background:#17191b;color:#fff;border-radius:6px}dialog::backdrop{background:#000d}dialog>img{width:100%;max-height:75vh;object-fit:contain}.lightbox-close{position:absolute;top:2px;right:12px;font-size:34px;background:none;color:white;border:0;width:48px;height:48px}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:20px}.lightbox-bottom p{color:white;font-size:14px;margin:0;text-align:center}.lightbox-bottom button{background:var(--yellow);border:0;padding:10px;font-size:14px;border-radius:3px}
@media(min-width:1600px){.hero{padding-top:65px;padding-bottom:65px}.hero-visual{height:540px}}
@media(max-width:950px){.wrap{width:calc(100% - 48px)}.hero{gap:30px}.hero-visual{height:420px}h1{font-size:46px}.hero-copy>p{font-size:17px}.actions{flex-wrap:wrap}.about{gap:40px}.contact-grid{gap:35px}.service-links a{grid-template-columns:40px 1fr 1fr 20px}.service-links h3{font-size:21px}.callout{align-items:flex-start;flex-direction:column}.gallery-grid{grid-template-columns:repeat(2,1fr)}.home-gallery .gallery-item:last-child{display:none}.hero-type strong{font-size:39px}.hero-type span{font-size:28px}}
@media(max-width:620px){body{padding-bottom:64px}.wrap{width:calc(100% - 36px)}.header-inner{height:78px}.brand{font-size:12px;gap:10px}.brand-number{height:46px;font-size:27px}.brand img{width:53px;height:53px}.header-phone{display:none}.menu-toggle{width:46px;height:44px}nav{top:70px;width:min(330px,calc(100vw - 36px))}.hero{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:30px}.eyebrow{font-size:11px;letter-spacing:.1em}h1{font-size:43px;line-height:1.1;margin:23px 0 20px}.hero-copy>p{font-size:17px;max-width:100%;margin-bottom:0}.actions{flex-wrap:nowrap;gap:10px;margin-top:25px}.button{font-size:14px;padding:13px 17px;min-height:50px}.actions .button{flex:1}.hero-note{font-size:13px;margin-top:18px}.hero-visual{height:290px}.photo-label{font-size:10px;padding:11px 16px}.hero-type{padding:30px}.hero-type strong{font-size:48px}.hero-type span{font-size:29px}.stats{padding:24px 0}.stats>div{padding:0 12px}.stats strong{font-size:27px;letter-spacing:-1px;white-space:nowrap}.stats p{font-size:12px;line-height:1.4;margin-top:7px}.section{padding-top:50px;padding-bottom:50px}.about{grid-template-columns:1fr;gap:5px}h2{font-size:32px;line-height:1.15;margin:15px 0 24px}.lead{font-size:21px}.about p:last-child{margin-bottom:0}.section-heading{display:block;margin-bottom:20px}.section-heading h2{margin-bottom:20px}.text-link{display:inline-block;margin:0 0 12px}.service-links a{grid-template-columns:30px 1fr 20px;gap:10px;padding:23px 0}.service-links h3{font-size:22px}.service-links small{grid-column:2;grid-row:2;font-size:13px}.service-links b{grid-column:3;grid-row:1/3}.gallery-grid{gap:10px}.gallery-item>span{font-size:12px;padding:10px;min-height:54px}.gallery-fallback{font-size:14px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-phone{font-size:35px}.location{padding:24px}.location iframe{height:230px}.page-intro{padding:40px 0}.page-intro>p{font-size:18px}.service-detail{grid-template-columns:1fr;gap:18px;padding:38px 0}.big-number{font-size:48px;letter-spacing:-2px}.service-detail h2{font-size:31px}.service-detail p{font-size:16px;line-height:1.8}.callout{padding:26px;margin-top:40px;margin-bottom:45px}.callout h2{font-size:28px}.gallery-section{padding-top:24px;padding-bottom:40px}.gallery-end{padding:35px 20px}.gallery-end h2{font-size:27px}footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:first-child p{margin-bottom:0}.footer-bottom{flex-wrap:wrap;gap:10px}.footer-bottom span:nth-child(2){display:none}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1.6fr 1fr;background:var(--ink);border-top:1px solid #333;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{padding:17px 9px;text-align:center;text-decoration:none;font-size:14px;font-weight:700;color:#fff}.mobile-contact a:first-child{background:var(--yellow);color:var(--ink)}.lightbox-bottom{flex-wrap:wrap}.lightbox-bottom p{order:-1;width:100%}dialog{padding:50px 10px 15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

