@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');
:root{--ink:#102334;--deep:#0a1926;--blue:#17344a;--orange:#e96937;--paper:#f4f5f2;--line:#cbd2d2;--muted:#52616b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',system-ui,sans-serif;line-height:1.75}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.eyebrow{font:700 .78rem/1.4 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--orange)}.header{background:var(--deep);color:white;position:relative;z-index:5}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.2rem;letter-spacing:.04em;white-space:nowrap}.logo-image{width:42px;height:42px;object-fit:contain;filter:brightness(0) invert(1)}.logo small{display:block;font:600 .61rem system-ui;letter-spacing:.2em;color:#aebbc4}.nav{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:600}.nav a:hover,.footer a:hover{color:var(--orange)}.nav .nav-contact{padding:11px 20px;background:var(--orange);color:#101e29}.nav .nav-contact:hover{color:#fff;background:#f47b48}.menu{display:none;background:none;color:white;border:1px solid #738391;padding:8px 12px;cursor:pointer}.hero{background:var(--deep);color:white;position:relative;min-height:630px;display:flex;align-items:center;overflow:hidden}.hero:before{content:'';position:absolute;inset:0 0 0 42%;background:linear-gradient(90deg,var(--deep) 0%,rgba(10,25,38,.35) 47%,rgba(10,25,38,.1)),url('/photos/IMG_3092.jpeg') center/cover}.hero:after{content:'';position:absolute;inset:auto 0 0;height:80px;background:linear-gradient(transparent,var(--deep))}.hero .wrap{position:relative;z-index:1;padding:90px 0}.hero h1{font-size:clamp(2.7rem,5vw,5.1rem);line-height:1.32;letter-spacing:-.04em;margin:21px 0 24px;font-weight:800}.hero h1 em{color:var(--orange);font-style:normal}.hero p{max-width:570px;color:#d6dfe5;font-size:1.04rem;line-height:2}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-weight:700;font-size:.94rem;border:1px solid currentColor;transition:.2s}.btn.orange{background:var(--orange);border-color:var(--orange);color:#102334}.btn.orange:hover{background:#fa8250}.btn.ghost{color:white;border-color:#9caab4}.btn.ghost:hover{background:#ffffff20}.btn.dark{background:var(--ink);color:white;border-color:var(--ink)}.section{padding:100px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:38px}.section h2,.page-hero h1{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.4;letter-spacing:-.03em;margin:12px 0}.lead{font-size:1.08rem;color:var(--muted);max-width:740px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.intro-grid img{width:100%;height:480px;object-fit:cover}.side-label{border-left:4px solid var(--orange);padding-left:18px;font-size:1.25rem;font-weight:700;line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#b4c0c6;border:1px solid #b4c0c6}.service{background:white;min-height:280px;padding:30px;display:flex;flex-direction:column}.service .num{font:700 .85rem system-ui;color:var(--orange)}.service h3{margin:auto 0 10px;font-size:1.35rem}.service p{color:var(--muted);margin:0;font-size:.94rem}.dark-section{background:var(--deep);color:white}.dark-section .lead{color:#b9c9d1}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work{background:#193349;overflow:hidden}.work img{width:100%;height:270px;object-fit:cover}.work-body{padding:22px}.work h3{font-size:1.2rem;margin:8px 0}.work p{color:#becbd2;font-size:.92rem;margin:0}.work .eyebrow{font-size:.7rem}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.process-item{border-top:2px solid var(--orange);padding-top:20px}.process-item strong{display:block;font:700 1.7rem system-ui;color:var(--orange)}.process-item h3{margin:8px 0}.process-item p{color:var(--muted);font-size:.9rem}.cta{background:var(--orange);padding:55px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:28px}.cta h2{font-size:clamp(1.5rem,2.8vw,2.35rem);margin:0}.cta p{margin:7px 0 0}.cta .btn{white-space:nowrap}.footer{background:#07141f;color:#c7d0d6;padding:65px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer h3{color:#fff;margin:0 0 18px}.footer a{display:block;margin:8px 0}.footer small{display:block;border-top:1px solid #344650;padding-top:22px;margin-top:55px;color:#8fa0aa}.page-hero{background:var(--deep);color:#fff;padding:80px 0 65px;position:relative;overflow:hidden}.page-hero::after{content:none;display:none}.page-hero p{max-width:780px;color:#c3d0d9}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.detail-list{border-top:1px solid var(--line)}.detail-row{padding:28px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:185px 1fr;gap:25px}.detail-row h3{margin:0;font-size:1.17rem}.detail-row p{margin:0;color:var(--muted)}.photo-block{width:100%;height:420px;object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.gallery article{background:white}.gallery img{width:100%;height:340px;object-fit:cover}.gallery div{padding:22px}.gallery h3{margin:0 0 8px}.gallery p{margin:0;color:var(--muted)}.company-table{width:100%;border-collapse:collapse;background:#fff}.company-table th,.company-table td{border-bottom:1px solid var(--line);padding:20px 24px;text-align:left;vertical-align:top}.company-table th{width:210px;background:#e9eeed}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px}.phone-card{padding:40px;background:var(--deep);color:white}.phone-card a{font:800 clamp(1.65rem,3vw,2.7rem) system-ui;color:white}.phone-card p{color:#bac8d0}.note{font-size:.88rem;color:var(--muted)}.pill{display:inline-block;border:1px solid var(--line);padding:8px 14px;margin:5px 7px 5px 0;font-size:.86rem}.breadcrumb{font-size:.8rem;color:#a6b8c2}.floating{display:none}@media(max-width:900px){.nav{gap:15px}.nav a{font-size:.78rem}.service-grid{grid-template-columns:repeat(2,1fr)}.intro-grid{gap:35px}.work-grid{gap:12px}.work img{height:210px}}@media(max-width:700px){.wrap{width:min(100% - 32px,1180px)}.header-inner{height:66px}.logo{font-size:1rem}.menu{display:block}.nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--deep);padding:18px 24px 28px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 20px #0005}.nav.open{display:flex}.nav a{padding:13px 0;border-top:1px solid #364a57;font-size:1rem}.nav .nav-contact{text-align:center;margin-top:15px}.hero{min-height:610px;align-items:flex-end}.hero:before{inset:0;background:linear-gradient(0deg,var(--deep) 10%,rgba(10,25,38,.65) 58%,rgba(10,25,38,.13)),url('/photos/IMG_3092.jpeg') center/cover}.hero .wrap{padding:90px 0 55px}.hero h1{font-size:2.65rem}.hero p{font-size:.94rem}.section{padding:68px 0}.section-head{display:block}.intro-grid,.two-col,.contact-grid{grid-template-columns:1fr;gap:30px}.intro-grid img,.photo-block{height:300px}.service-grid,.work-grid,.gallery{grid-template-columns:1fr}.service{min-height:230px}.work img,.gallery img{height:230px}.process{grid-template-columns:repeat(2,1fr)}.cta .wrap{display:block}.cta .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:span 2}.page-hero{padding:55px 0 45px}.detail-row{grid-template-columns:1fr;gap:4px}.company-table th,.company-table td{display:block;width:100%;padding:12px 16px}.company-table th{border-bottom:0}.floating{display:block;position:fixed;bottom:14px;right:14px;background:var(--orange);color:var(--deep);padding:12px 18px;font-size:.9rem;font-weight:800;z-index:10;box-shadow:0 5px 18px #0005}body{padding-bottom:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Photo-led direction */
.hero-new{min-height:min(780px,90vh);display:block;background:#0b1a28}.hero-new:before,.hero-new:after{display:none}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#07151ff5 0%,#07151fcb 31%,#07151f30 75%),linear-gradient(0deg,#07151f7a,transparent 35%),url('/photos/IMG_3092.jpeg') center 52%/cover}.hero-layout{min-height:min(780px,90vh);display:flex;align-items:center;position:relative}.hero-new .wrap{padding:85px 0}.hero-copy{max-width:670px}.hero-new h1{font-size:clamp(3.7rem,6.7vw,7.8rem);line-height:1.18;margin:25px 0 34px;letter-spacing:-.07em}.hero-new h1 em{color:#fff;display:inline-block;border-bottom:8px solid var(--orange);padding-bottom:10px}.hero-new p{font-size:1.13rem;max-width:530px}.hero-vertical{position:absolute;right:0;bottom:100px;writing-mode:vertical-rl;font:700 .65rem system-ui;letter-spacing:.24em;color:#e1e8ec}.hero-index{position:absolute;right:2.6vw;bottom:25px;font:.7rem system-ui;letter-spacing:.18em;color:#e1e8ec}.photo-ribbon{display:grid;grid-template-columns:repeat(3,1fr);background:#0b1a28;padding:10px;gap:10px}.ribbon-card{height:260px;position:relative;overflow:hidden}.ribbon-card img{height:100%;width:100%;object-fit:cover;filter:saturate(.85);transition:transform .45s}.ribbon-card:hover img{transform:scale(1.035)}.ribbon-card:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#07151fbd)}.ribbon-card span{position:absolute;bottom:18px;left:22px;z-index:1;color:#fff;font-weight:700;font-size:1.05rem}.ribbon-card b{color:var(--orange);font:700 .83rem system-ui;margin-right:10px}.editorial-intro{background:#f4f5f2}.editorial-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw}.editorial-intro h2{font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.5}.editorial-intro p{max-width:560px}.text-link{display:inline-flex;gap:35px;border-bottom:2px solid var(--orange);padding:10px 0;font-weight:700;margin-top:20px}.text-link span{color:var(--orange);font-size:1.1rem}.feature-story{display:grid;grid-template-columns:58% 42%;min-height:660px;background:#cbd6d9}.story-photo img{height:100%;width:100%;object-fit:cover}.story-copy{padding:8vw 6vw;align-self:center;position:relative}.story-number{position:absolute;right:8%;top:7%;font:800 7rem system-ui;color:#b6c7cd}.story-copy h2{font-size:clamp(2.3rem,3.4vw,4rem);line-height:1.4;position:relative}.story-copy p{max-width:480px}.scene-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:280px 280px;gap:12px}.scene-grid figure{margin:0;position:relative;overflow:hidden}.scene-grid img{width:100%;height:100%;object-fit:cover}.scene-large{grid-row:span 2}.scene-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:45px 22px 18px;background:linear-gradient(transparent,#061521dd);color:white;font-size:1.12rem;font-weight:700}.scene-grid figcaption span{display:block;color:#ff966d;font:.7rem system-ui;letter-spacing:.15em;margin-bottom:6px}.gallery-more{text-align:center;margin-top:34px}.gallery-teaser .section-head{margin-bottom:30px}.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #bbc7c7;border-bottom:1px solid #bbc7c7;margin:40px 0 35px}.cap-grid article{padding:35px 30px;border-right:1px solid #bbc7c7}.cap-grid article:first-child{padding-left:0}.cap-grid article:last-child{border:0}.cap-grid span{font:700 .9rem system-ui;color:var(--orange)}.cap-grid h3{font-size:1.35rem}.cap-grid p{color:var(--muted)}
.works-hero{background:linear-gradient(90deg,#081b29f0,#081b2990 55%,#081b2940),url('/photos/IMG_3068.jpeg') center 50%/cover;min-height:350px}.works-hero:after{display:none}.works-hero h1{font-size:clamp(2.7rem,5.5vw,5.5rem)}.work-chapter{padding:100px 0;background:#f4f5f2}.chapter-dark{background:#0b1d2a;color:#fff}.chapter-head{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end;margin-bottom:35px;border-top:2px solid var(--orange);padding-top:25px}.chapter-head h2{font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.35;margin:10px 0 0}.chapter-head p{color:var(--muted);font-size:1.03rem}.chapter-dark .chapter-head p{color:#b9c9d1}.photo-essay{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.photo-essay figure{margin:0;position:relative;overflow:hidden;background:#26394a}.photo-essay img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo-essay figure:hover img,.craft-grid figure:hover img{transform:scale(1.035)}.photo-essay figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 15px 12px;background:linear-gradient(transparent,#07141fc9);color:#fff;font-weight:700;font-size:.88rem}.essay-main{grid-column:span 8;height:480px}.essay-portrait{grid-column:span 4;height:480px}.essay-half{grid-column:span 6;height:300px}.essay-third{grid-column:span 4;height:320px}.essay-wide{grid-column:span 12;height:370px}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.craft-grid figure{margin:0;overflow:hidden;background:#d9e0e0}.craft-grid img{width:100%;height:360px;object-fit:cover;transition:transform .5s}.craft-grid figcaption{padding:14px 6px;font-weight:700}.work-chapter .note{margin-top:25px}
@media(max-width:900px){.hero-new,.hero-layout{min-height:670px}.hero-photo{background-position:65% center}.photo-ribbon .ribbon-card{height:210px}.feature-story{min-height:520px}.story-copy{padding:6vw 4vw}.story-number{font-size:5rem}}
@media(max-width:700px){.hero-new{min-height:680px}.hero-layout{min-height:680px;align-items:end}.hero-photo{background:linear-gradient(0deg,#07151ff5 0%,#07151fb8 42%,#07151f10 100%),url('/photos/IMG_3092.jpeg') 61% center/cover}.hero-new .wrap{padding:90px 0 65px}.hero-new h1{font-size:clamp(3.25rem,11vw,4.7rem);line-height:1.25}.hero-new h1 em{border-bottom-width:5px}.hero-new p{font-size:1rem}.hero-vertical{display:none}.hero-index{bottom:15px;right:16px}.photo-ribbon{padding:6px;gap:6px;grid-template-columns:1fr 1fr}.ribbon-card{height:190px!important}.ribbon-card:first-child{grid-column:span 2;height:220px!important}.ribbon-card span{font-size:.9rem;left:12px;bottom:11px}.editorial-grid{grid-template-columns:1fr;gap:8px}.editorial-intro h2{font-size:2.3rem}.feature-story{display:block}.story-photo{height:350px}.story-copy{padding:55px 24px 65px}.story-number{top:35px}.scene-grid{grid-template-columns:1fr 1fr;grid-template-rows:320px 190px;gap:7px}.scene-large{grid-column:span 2;grid-row:auto}.scene-grid figcaption{font-size:.85rem;padding:30px 10px 10px}.cap-grid{display:block}.cap-grid article,.cap-grid article:first-child{padding:25px 0;border-right:0;border-bottom:1px solid #bbc7c7}.cap-grid article:last-child{border-bottom:0}.works-hero{min-height:320px;background-position:62% center}.work-chapter{padding:65px 0}.chapter-head{grid-template-columns:1fr;gap:0}.photo-essay{gap:7px}.essay-main,.essay-portrait{grid-column:span 12;height:330px}.essay-half,.essay-third{grid-column:span 6;height:215px}.essay-third:last-child{grid-column:span 12;height:230px}.essay-wide{height:230px}.photo-essay figcaption{font-size:.73rem;padding:26px 7px 7px}.craft-grid{grid-template-columns:1fr 1fr;gap:7px}.craft-grid figure:first-child{grid-column:span 2}.craft-grid img{height:260px}.craft-grid figure:first-child img{height:300px}.craft-grid figcaption{font-size:.83rem}}
.photo-essay figure,.craft-grid figure{position:relative}.photo-expand{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:zoom-in}.photo-expand:focus-visible{outline:4px solid var(--orange);outline-offset:-4px}.photo-essay figcaption{pointer-events:none}.photo-dialog{border:0;padding:0;background:#07141f;color:white;max-width:min(1100px,96vw);max-height:94vh;box-shadow:0 20px 70px #000a}.photo-dialog::backdrop{background:#020910e9}.photo-dialog img{display:block;max-width:100%;max-height:82vh;width:auto;margin:auto;object-fit:contain}.photo-dialog p{margin:0;padding:10px 18px;font-weight:700}.photo-close{position:absolute;top:10px;right:10px;background:#07141fea;border:1px solid #fff;color:#fff;padding:8px 12px;cursor:pointer;z-index:2}
/* Heavy-equipment editorial cover */
.hero-new{background:#071722}.hero-new .hero-photo{left:45%;background:linear-gradient(90deg,#07172240,transparent 35%),url('/photos/IMG_4691.jpeg') 50% 48%/cover}.hero-new .hero-layout{z-index:1}.hero-new .hero-copy{max-width:610px}.hero-new .hero-copy p{max-width:450px}.hero-new .hero-vertical{right:5px}.hero-new:after{display:block;height:90px;inset:auto 0 0;background:linear-gradient(transparent,#07172270)}
@media(max-width:900px){.hero-new .hero-photo{left:38%;background-position:50% 44%}.hero-new .hero-copy{max-width:550px}}
@media(max-width:700px){.hero-new .hero-photo{left:0;background:linear-gradient(0deg,#071722f8 0%,#071722c2 40%,#0717220a 86%),url('/photos/IMG_4691.jpeg') 50% 33%/cover}.hero-new .hero-copy{max-width:none}.hero-new .hero-copy p{max-width:100%}}
/* Industrial proof-led homepage */
.impact-hero{display:grid;grid-template-columns:40% 60%;min-height:680px;background:#071722;color:#fff}.impact-copy{display:flex;align-items:center;position:relative;z-index:1;background:#071722}.impact-copy-inner{padding:72px clamp(28px,4vw,78px) 44px max(32px,calc((100vw - 1180px)/2));width:100%}.impact-copy h1{font-size:clamp(3.2rem,4.8vw,5.4rem);line-height:1.2;letter-spacing:-.065em;margin:31px 0 34px;white-space:nowrap}.impact-copy h1 em{font-style:normal;color:#fff;border-bottom:7px solid var(--orange);padding-bottom:9px}.impact-copy p{font-size:1.03rem;color:#d7e0e4;line-height:1.9;max-width:470px}.impact-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:30px 0 45px}.impact-actions .btn{gap:25px}.impact-contact{font-weight:700;border-bottom:1px solid #9fadb5;padding:10px 0;white-space:nowrap}.impact-contact span{color:var(--orange)}.impact-capabilities{border-top:1px solid #375061;display:flex;gap:10px;flex-wrap:wrap;padding-top:18px;font-size:.78rem;font-weight:700;color:#b8c8d1}.impact-capabilities span:not(:last-child):after{content:'/';color:var(--orange);padding-left:10px}.impact-photos{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:5px;padding:5px 5px 5px 0;min-height:680px}.impact-photos figure{margin:0;min-width:0;min-height:0;position:relative;overflow:hidden}.impact-main{grid-row:span 2}.impact-photos img{width:100%;height:100%;object-fit:cover}.impact-main img{object-position:47% 50%}.impact-indoor img{object-position:52% 37%}.impact-piping img{object-position:46% 55%}.impact-photos figcaption{position:absolute;bottom:0;left:0;right:0;padding:40px 18px 13px;background:linear-gradient(transparent,#061520c7);font:.68rem system-ui;letter-spacing:.14em;color:#fff}.proof-intro{background:#e8edec;padding:110px 0}.proof-heading{display:grid;grid-template-columns:.25fr 1fr .8fr;gap:35px;align-items:start}.proof-heading h2{font-size:clamp(2.7rem,4.5vw,5.2rem);line-height:1.32;margin:-15px 0 0;letter-spacing:-.055em}.proof-heading p{font-size:1.08rem;line-height:2.1;margin:0;max-width:430px}.proof-case{display:grid;grid-template-columns:56% 44%;min-height:620px;background:#fff}.proof-case.proof-reverse{grid-template-columns:44% 56%;background:#102839;color:#fff}.proof-reverse .proof-image{order:2}.proof-piping{background:#d5e0e2}.proof-image{min-height:500px}.proof-image img{width:100%;height:100%;object-fit:cover}.proof-reverse .proof-image img{object-position:50% 35%}.proof-piping .proof-image img{object-position:50% 55%}.proof-text{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:75px clamp(35px,7vw,110px)}.proof-text h2{font-size:clamp(2.5rem,4vw,4.8rem);line-height:1.35;letter-spacing:-.045em;margin:22px 0}.proof-text p{max-width:450px;line-height:2;font-size:1.04rem}.proof-reverse .proof-text p{color:#d5e0e5}.proof-more{background:#f4f5f2}.proof-more h2{font-size:clamp(2.5rem,4vw,4.4rem)}.proof-services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b9c8cb;margin:40px 0}.proof-services article{padding:27px 25px;border-right:1px solid #b9c8cb}.proof-services article:first-child{padding-left:0}.proof-services article:last-child{border:0}.proof-services span{color:var(--orange);font-weight:800}.proof-services h3{font-size:1.3rem;margin:12px 0}.proof-services p{color:var(--muted);margin:0}
@media(max-width:1100px){.impact-hero{grid-template-columns:45% 55%}.impact-copy h1{font-size:clamp(2.8rem,4.5vw,4.5rem)}.impact-copy-inner{padding-left:32px}.proof-heading{grid-template-columns:1fr 1fr}.proof-heading .eyebrow{grid-column:span 2}.proof-heading h2{margin:0}}
@media(max-width:700px){.impact-hero{display:flex;flex-direction:column}.impact-copy-inner{padding:45px 24px 35px}.impact-copy h1{font-size:clamp(2.75rem,10.4vw,4.3rem);margin:20px 0 25px}.impact-copy p{font-size:.95rem}.impact-actions{margin:25px 0}.impact-capabilities{font-size:.72rem}.impact-photos{min-height:430px;height:430px;padding:0 5px 5px;grid-template-columns:1.2fr .8fr}.impact-photos figcaption{font-size:.54rem;padding:28px 8px 8px}.proof-intro{padding:65px 0}.proof-heading{display:block}.proof-heading h2{font-size:2.55rem;margin:15px 0}.proof-heading p{font-size:.98rem}.proof-case,.proof-case.proof-reverse{display:flex;flex-direction:column;min-height:0}.proof-reverse .proof-image{order:0}.proof-image{min-height:0;height:350px}.proof-text{padding:48px 24px 55px}.proof-text h2{font-size:2.65rem}.proof-services{display:block}.proof-services article,.proof-services article:first-child{padding:22px 0;border-right:0;border-bottom:1px solid #b9c8cb}.proof-services article:last-child{border:0}}
@media(min-width:1101px){.impact-hero{grid-template-columns:47% 53%}.impact-copy h1{font-size:clamp(3.2rem,4vw,4.7rem)}}
@media(max-width:700px){.impact-copy h1{font-size:clamp(2.45rem,9.5vw,4.3rem)}}
.project-index{background:#e8edec;padding:85px 0}.project-index-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:36px}.project-index h2,.home-projects h2{font-size:clamp(2.2rem,3.6vw,4rem);letter-spacing:-.04em;margin:12px 0 0;line-height:1.35}.project-index-head p{max-width:440px;margin:0;color:#485c69}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-card{position:relative;overflow:hidden;margin:0;background:#102334;color:#fff;min-height:255px}.project-card img{width:100%;height:255px;object-fit:cover;filter:saturate(.85);transition:transform .45s}.project-card:hover img{transform:scale(1.04)}.project-card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#07151fe8);pointer-events:none}.project-card figcaption{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:40px 17px 15px;pointer-events:none}.project-card figcaption span{display:block;color:#ff9d76;font:700 .68rem system-ui;letter-spacing:.11em;margin-bottom:5px}.project-card figcaption strong{font-size:1.02rem;line-height:1.4}.project-index-note{font-size:.82rem;color:#596b73;margin:22px 0 0}.home-projects{background:#0b1d2a;color:#fff;padding:95px 0}.home-projects-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.home-projects .text-link{margin:0;white-space:nowrap}.home-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-project{position:relative;display:block;overflow:hidden;height:290px;background:#253a4a}.home-project img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.home-project:hover img{transform:scale(1.04)}.home-project:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#07151fd9)}.home-project span{position:absolute;left:20px;right:20px;bottom:17px;z-index:1;font-size:1.12rem;font-weight:700}.home-project b{color:#ff996f;font:.8rem system-ui;margin-right:13px}.home-project i{float:right;font-style:normal;color:#ff996f}
@media(max-width:900px){.project-grid{grid-template-columns:repeat(3,1fr)}.home-project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.project-index,.home-projects{padding:60px 0}.project-index-head,.home-projects-head{display:block}.project-index-head p{margin-top:15px}.project-grid,.home-project-grid{grid-template-columns:repeat(2,1fr);gap:7px}.project-card,.project-card img{min-height:0;height:230px}.project-card figcaption{padding:30px 10px 10px}.project-card figcaption strong{font-size:.8rem}.project-card figcaption span{font-size:.58rem}.home-projects .text-link{margin:20px 0 0}.home-project{height:230px}.home-project span{font-size:.8rem;left:10px;right:10px;bottom:12px}.home-project b{display:block;margin-bottom:4px}}
/* Single-image cover */
.cover-hero{height:calc(100svh - 78px);min-height:660px;max-height:900px;background:#071722;color:#fff;position:relative;overflow:hidden}.cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%}.cover-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071722f7 0%,#071722ee 20%,#071722bd 39%,#07172220 73%),linear-gradient(0deg,#071722ae,transparent 40%)}.cover-layout{height:100%;position:relative;z-index:1;display:flex;align-items:end;padding-bottom:clamp(70px,8vh,105px)}.cover-copy{max-width:790px}.cover-kicker{color:#ff936b;font:700 .82rem system-ui;letter-spacing:.2em}.cover-copy h1{font-size:clamp(3.8rem,5.1vw,5.7rem);line-height:1.22;letter-spacing:-.075em;margin:24px 0 25px;font-weight:800;text-shadow:0 2px 20px #07172299}.cover-copy p{font-size:1.15rem;line-height:1.9;color:#e1e9eb;margin:0 0 25px}.cover-tags{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:34px}.cover-tags span{border:1px solid #d8e4e49c;padding:5px 13px;font-size:.85rem;font-weight:700;background:#07172255}.cover-actions{display:flex;gap:12px;flex-wrap:wrap}.cover-actions .btn{min-width:180px}.cover-caption{position:absolute;right:24px;bottom:18px;z-index:1;font:600 .7rem system-ui;letter-spacing:.12em;color:#e0e7e9}
@media(max-width:900px){.cover-copy h1{font-size:clamp(3.1rem,5vw,4.5rem)}.cover-shade{background:linear-gradient(90deg,#071722ef,#071722bc 50%,#07172225),linear-gradient(0deg,#0717229c,transparent 50%)}}
@media(max-width:700px){.cover-hero{height:calc(100svh - 70px);min-height:650px;max-height:850px}.cover-image{object-position:center 44%}.cover-shade{background:linear-gradient(0deg,#071722 0%,#071722ed 26%,#0717228a 53%,#0717220a 88%)}.cover-layout{align-items:end;padding-bottom:65px}.cover-kicker{font-size:.65rem}.cover-copy h1{font-size:clamp(2.35rem,9.2vw,3.5rem);letter-spacing:-.07em;margin:16px 0 18px}.cover-copy p{font-size:.9rem;line-height:1.8;margin-bottom:18px}.cover-tags{gap:6px;margin-bottom:22px}.cover-tags span{font-size:.69rem;padding:4px 8px}.cover-actions .btn{min-width:0;padding:10px 16px;min-height:48px;font-size:.8rem}.cover-caption{right:15px;bottom:12px;font-size:.54rem}}
.cover-image{object-position:center 47%}.top-scenes{background:#071722;color:#fff;padding:42px 0 12px}.top-scenes-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.top-scenes-heading h2{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.3;letter-spacing:-.04em;margin:8px 0 0}.top-scenes .text-link{margin:0;white-space:nowrap}.top-scenes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 8px}.top-scenes-grid a{height:330px;position:relative;overflow:hidden;background:#263946}.top-scenes-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.top-scenes-grid a:hover img{transform:scale(1.04)}.top-scenes-grid a:after{content:'';position:absolute;inset:48% 0 0;background:linear-gradient(transparent,#071722e8)}.top-scenes-grid span{position:absolute;bottom:20px;left:22px;z-index:1;font-size:1.2rem;font-weight:700}.top-scenes-grid small{display:block;color:#ff956e;font:700 .72rem system-ui;letter-spacing:.13em;margin-bottom:4px}
@media(max-width:700px){.cover-image{object-position:68% center}.top-scenes{padding:55px 0 5px}.top-scenes-heading{display:block}.top-scenes .text-link{margin:15px 0 0}.top-scenes-grid{grid-template-columns:1fr 1fr;gap:5px;padding:0 5px}.top-scenes-grid a{height:210px}.top-scenes-grid a:first-child{grid-column:span 2;height:275px}.top-scenes-grid span{font-size:.85rem;bottom:10px;left:10px}.top-scenes-grid small{font-size:.6rem}}
.cta{padding:82px 0;background:#e96937}.cta h2{font-size:clamp(2.2rem,4.6vw,5.2rem);line-height:1.2;letter-spacing:-.06em}.cta p{font-size:1.05rem;line-height:1.9}.cta .btn.dark{padding:16px 28px;background:#071722;color:#fff;border-color:#071722}
.client-section{background:#102839;color:#fff}.client-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.client-section .lead{color:#c8d6dc}.client-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.client-list span{border-top:1px solid #547080;padding:17px 4px;font-size:1.15rem;font-weight:700}.client-list .client-generic{grid-column:span 2;color:#b8c9d1;font-size:.92rem;font-weight:500}@media(max-width:700px){.client-grid{grid-template-columns:1fr;gap:28px}.client-list span{font-size:1rem}}
.phone-card .email-link{display:block;margin-top:12px;font-size:1.18rem;line-height:1.5;color:#ff9d76;overflow-wrap:anywhere}.phone-card .email-link:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.map-embed{width:100%;height:420px;background:#dce4e4;overflow:hidden}.map-embed iframe{width:100%;height:100%;border:0;display:block}@media(max-width:700px){.map-embed{height:300px}}
/* Final responsive and navigation refinements */
:where(a,button):focus-visible{outline:3px solid #e96937;outline-offset:5px}
[id]{scroll-margin-top:24px}.header-inner>*{min-width:0}.nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}.logo-image{width:64px;height:42px;flex-shrink:0}.proof-image{position:relative;min-width:0}.proof-image img{position:absolute;inset:0}.proof-text{min-width:0}.proof-text h2{font-size:clamp(2.2rem,3.6vw,4.2rem)}.work-nav{background:#102839;color:#fff;border-top:1px solid #314754}.work-nav .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;padding-block:22px}.work-nav a{font-size:.94rem;padding:7px 0;border-bottom:1px solid #5d7685}.work-nav a:hover{color:#ffac86;border-color:#ffac86}.chapter-internal .craft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-essay figcaption,.craft-grid figcaption{font-size:1rem}.project-card figcaption span{font-size:.8rem}.project-grid,.home-project-grid{align-items:stretch}.project-card,.home-project{min-width:0}.project-card figcaption strong{font-size:1rem}.home-project img[src*="8042"],.project-card img[src*="8042"]{object-position:50% 35%}.client-grid>*{min-width:0}.client-list{grid-template-columns:repeat(2,minmax(0,1fr))}.client-list span{line-height:1.8;overflow-wrap:anywhere}.eyebrow{font-size:.875rem}.top-scenes-grid small{font-size:.8rem}.cover-caption{font-size:.8rem;letter-spacing:.04em}.photo-dialog[open]{overscroll-behavior:contain}
@media(max-width:700px){.header-inner{gap:12px}.logo{gap:8px;font-size:.94rem;letter-spacing:0}.logo-image{width:44px;height:34px}.logo small{font-size:.6rem;letter-spacing:.1em}.menu{flex-shrink:0;font-size:.875rem;padding:7px 10px}.cover-copy p{font-size:1rem}.cover-kicker{font-size:.75rem;letter-spacing:.12em}.cover-tags span{font-size:.875rem}.cover-tags{gap:6px}.cover-actions .btn{font-size:.94rem;padding:10px 14px}.cover-caption{font-size:.75rem}.cover-hero{height:auto;min-height:700px}.cover-layout{min-height:700px;padding-top:190px;padding-bottom:65px}.proof-text h2{font-size:clamp(2rem,8.5vw,2.65rem)}.top-scenes-grid span{font-size:1rem}.top-scenes-grid small{font-size:.75rem;letter-spacing:.06em}.home-project span{font-size:.95rem}.project-card figcaption strong{font-size:.95rem}.photo-essay figcaption{font-size:.875rem}.chapter-internal .craft-grid figure:first-child{grid-column:auto}.chapter-internal .craft-grid img,.chapter-internal .craft-grid figure:first-child img{height:270px}.craft-grid figcaption{font-size:.94rem}.work-nav .wrap{gap:8px 18px}.work-nav a{font-size:.875rem}.client-list{grid-template-columns:1fr}.client-list .client-generic{grid-column:auto}.phone-card{padding:28px 22px}.phone-card h2{font-size:1.6rem}.cta h2{font-size:clamp(2rem,8vw,3rem)}.footer{padding-bottom:65px}}
@media(max-width:360px){.logo{font-size:.82rem}.logo-image{width:38px}.logo small{font-size:.55rem}.project-grid,.home-project-grid{grid-template-columns:1fr}.project-card,.project-card img,.home-project{height:300px}.chapter-internal .craft-grid{grid-template-columns:1fr}.cover-actions{gap:8px}.cover-actions .btn{font-size:.875rem}}

.page-title-part{display:inline-block}
