*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fffdf9;color:#282522;font-family:"Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}a:hover{opacity:.75}a:focus-visible,button:focus-visible{outline:3px solid #e3a655;outline-offset:5px}button{font:inherit;cursor:pointer}header{height:96px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:#fffdf9;position:relative;z-index:10;border-bottom:1px solid #ece3da}.brand{display:flex;align-items:center;gap:14px;font-weight:700;font-size:19px;letter-spacing:.05em}.brand small{display:block;font-size:9px;letter-spacing:.2em;line-height:1.6}.mark{font-family:Arial;font-size:32px;color:#b75f24;line-height:1;letter-spacing:-6px;margin-right:6px}nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:700}.menu{display:none}.hero{position:relative;min-height:680px;height:calc(100svh - 96px);max-height:920px;overflow:hidden;background:#24211f;color:white}.hero-media{position:absolute;inset:0 0 0 39%;overflow:hidden}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#24211f 0%,#24211f55 40%,#24211f10)}video{width:100%;height:100%;object-fit:cover;object-position:center 43%}.hero-copy{position:relative;padding:105px 7% 100px;z-index:1}.eyebrow{font-family:Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.19em;color:#a85520}.hero .eyebrow{color:#f0c5a1;margin-bottom:34px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(34px,4.5vw,66px);font-weight:600;line-height:1.65;letter-spacing:.045em;margin-bottom:28px}h1 span{color:#ffc38d}.hero-copy>p:not(.eyebrow){color:#eee4dc;font-size:15px;line-height:2.2}.button{display:inline-flex;gap:36px;align-items:center;padding:14px 24px;background:#a94f1c;color:white;font-size:13px;margin-top:20px}nav .button{margin-top:0;padding:12px 20px}.button.light{background:#fffdf9;color:#593019}.hero-bottom{position:absolute;bottom:25px;left:7%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em;z-index:2}.hero-bottom button{background:#362b23aa;border:1px solid #c6a98f;color:white;font-size:11px;padding:7px 12px}.wrap{width:min(1120px,86%);margin:auto}.intro{padding:110px 0;display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.intro .eyebrow{grid-column:1/-1}h2{font-size:clamp(25px,2.8vw,38px);font-weight:600;line-height:1.6;letter-spacing:.035em}.intro>p:last-child{font-size:14px;line-height:2.3}.services{padding-bottom:100px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.section-head>span{font-size:12px;color:#85776b}.service{display:grid;grid-template-columns:60px 1fr 1.5fr;gap:25px;border-top:1px solid #dfcfc0;padding:40px 0}.number{font-family:Georgia;font-size:25px;color:#b45b23}h3{font-size:27px;font-weight:500}h3 small{display:block;font-size:10px;letter-spacing:.12em;margin-top:8px;color:#8c654b}.service p,.service li{font-size:13px}.service ul{padding-left:17px;margin-bottom:0}.text-link{display:inline-block;margin-top:12px;border-bottom:1px solid #a95723;padding-bottom:7px}.sound{border-bottom:1px solid #dfcfc0}.band{background:#fff0e1;padding:65px 0}.band p:last-child{margin-bottom:0}.more{display:grid;grid-template-columns:1fr 1.4fr;gap:65px;padding:85px 0}.more a{border-bottom:1px solid #dfcfc0;padding-bottom:30px}.more span{font-size:10px;letter-spacing:.17em;color:#a85520}.more h2{font-size:24px;margin-top:12px}.more p{font-size:12px}.contact{background:#272321;color:white;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:75px 7%}.contact .eyebrow{color:#f0c39e}.contact h2{font-size:32px}.contact p{font-size:12px;color:#e0d3c9}.contact-links{align-self:center;display:grid;gap:12px}.contact-links a{padding:12px 0;border-bottom:1px solid #9a8170}.contact-links .phone{font-size:30px;letter-spacing:.03em}.contact-links .line{background:#ffe4ca;color:#673919;padding:14px 20px;border:0;font-weight:700}footer{padding:45px 7%;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:12px}footer small{font-size:9px;color:#807266;align-self:end}footer>b{font-size:17px}.page-title{padding:85px 0 50px;border-bottom:1px solid #dfcfc0}.page-title h1{font-size:clamp(32px,4vw,52px)}.page-title p:last-child{max-width:700px}.prose{padding:65px 0 100px;max-width:900px}.prose h2{font-size:26px;margin-top:30px}.prose dl{display:grid;grid-template-columns:150px 1fr;margin-bottom:65px}.prose dt,.prose dd{margin:0;padding:17px 0;border-bottom:1px solid #eaded3;overflow-wrap:anywhere}.prose dt{font-weight:600}.license{white-space:pre-line;line-height:2.15;font-size:14px;margin-bottom:35px}.notice{background:#fff0e1;padding:22px;font-size:13px}.address{font-size:23px}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:10px}.skip:focus{top:0}@media(min-width:1500px){.hero-copy{padding-top:140px}}@media(max-width:1000px){header{height:80px}.brand{font-size:16px}nav{gap:15px;font-size:11px}nav .button{padding:10px}.hero{height:720px;min-height:0}.hero-copy{padding-top:100px}.service{grid-template-columns:35px 1fr 1.5fr;gap:15px}.intro{gap:25px}.contact{gap:30px}.contact-links .phone{font-size:25px}}@media(max-width:760px){header{height:76px;padding:0 6%}.mark{font-size:28px}.brand{font-size:15px}.brand small{font-size:8px}.menu{display:block;background:transparent;border:1px solid #d5bcaa;padding:8px 10px;font-size:11px}nav{display:none;position:absolute;top:76px;left:0;right:0;padding:24px 6%;background:#fffdf9;box-shadow:0 14px 20px #24211f20}nav.open{display:grid;gap:0}nav a{padding:15px 10px;font-size:14px}.hero{height:720px;max-height:none}.hero-media{left:0;opacity:.65}.hero-media:after{background:linear-gradient(90deg,#24211fee,#24211f30),linear-gradient(0deg,#24211f,transparent 60%)}.hero-copy{padding:95px 7% 80px}.hero h1{font-size:clamp(27px,7.7vw,39px)}.hero-copy>p:not(.eyebrow){font-size:13px}.hero .eyebrow{font-size:9px}.hero-bottom{left:7%;right:7%;gap:20px;align-items:center}.hero-bottom span{max-width:140px}.hero-bottom button{font-size:10px;white-space:nowrap}.intro{display:block;padding:65px 0}.intro>p:last-child{margin-top:28px;font-size:13px}.section-head{align-items:start}.section-head>span{display:none}.section-head h2{font-size:26px}.service{grid-template-columns:30px 1fr;padding:30px 0}.service>div{grid-column:2}.service h3{margin-bottom:0;font-size:24px}.services{padding-bottom:60px}.more{grid-template-columns:1fr;gap:35px;padding:55px 0}.contact{grid-template-columns:1fr;padding:55px 7%;gap:20px}.contact h2{font-size:27px}.contact-links .phone{font-size:26px}footer{grid-template-columns:1fr;padding:35px 7%}.page-title{padding-top:55px}.prose{padding-top:30px}.prose dl{grid-template-columns:1fr}.prose dt{border-bottom:0;padding-bottom:0;font-size:12px;color:#88644b}.prose dd{padding-top:5px}.license{font-size:13px}.address{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Official supplied mark: preserve shape and original colors. */
.company-mark{display:block;width:54px;height:56px;object-fit:contain;flex-shrink:0;background:#fff}.brand{gap:12px}header{background:#fff}nav .button{background:#fff0e1;color:#6d3819;border:1px solid #f1d2b7}.button.light{background:#ffe5cb;color:#4e2b16}.band{border-block:1px solid #f1dcc8}.contact-links .line{background:#ffe4ca;color:#5b3019}.number{color:#ac541e}@media(max-width:760px){.company-mark{width:43px;height:45px}.brand{gap:9px;font-size:14px}header{padding-inline:5%}.menu{font-size:10px}}

/* Brand orange accents, with the supplied mark and 07 logo type Gothic 7 lettering. */
.company-name{display:block;width:210px;height:auto}.brand small{margin-top:7px}nav .button{background:#ff861f;color:#261b13;border-color:#ff861f}.button{background:#dc6610;color:#fff}.button.light{background:#ff922f;color:#231b15}.hero h1 span{color:#ff9b40}.eyebrow,.more span,.number{color:#b65008}.hero .eyebrow,.contact .eyebrow{color:#ffae66}.contact-links .line{background:#ff922f;color:#211a14}.text-link{border-color:#ee7b21}.hero-media{inset:0 0 0 30%}.hero-media:after{background:linear-gradient(90deg,#24211f 0%,#24211f44 38%,transparent)}@media(max-width:1000px){.company-name{width:180px}}@media(max-width:760px){.company-name{width:170px}.brand small{font-size:8px}.hero-media{left:0}.hero-media:after{background:linear-gradient(90deg,#24211ff0,#24211f55),linear-gradient(0deg,#24211f,transparent 60%)}}@media(max-width:360px){.company-name{width:145px}}

/* Field photography: balance essential infrastructure with sound and light. */
.hero-media{inset:0 0 0 40%;display:grid;grid-template-rows:57% 43%}.hero-photo,.hero-event-photo{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.hero-photo{object-position:center 45%}.hero-event-photo{object-position:center 50%;border-top:4px solid #f38a28}.hero-media:after{background:linear-gradient(90deg,#24211f 0%,#24211f88 23%,#24211f18 100%)}.hero-copy{max-width:960px}.hero-copy>p:not(.eyebrow){max-width:600px}.hero h1{font-size:clamp(36px,4.6vw,64px)}.intro>div{font-size:14px;line-height:2.2}.intro>div p:last-child{margin-bottom:0}.fieldwork{padding:20px 0 85px}.fieldwork .section-head>p{font-size:13px;color:#746556}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.work-grid figure{margin:0}.work-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.work-grid figcaption{padding-top:22px}.work-grid figcaption>span{font:10px Arial,sans-serif;letter-spacing:.12em;color:#a45014}.work-grid h3{font-size:21px;line-height:1.6;margin:12px 0}.work-grid p{font-size:13px;line-height:1.9;color:#6d6056}.event-feature{background:#fff0e1;padding:70px 0}.event-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.event-layout>div>p:not(.eyebrow){font-size:14px;line-height:2.1}.light-film>img{display:block;width:100%;height:240px;object-fit:cover;object-position:center 50%}.light-film video{display:block;width:100%;height:auto;aspect-ratio:5.93;background:#24211f;object-fit:contain;margin-top:12px}.light-film>p{font-size:10px!important;color:#80664d;margin:6px 0 0}.service.sound h3{font-size:24px}.services{padding-bottom:65px}
@media(max-width:1000px){.work-grid{gap:20px}.work-grid h3{font-size:18px}.event-layout{gap:30px}}
@media(max-width:760px){.hero-media{inset:0;opacity:.55;grid-template-rows:57% 43%}.hero-media:after{background:linear-gradient(90deg,#24211fe8,#24211f55),linear-gradient(0deg,#24211f,transparent 65%)}.hero h1{font-size:clamp(30px,8.5vw,44px)}.hero-copy{padding-top:100px}.hero-copy>p:not(.eyebrow){max-width:300px;font-size:12px}.hero-bottom>span:last-child{display:none}.intro>div{font-size:13px;margin-top:25px}.work-grid{grid-template-columns:1fr;gap:35px}.work-grid img{aspect-ratio:16/10}.work-grid h3{font-size:23px}.fieldwork{padding-bottom:55px}.fieldwork .section-head{display:block}.fieldwork .section-head>p{margin-top:20px}.event-layout{grid-template-columns:1fr;gap:35px}.event-feature{padding:50px 0}.light-film>img{height:240px}.event-layout>div>p:not(.eyebrow){font-size:13px}}

/* Updated QP photograph: keep the upper equipment visible in landscape frames. */
.hero-photo{object-position:center 28%}.work-grid figure:first-child img{object-position:center 30%}

/* Show the whole lighting scene and readable explanatory captions. */
.light-film video{aspect-ratio:16/9;object-fit:contain;background:#24211f}
