/* SHIGEON Engineering — bespoke responsive site */
:root{--navy:#071923;--navy2:#0d2634;--deep:#06121a;--orange:#fc6b2a;--orange2:#f18542;--cream:#f5f3ee;--paper:#fffefa;--text:#10202b;--muted:#63737b;--line:#d9dcd9;--container:1320px;--head:Impact,'Arial Narrow','Liberation Sans Narrow',Arial,sans-serif;--body:Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--body);line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}a{text-decoration:none;color:inherit}img{display:block;max-width:100%;height:auto}svg.i{width:20px;height:20px;flex-shrink:0}button{cursor:pointer}main{display:block;overflow-x:clip}.container{width:min(calc(100% - 100px),var(--container));margin-inline:auto}.section-pad{padding-block:115px}section{position:relative}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:.99}h1,h2{font-family:var(--head);letter-spacing:-.025em;font-weight:700}h2{font-size:clamp(48px,6vw,96px)}h3{font-family:var(--head);letter-spacing:.01em}em{font-style:normal;color:var(--orange)}::selection{background:var(--orange);color:white}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.utility{background:var(--deep);color:#d3e0e5;height:36px;font-size:10px;letter-spacing:.17em;font-weight:700}.utility-in,.util-start,.util-start span,.util-start a{display:flex;align-items:center}.utility-in{height:100%;justify-content:space-between;gap:25px}.util-start{gap:22px}.util-start span,.util-start a{gap:7px}.util-start .i{width:13px;height:13px;color:var(--orange)}.util-vline{height:15px;width:1px;background:#4c5960}.util-end{color:#91a4af;font-size:9px}.util-end b{color:var(--orange);padding:0 10px}.site-header{height:88px;background:white;position:sticky;top:0;z-index:100;box-shadow:0 2px 0 rgba(5,23,35,.05)}.header-in{height:100%;display:flex;align-items:center;gap:35px}.brand{display:flex;align-items:center;flex:none;width:225px;height:72px;overflow:hidden}.brand img{width:225px;height:72px;object-fit:contain}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:30px;margin-left:auto}.desktop-nav a{font-weight:800;font-size:12px;letter-spacing:.01em;padding:34px 0;position:relative;white-space:nowrap}.desktop-nav a::after{content:'';position:absolute;bottom:25px;left:0;right:100%;height:2px;background:var(--orange);transition:right .25s}.desktop-nav a:hover::after,.desktop-nav a.active::after{right:0}.desktop-nav a.active{color:var(--orange)}.header-quote{display:inline-flex;align-items:center;gap:13px;background:var(--orange);color:white;padding:16px 20px;font-size:12px;font-weight:800;white-space:nowrap;transition:background .25s,transform .25s}.header-quote:hover{background:var(--navy);transform:translateY(-2px)}.header-quote .i{height:15px;width:15px}.mobile-toggle{display:none;width:48px;height:48px;border:1px solid var(--line);background:white;align-items:center;justify-content:center}.mobile-overlay,.mobile-menu{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:54px;padding:14px 22px;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;line-height:1.25;transition:background .25s,color .25s,border-color .25s,transform .25s;white-space:normal;text-align:center}.btn .i{width:17px;height:17px}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--orange);color:white;border:1px solid var(--orange)}.btn-primary:hover{background:#e85b1c;border-color:#e85b1c}.btn-dark{background:var(--navy);color:white;border:1px solid var(--navy)}.btn-dark:hover{background:var(--orange);border-color:var(--orange)}.btn-ghost,.btn-outline{color:white;border:1px solid rgba(255,255,255,.5);background:transparent}.btn-ghost:hover,.btn-outline:hover{color:var(--navy);background:white;border-color:white}.btn-light{color:var(--navy);background:white;border:1px solid white}.btn-light:hover{background:var(--orange);color:white;border-color:var(--orange)}.btn-text{color:var(--navy);padding-inline:0;border-bottom:1px solid var(--navy);min-height:auto}
.eyebrow{display:inline-flex;align-items:center;gap:11px;color:#394e5b;font-weight:900;letter-spacing:.2em;font-size:10px;text-transform:uppercase}.eyebrow>i,.eyebrow .dot{display:inline-block;background:var(--orange);width:27px;height:2px;flex:none}.eyebrow .dot{height:8px;width:8px;border-radius:50%}.eyebrow.on-dark{color:#bed2da}.section-title{margin-bottom:45px;max-width:900px}.section-title h2{margin:16px 0 17px}.section-title p{font-size:16px;color:#60707b;line-height:1.8;max-width:660px;margin:0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.15s}
.hero{background:var(--navy);color:white;min-height:780px;isolation:isolate;overflow:hidden}.hero-noise{position:absolute;inset:0;background:radial-gradient(ellipse at 12% 20%,#25445752,transparent 53%),linear-gradient(95deg,#06131c,#102b38);z-index:-2}.hero-lines{position:absolute;inset:0;opacity:.25;background:linear-gradient(90deg,transparent 0%,transparent 49.85%,#5f7c8a 50%,transparent 50.15%);pointer-events:none;z-index:-1}.hero-grid{display:grid;grid-template-columns:52% 48%;align-items:center;min-height:760px}.hero-copy{position:relative;z-index:2;padding:78px 0 96px;min-width:0}.hero-pre{display:flex;gap:13px;align-items:center;font-size:10px;letter-spacing:.18em;color:#b7cbd3;font-weight:800}.hero-pre i{width:29px;height:2px;background:var(--orange)}.hero-pre-line{height:1px;width:26px;background:#78909d}.hero-tiny{color:#f7a47a;letter-spacing:.3em;font-size:11px;font-weight:900;margin:50px 0 10px}.hero-copy h1{font-size:clamp(72px,8.6vw,145px);line-height:.91;letter-spacing:-.027em;margin:0 0 26px;white-space:nowrap}.hero-copy h1 .outline-word{color:transparent;-webkit-text-stroke:1.6px #c9d5db;text-shadow:none}.hero-copy h1 em{display:inline-block}.hero-desc{font-size:16px;color:#b9cad4;max-width:510px;line-height:1.8;margin:0 0 31px}.hero-actions{display:flex;flex-wrap:wrap;gap:11px}.hero-bottom-note{display:flex;gap:15px;align-items:center;color:#b9cbd1;letter-spacing:.12em;font-size:9px;font-weight:800;margin-top:60px}.hero-bottom-note b{color:var(--orange);margin:0 5px}.hero-rule{width:35px;height:1px;background:var(--orange);flex:none}.hero-visual{height:630px;position:relative;min-width:0;display:flex;align-items:center}.hero-img-shell{width:calc(100% + 44px);margin-right:-44px;height:min(535px,75vh);position:relative;overflow:hidden;border:1px solid #7996a646;background:#223d4b}.hero-img-shell::before{content:'';height:6px;width:32%;background:var(--orange);position:absolute;top:0;left:0;z-index:1}.hero-img-shell img{height:100%;width:100%;object-fit:contain;object-position:center;filter:brightness(.9)}.image-caption{position:absolute;bottom:72px;right:10px;z-index:2;background:#061923df;padding:15px 20px;letter-spacing:.13em;font-size:9px;font-weight:900;display:flex;align-items:center;gap:9px}.live-dot{background:var(--orange);height:7px;width:7px;border-radius:50%;box-shadow:0 0 0 4px #fc6b2a35}.hero-stamp{position:absolute;left:-62px;bottom:62px;background:var(--orange);width:148px;height:140px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:23px;transform:rotate(-3deg);box-shadow:8px 9px 0 #08162070}.hero-stamp span{font-weight:900;letter-spacing:.12em;font-size:12px;line-height:1.25}.hero-stamp strong{font-family:var(--head);font-size:33px;line-height:1.1}.hero-stamp small{font-size:9px;letter-spacing:.17em;color:#491d0e}.hero-img-coordinate{position:absolute;right:0;top:20px;font-size:9px;letter-spacing:.2em;color:#a7bdc9}.hero-img-coordinate span{color:var(--orange)}.hero-scroll{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;color:#7894a3;font-size:9px;letter-spacing:.23em}.hero-scroll div{width:45px;height:1px;background:#7894a3}.marquee{overflow:hidden;background:var(--orange);color:var(--navy);border-top:1px solid var(--orange);border-bottom:1px solid var(--orange)}.marquee-track{display:flex;align-items:center;gap:28px;width:max-content;animation:marquee 110s linear infinite;padding:18px 0}.marquee-track span{font-family:var(--head);font-size:21px;letter-spacing:.035em;white-space:nowrap}.marquee-track b{font-size:21px}@keyframes marquee{to{transform:translateX(-50%)}}
.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:50% 50%;gap:30px;align-items:center}.intro-copy{padding-right:65px}.intro-copy h2{font-size:clamp(60px,6.2vw,102px);line-height:.95;margin:22px 0 25px}.intro-copy .lede{font-weight:700;color:#263a43;font-size:19px;line-height:1.5}.intro-copy>p:not(.lede){line-height:1.83;color:#5c6b71;font-size:15px;max-width:540px}.intro-lines{display:grid;grid-template-columns:1fr;gap:10px;margin:25px 0 32px;padding-top:25px;border-top:1px solid #ced2cf}.intro-lines span{display:flex;align-items:center;gap:12px;font-weight:750;font-size:13px}.intro-lines .i{color:var(--orange);width:17px;height:17px}.intro-media{height:620px;position:relative;padding-left:25px;padding-right:45px}.intro-main-img{width:100%;height:100%;background:#e7e8e6;padding:12px;border:1px solid #d0d4d0}.intro-main-img img{width:100%;height:100%;object-fit:contain}.intro-index{position:absolute;bottom:35px;left:-12px;background:var(--navy);color:white;display:flex;align-items:end;padding:22px 25px;gap:18px;box-shadow:6px 6px 0 var(--orange)}.intro-index strong{font:70px/.82 var(--head);color:var(--orange)}.intro-index span{font-size:11px;font-weight:900;line-height:1.45;letter-spacing:.05em}.intro-vertical{position:absolute;right:6px;top:0;writing-mode:vertical-rl;font-size:10px;font-weight:900;letter-spacing:.15em;color:var(--muted)}
.service-section{background:white}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{display:block;background:var(--cream);min-width:0;overflow:hidden;border:1px solid #e6e6e2}.service-photo{height:285px;background:#d9e4e8;overflow:hidden}.service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.service-card:hover .service-photo img{transform:scale(1.06)}.service-content{padding:27px 25px 28px;border-top:3px solid var(--orange)}.service-number{font-size:9px;letter-spacing:.17em;font-weight:900;color:var(--orange)}.service-content h3{font-size:clamp(31px,3vw,43px);line-height:1.02;margin:13px 0 15px}.service-under{display:flex;justify-content:space-between;align-items:flex-end;gap:14px}.service-under p{color:#69747b;font-size:13px;margin:0;line-height:1.7;max-width:270px}.round-arrow{width:44px;height:44px;border:1px solid #ccd1d1;display:flex;align-items:center;justify-content:center;flex:none;transition:background .3s,color .3s}.service-card:hover .round-arrow{color:white;background:var(--orange);border-color:var(--orange)}.service-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:28px}.service-bottom>span{font-size:11px;letter-spacing:.13em;font-weight:900;color:#65767e}
.manifesto{min-height:710px;display:flex;align-items:center;overflow:hidden;color:white;background:var(--navy)}.manifesto>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.83)}.manifesto-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#071923f5 0%,#071923d4 40%,#07192336 100%)}.manifesto-inner{position:relative;z-index:1;padding-block:80px}.manifesto h2{font-size:clamp(70px,9vw,145px);line-height:.92;margin:22px 0}.manifesto p{font-size:16px;line-height:1.8;max-width:480px;color:#d3e0e3;margin-bottom:26px}.manifesto-side{position:absolute;right:28px;bottom:40px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.23em;font-weight:900;color:#cee0e3;z-index:1}
.work-feature{background:var(--cream)}.feature-top,.photo-story-top{display:flex;justify-content:space-between;align-items:end;gap:22px}.feature-top .section-title,.photo-story-top .section-title{margin-bottom:30px}.feature-top>.btn,.photo-story-top>.btn{margin-bottom:33px;flex:none}.work-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:20px}.work-shot{display:block;position:relative;height:600px;overflow:hidden;background:#162e3b}.work-small{height:600px}.work-shot img{width:100%;height:100%;object-fit:contain;transition:transform .65s;filter:brightness(.93)}.work-shot:hover img{transform:scale(1.03)}.work-shot:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(0deg,#03111bdc,transparent);pointer-events:none}.work-shot>div{position:absolute;bottom:30px;left:30px;z-index:2;color:white;display:flex;flex-direction:column;gap:10px}.work-shot>div span{font-size:10px;letter-spacing:.2em;font-weight:800;color:#d9e5e9}.work-shot>div strong{font:clamp(35px,4vw,57px)/.98 var(--head);max-width:490px}.photo-chip{position:absolute;top:23px;left:23px;background:var(--orange);color:white;z-index:2;padding:10px 14px;font-size:9px;letter-spacing:.11em;font-weight:900}.photo-chip.grey{background:#e7eeec;color:#162e38}
.approach{background:var(--navy);color:white}.approach-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.approach-head h2{font-size:clamp(60px,6.5vw,105px);line-height:.97;margin:28px 0}.approach-head>p{max-width:450px;color:#bfd0d8;font-size:16px;margin-bottom:28px;line-height:1.8}.steps{border-top:1px solid #47606b}.step{display:grid;grid-template-columns:78px 1fr 20px;gap:18px;border-bottom:1px solid #47606b;padding:29px 0;align-items:start}.step>span{font-family:var(--head);font-size:48px;line-height:1;color:var(--orange)}.step h3{font-size:29px;margin:0 0 7px}.step p{font-size:13px;color:#aebec7;line-height:1.75;max-width:310px;margin:0}.step>.i{color:var(--orange);margin-top:6px}
.capability-band{background:white}.cap-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.cap-visual{background:#e6ecef;position:relative;padding:20px}.cap-img{height:620px;display:flex;justify-content:center;align-items:center}.cap-img img{width:100%;height:100%;object-fit:contain}.cap-visual>span{position:absolute;bottom:34px;left:32px;background:var(--navy);color:white;padding:10px 14px;font-size:9px;letter-spacing:.15em;font-weight:900}.cap-copy h2{font-size:clamp(69px,7vw,110px);line-height:.94;margin:18px 0}.cap-copy p{font-size:16px;color:#697980;line-height:1.8;max-width:480px}.cap-items{border-top:1px solid #cfd6d6;margin:27px 0 28px}.cap-items span{display:flex;justify-content:space-between;border-bottom:1px solid #cfd6d6;padding:15px 0;font-size:13px;font-weight:900;letter-spacing:.035em}.cap-items b{color:var(--orange)}
.value-section{background:var(--cream)}.value-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;border-top:1px solid #d2d5d3;border-bottom:1px solid #d2d5d3}.value-primary,.value{padding:35px 25px;border-right:1px solid #d2d5d3}.value-primary{background:var(--navy);color:white;padding:35px}.value-primary h3{font-size:35px;line-height:1.06;margin:35px 0 18px}.value-primary p{color:#a9bdc5;font-size:13px;line-height:1.7;max-width:255px}.value-number{font-family:var(--head);font-size:42px;color:var(--orange)}.value .i{color:var(--orange);height:33px;width:33px;margin-bottom:48px}.value h3{font-size:28px;margin-bottom:15px}.value p{color:#62727c;font-size:13px;line-height:1.75}.value:last-child{border-right:0}
.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%}.faq-side h2{font-size:clamp(64px,6vw,100px);margin:20px 0}.faq-side p{font-size:16px;color:#63737b;max-width:390px}.faq-side .btn{margin-top:12px}.faq-list{border-top:1px solid var(--line)}.faq{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:grid;grid-template-columns:40px 1fr 18px;gap:15px;align-items:center;cursor:pointer;padding:25px 8px;font-size:15px;font-weight:850;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--orange);font-weight:900;font-size:11px}.faq summary .i{color:var(--navy);transition:transform .25s}.faq[open] summary .i{transform:rotate(45deg);color:var(--orange)}.faq-answer{padding:0 35px 25px 63px;color:#677780;font-size:14px;line-height:1.85}.mini-banner{background:var(--orange);padding:30px 0}.mini-banner-in{display:flex;justify-content:space-between;align-items:center;gap:20px}.mini-banner p{font:clamp(25px,3vw,39px)/1.06 var(--head);margin:0;color:#fff}.mini-banner a{font-weight:900;font-size:12px;letter-spacing:.12em;border-bottom:1px solid var(--navy);padding-bottom:10px;white-space:nowrap}.mini-banner a span{margin-left:15px;font-size:22px}
.contact-ribbon{background:#edece6;border-top:1px solid #dadbd3;padding:75px 0}.ribbon-in{display:flex;justify-content:space-between;align-items:center;gap:20px}.ribbon-in h2{font-size:clamp(52px,6.5vw,100px);margin:14px 0 0}.ribbon-in .btn{background:var(--navy);color:white;border-color:var(--navy)}.ribbon-in .btn:hover{background:var(--orange);border-color:var(--orange)}.footer{background:#071720;color:white}.footer-grid{display:grid;grid-template-columns:1.55fr .65fr 1fr 1.15fr;gap:45px;padding-top:90px;padding-bottom:80px}.footer-logo-wrap{background:#fff;padding:11px;max-width:235px}.footer-logo-wrap img{width:100%;height:auto;max-height:115px;object-fit:contain}.footer-intro p{font-size:13px;line-height:1.8;color:#9bb0b9;max-width:300px;margin:28px 0}.footer-location{display:flex;align-items:center;gap:8px;color:var(--orange);font-size:10px;letter-spacing:.1em;font-weight:800}.footer-location .i{width:15px;height:15px}.footer h3{font-family:var(--body);font-weight:900;font-size:12px;letter-spacing:.12em;margin:0 0 22px}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:11px 0}.footer li a,.footer-contact>a:not(.big-call){font-size:13px;color:#b3c3cb;transition:color .2s}.footer a:hover{color:var(--orange)}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.footer-contact h3{margin-bottom:4px}.footer-contact .big-call{font:31px var(--head);color:white}.footer-contact p{font-size:13px;color:#b1c0c8;line-height:1.85}.footer-contact .i{display:inline;vertical-align:middle;width:16px;height:16px}.foot-bottom{border-top:1px solid #334751;display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:24px;padding-bottom:24px;color:#80959f;font-size:10px;letter-spacing:.08em}.foot-bottom>div{display:flex;gap:18px}
.float-actions{position:fixed;bottom:22px;right:max(15px,env(safe-area-inset-right));z-index:180;display:flex;flex-direction:column;gap:10px}.float-actions>a{width:52px;height:52px;display:flex;justify-content:center;align-items:center;border-radius:50%;box-shadow:0 5px 24px #0004;color:white;transition:transform .25s}.float-actions>a:hover{transform:translateY(-4px)}.float-actions .i{width:24px;height:24px}.floating-whatsapp{background:#22c55e}.floating-call{background:var(--orange)}.floating-whatsapp::after{content:'';inset:-4px;position:absolute;border:1px solid #22c55e;border-radius:50%;animation:floatPulse 3s ease-out infinite;pointer-events:none}.floating-whatsapp{position:relative}.back-top{position:fixed;right:18px;bottom:148px;z-index:160;background:var(--navy);color:white;border:1px solid #50616b;width:40px;height:40px;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}.back-top.visible{opacity:1;pointer-events:auto}@keyframes floatPulse{0%{transform:scale(1);opacity:.65}85%{transform:scale(1.25);opacity:0}100%{opacity:0}}
/* Interior page hero */
.page-hero{height:490px;background:var(--navy);color:white;overflow:hidden;isolation:isolate}.page-hero-image{position:absolute;inset:0;left:40%;z-index:-3}.page-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071923 0%,#071923f2 28%,#071923b0 54%,#07192320 100%);z-index:-2}.page-hero-inner{padding-top:92px;position:relative;z-index:1}.page-hero h1{font-size:clamp(68px,8vw,125px);line-height:.9;margin:20px 0}.page-hero p{max-width:540px;color:#c5d1d6;font-size:15px;line-height:1.8}.crumb{display:flex;gap:14px;align-items:center;font-size:9px;letter-spacing:.18em;font-weight:900;margin-top:31px}.crumb a{color:#a9bac4}.crumb span{color:var(--orange)}.page-hero-index{position:absolute;bottom:25px;right:35px;font-size:10px;letter-spacing:.15em;font-weight:900;color:#e4eded;writing-mode:vertical-rl}
.about-opening{background:var(--cream)}.about-split{display:grid;grid-template-columns:1fr 1.05fr;gap:6%;align-items:center}.about-split-copy h2{font-size:clamp(65px,6vw,100px);margin:20px 0 28px}.about-split-copy .lede{font-size:18px;color:#243946;font-weight:750}.about-split-copy p{color:#62717a;line-height:1.9;max-width:560px}.about-split-copy .btn{margin-top:19px}.about-split-photo{background:#dae0df;padding:13px;position:relative}.about-split-photo img{height:520px;object-fit:contain;width:100%}.about-split-photo>span{position:absolute;bottom:28px;left:29px;background:#071923e8;color:white;padding:12px 17px;font-size:10px;font-weight:900;letter-spacing:.15em}.about-ethos{background:white}.ethos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ethos-grid article{padding:33px 28px;border-top:3px solid var(--orange);background:var(--cream);min-height:240px}.ethos-grid article span{font:43px var(--head);color:var(--orange)}.ethos-grid article h3{font-size:31px;margin:24px 0 12px}.ethos-grid article p{font-size:14px;color:#64727b;line-height:1.75}.about-photo-story{background:var(--cream)}.story-photo-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:20px}.story-photo-grid figure{padding:15px;background:#e3e8e7;border:1px solid #d5d9d9}.story-photo-grid img{height:430px;width:100%;object-fit:contain}.story-photo-grid figcaption{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:15px 8px 5px}.about-visual-band{height:530px;background:var(--navy);color:white;position:relative;overflow:hidden;display:flex;align-items:center}.about-visual-band>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:brightness(.55)}.about-visual-band>div{position:relative;z-index:1;width:min(calc(100% - 100px),var(--container));margin:auto}.about-visual-band span{font-size:10px;letter-spacing:.19em;color:#b8cdd4}.about-visual-band h2{font-size:clamp(67px,8vw,130px);margin:20px 0}.about-visual-band p{font-size:13px;color:#cbd5d9}
.services-open{background:var(--cream);padding-block:60px}.services-open-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.services-open-grid p{font-size:20px;line-height:1.55;font-weight:700;margin:0;color:#283c46}.service-detail{background:white;scroll-margin-top:95px}.service-detail.alternate{background:#f3f4f0}.service-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7%;align-items:center}.service-detail.alternate .service-detail-photo{order:2}.service-detail-photo{background:#dce5e7;padding:11px;position:relative}.service-detail-photo img{height:470px;width:100%;object-fit:contain}.service-detail-photo span{position:absolute;bottom:24px;left:25px;background:var(--navy);color:white;font-size:9px;letter-spacing:.13em;padding:9px 12px;font-weight:900}.service-detail-copy h2{font-size:clamp(55px,5.5vw,84px);line-height:.99;margin:20px 0}.service-detail-copy p{color:#5c6d76;max-width:520px;line-height:1.9}.service-detail-copy ul{list-style:none;padding:0;margin:24px 0 30px}.service-detail-copy li{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #d7dcd9;font-size:13px;font-weight:800}.service-detail-copy li .i{color:var(--orange);width:17px;height:17px}.service-inquiry{background:var(--navy);color:white}.service-inquiry-inner{text-align:center}.service-inquiry h2{font-size:clamp(64px,7.5vw,116px);margin:25px 0}.service-inquiry p{color:#bfced6;max-width:500px;margin:0 auto 30px}
.projects-main{background:white}.projects-real{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:18px}.photo-frame{display:flex;flex-direction:column;padding:12px;background:#e5e9e8;min-width:0}.photo-frame img{height:390px;width:100%;object-fit:contain}.photo-frame span{font-size:10px;font-weight:900;letter-spacing:.12em;padding:18px 3px 8px}.project-concepts{background:var(--cream)}.project-concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.project-concept-grid article{background:var(--navy);color:white}.project-concept-grid img{width:100%;height:290px;object-fit:cover}.project-concept-grid article>div{padding:22px}.project-concept-grid article span{font-size:9px;color:var(--orange);font-weight:800;letter-spacing:.16em}.project-concept-grid h3{font-size:32px;margin:10px 0}
.gallery-section{background:var(--cream)}.gallery-header{display:flex;justify-content:space-between;align-items:end;gap:20px}.filter-controls{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:42px}.filter{border:1px solid #d4dbd9;background:white;padding:11px 14px;color:#223540;font-size:11px;font-weight:800;white-space:nowrap}.filter.active,.filter:hover{background:var(--navy);color:white;border-color:var(--navy)}.gallery-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;gap:18px}.gallery-tile{min-width:0;position:relative;background:#dbe5e8;border:1px solid #d2dadd;overflow:hidden;display:flex;flex-direction:column}.gallery-tile[hidden]{display:none!important}.gallery-tile img{width:100%;height:310px;object-fit:contain;transition:transform .3s}.gallery-tall img{height:420px}.gallery-tile:hover img{transform:scale(1.025)}.gallery-tile>div{background:var(--navy);color:white;padding:17px 18px;display:flex;flex-direction:column;gap:6px}.gallery-tile small{font-size:9px;color:var(--orange);letter-spacing:.16em;font-weight:800}.gallery-tile strong{font-size:14px}.gallery-tile>.i{position:absolute;right:18px;top:18px;background:var(--orange);padding:10px;width:38px;height:38px;color:white}.gallery-info{font-size:13px;color:#536771;background:#e6e7e2;padding:19px 22px;margin-top:24px}.lightbox{position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;background:#03101bf0;padding:75px 20px 50px}.lightbox.open{display:flex}.lightbox img{max-width:min(96vw,1300px);max-height:80dvh;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:22px;font-size:40px;color:white;border:0;background:none;line-height:1}.lightbox-hint{position:absolute;bottom:17px;color:#b7c5cb;letter-spacing:.15em;font-size:9px}
.contact-main{background:var(--cream)}.contact-columns{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start}.contact-copy h2{font-size:clamp(69px,6vw,100px);margin:20px 0 24px}.contact-copy>p{font-size:15px;color:#62717c;line-height:1.9;max-width:430px;margin-bottom:30px}.contact-line{display:flex;gap:20px;border-top:1px solid #d0d9d6;padding:25px 0;align-items:flex-start}.contact-line>.i{color:var(--orange);height:26px;width:26px;margin-top:4px}.contact-line>div{flex:1;min-width:0}.contact-line span{display:block;font-size:10px;letter-spacing:.17em;color:#6b7b82;font-weight:900}.contact-line a:not(.directions-link){font-size:clamp(17px,2vw,25px);font-weight:850;word-break:break-word}.contact-line p{color:#263b45;font-size:15px;line-height:1.7;margin:5px 0}.contact-line .directions-link{font-size:10px;font-weight:900;letter-spacing:.07em;color:var(--orange)}.contact-line .directions-link .i{width:14px;height:14px;vertical-align:middle}.form-wrap{background:white;border:1px solid #e1e2de;padding:50px 47px;box-shadow:0 16px 40px #0719230a;scroll-margin-top:120px}.form-kicker{font-size:10px;letter-spacing:.17em;color:var(--orange);font-weight:900}.form-wrap h3{font-size:clamp(44px,4vw,65px);margin:18px 0 13px}.form-wrap>p{font-size:14px;color:#65757c;margin-bottom:25px}.enquiry-form{display:grid;gap:19px}.enquiry-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.enquiry-form label{display:grid;gap:7px;font-size:10px;letter-spacing:.08em;font-weight:900;color:#304854}.enquiry-form label span{color:var(--orange)}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{border:1px solid #d5dcd9;background:#f8f9f6;padding:14px 15px;color:#1d343e;min-width:0;width:100%;border-radius:0;outline:none;font-size:13px;letter-spacing:0;transition:border-color .2s}.enquiry-form input:focus,.enquiry-form textarea:focus,.enquiry-form select:focus{border-color:var(--orange)}.enquiry-form textarea{resize:vertical;min-height:130px}.enquiry-form .form-submit{width:100%;margin-top:6px}.form-note{font-size:11px;color:#74838b;line-height:1.5;margin:-9px 0 0}.form-status{font-size:13px;min-height:1.2em;color:#1d6d48}.hp{position:absolute;left:-9999px;opacity:0;pointer-events:none}.location-section{background:white}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.location-grid h2{font-size:clamp(65px,6.5vw,105px);margin:20px 0}.location-grid p{color:#60717a;max-width:430px}.location-graphic{background:var(--navy);color:white;position:relative;min-height:400px;overflow:hidden;padding:50px;display:flex;justify-content:center;align-items:flex-start;flex-direction:column}.map-lines{position:absolute;inset:0;opacity:.2;background:repeating-linear-gradient(0deg,transparent,transparent 45px,#a6cbd7 46px,#a6cbd7 47px),repeating-linear-gradient(90deg,transparent,transparent 45px,#a6cbd7 46px,#a6cbd7 47px);transform:rotate(-9deg) scale(1.2)}.location-graphic span{z-index:1;color:#b7d2db;letter-spacing:.2em;font-size:11px;font-weight:900}.location-graphic strong{z-index:1;font:clamp(65px,7vw,105px)/1 var(--head);margin:25px 0;color:var(--orange)}.location-graphic small{z-index:1;color:#b7d2db;font-size:11px;letter-spacing:.15em}.location-graphic>.i{position:absolute;right:28px;bottom:28px;color:var(--orange);height:60px;width:60px;opacity:.8}
.legal-body{background:var(--cream)}.legal-body .container{max-width:900px}.legal-body h2{font-size:65px}.legal-body h3{font-size:33px;margin:35px 0 14px}.legal-body p{font-size:15px;color:#50636d;line-height:1.95}.legal-body a{color:var(--orange);text-decoration:underline}.legal-date{font-size:12px!important;margin-top:50px;border-top:1px solid #ccd2d0;padding-top:15px}
@media(max-width:1260px){.container{width:min(calc(100% - 70px),var(--container))}.header-in{gap:20px}.brand{width:185px}.brand img{width:185px}.desktop-nav{gap:20px}.desktop-nav a{font-size:11px}.header-quote{padding:14px 13px;font-size:10px}.hero-copy h1{font-size:clamp(72px,8vw,115px)}.hero-stamp{left:-25px}.intro-copy{padding-right:35px}.intro-media{height:560px}.service-photo{height:235px}.cap-img{height:560px}}
@media(max-width:1040px){.desktop-nav,.header-quote{display:none}.site-header{height:78px}.brand{width:205px}.brand img{width:205px;height:68px}.header-in{justify-content:space-between}.mobile-toggle{display:flex}.mobile-toggle .i{width:25px;height:25px}.mobile-overlay{display:block;position:fixed;inset:0;background:#03131abc;z-index:190;opacity:0;pointer-events:none;transition:opacity .3s}.mobile-overlay.open{opacity:1;pointer-events:auto}.mobile-menu{display:flex;position:fixed;right:0;top:0;bottom:0;width:min(410px,100%);height:100dvh;background:#fff;z-index:200;transform:translateX(105%);transition:transform .35s ease;flex-direction:column;overflow-y:auto;box-shadow:-15px 0 55px #0004}.mobile-menu.open{transform:translateX(0)}.mobile-head{display:flex;align-items:center;justify-content:space-between;padding:30px 26px;border-bottom:1px solid #d5dcd9}.small-label{color:var(--orange);font-size:10px;letter-spacing:.15em;font-weight:900}.mobile-close{width:45px;height:45px;display:flex;align-items:center;justify-content:center;border:1px solid #d4dbd8;background:white}.mobile-links{display:flex;flex-direction:column;padding:15px 25px}.mobile-links a{font-family:var(--head);font-size:33px;line-height:1.2;padding:15px 5px;border-bottom:1px solid #e0e2df;display:flex;justify-content:space-between;align-items:center}.mobile-links a::after{content:'↗';font:18px Arial;color:#97a4a9}.mobile-links a.active{color:var(--orange)}.mobile-bottom{padding:20px 26px 30px;margin-top:auto;background:var(--navy);color:white}.mobile-bottom p{font:29px/1.08 var(--head)}.mobile-bottom>a{display:flex;align-items:center;gap:10px;font-weight:750;padding:8px 0;font-size:14px}.mobile-cta{background:var(--orange);justify-content:center;margin-top:18px;min-height:46px}.menu-open{overflow:hidden}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr 1fr;min-height:690px}.hero-visual{height:550px}.hero-img-shell{height:430px}.hero-copy h1{font-size:clamp(65px,8.1vw,102px)}.hero-stamp{left:-10px;bottom:35px}.intro-copy h2,.cap-copy h2{font-size:65px}.intro-media{height:510px}.approach-grid{gap:5%}.footer-grid{gap:25px}.work-shot,.work-small{height:520px}.section-pad{padding-block:90px}}
@media(max-width:850px){.container{width:min(calc(100% - 48px),var(--container))}.utility .util-end{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:0}.hero-copy{padding:75px 0 30px}.hero-copy h1{font-size:clamp(83px,13vw,125px)}.hero-desc{max-width:650px}.hero-visual{height:440px;padding:0 0 50px 28px}.hero-img-shell{height:350px;width:100%;margin-right:0}.hero-stamp{left:-12px;bottom:45px;width:120px;height:115px;padding:14px}.hero-stamp strong{font-size:29px}.image-caption{right:12px;bottom:65px}.hero-scroll{display:none}.intro-grid,.about-split,.service-detail-grid,.cap-grid,.approach-grid,.faq-grid,.contact-columns,.location-grid{grid-template-columns:1fr;gap:45px}.intro-copy{padding:0}.intro-media{height:540px;max-width:750px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:last-child{grid-column:1/-1;max-width:none;display:grid;grid-template-columns:1fr 1fr}.service-card:last-child .service-photo{height:100%}.service-photo{height:260px}.manifesto{min-height:580px}.work-grid{grid-template-columns:1fr 1fr}.work-shot,.work-small{height:440px}.steps{max-width:760px}.cap-grid{gap:40px}.cap-img{height:500px}.value-grid{grid-template-columns:repeat(2,1fr)}.value-primary,.value{border-bottom:1px solid #d4dad6}.footer-grid{grid-template-columns:1.2fr 1fr;row-gap:45px}.footer-intro p{max-width:450px}.service-detail.alternate .service-detail-photo{order:0}.service-detail-photo img{height:420px}.projects-real{grid-template-columns:1fr 1fr}.projects-real a:last-child{grid-column:1/-1}.gallery-header{flex-wrap:wrap}.gallery-mosaic{grid-template-columns:1fr 1fr}.contact-columns{gap:50px}.location-graphic{min-height:350px}}
@media(max-width:600px){.container{width:calc(100% - 34px)}.section-pad{padding-block:68px}.utility{height:29px}.util-start{gap:10px}.util-start span,.util-start a{font-size:9px;letter-spacing:.08em}.util-vline{display:none!important}.site-header{height:67px}.brand{width:167px;height:60px}.brand img{width:167px;height:56px}.mobile-toggle{width:43px;height:43px}.mobile-head{padding:20px 20px}.mobile-links{padding:7px 20px}.mobile-links a{font-size:28px;padding:13px 3px}.hero-copy{padding-top:60px}.hero-pre{font-size:8px;gap:7px;letter-spacing:.11em;flex-wrap:wrap}.hero-pre i{width:18px}.hero-pre-line{width:15px}.hero-tiny{font-size:9px;letter-spacing:.18em;margin-top:33px}.hero-copy h1{font-size:clamp(63px,15vw,90px);letter-spacing:-.035em;margin-bottom:22px}.hero-copy h1 .outline-word{-webkit-text-stroke:1px #c9d5db}.hero-desc{font-size:13px;line-height:1.75;max-width:480px}.hero-actions{gap:9px}.hero-actions .btn{font-size:9px;padding:12px 14px;gap:10px;min-height:47px}.hero-bottom-note{margin-top:28px;font-size:8px;line-height:1.7;letter-spacing:.06em}.hero-rule{width:20px}.hero-visual{height:315px;padding:5px 0 25px 18px}.hero-img-shell{height:270px}.hero-img-coordinate{top:-6px;font-size:8px}.hero-stamp{left:0;bottom:33px;width:93px;height:89px;padding:11px;box-shadow:4px 4px 0 #08162070}.hero-stamp span{font-size:9px}.hero-stamp strong{font-size:22px}.hero-stamp small{font-size:7px}.image-caption{bottom:35px;right:0;padding:9px 12px;font-size:7px;letter-spacing:.06em}.marquee-track{padding:13px 0;gap:17px}.marquee-track span{font-size:17px}.section-title{margin-bottom:27px}.section-title h2{font-size:clamp(43px,11.8vw,65px);margin:15px 0 10px}.section-title p{font-size:13px}.eyebrow{font-size:9px;letter-spacing:.12em}.eyebrow>i{width:20px}.intro-copy h2,.cap-copy h2,.faq-side h2{font-size:clamp(56px,14vw,82px)}.intro-copy .lede{font-size:16px}.intro-copy>p:not(.lede){font-size:13px}.intro-lines{gap:8px}.intro-lines span{font-size:12px}.intro-media{height:auto;min-height:320px;padding-left:12px;padding-right:21px}.intro-main-img{height:auto;min-height:305px;padding:7px}.intro-main-img img{height:auto;width:100%;max-height:460px}.intro-index{bottom:8px;left:0;padding:12px 15px;gap:10px}.intro-index strong{font-size:45px}.intro-index span{font-size:8px}.intro-vertical{font-size:8px;right:2px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card:last-child{grid-column:auto;display:block}.service-card:last-child .service-photo{height:230px}.service-photo{height:230px}.service-content{padding:22px}.service-content h3{font-size:37px}.service-bottom{flex-direction:column;align-items:flex-start}.service-bottom>span{font-size:9px}.manifesto{min-height:570px}.manifesto>img{object-position:58% center}.manifesto-overlay{background:linear-gradient(90deg,#06141def,#06141dbf 70%,#06141d60)}.manifesto-inner{padding-block:75px}.manifesto h2{font-size:clamp(58px,12vw,90px)}.manifesto p{font-size:13px;max-width:290px}.manifesto-side{right:7px;bottom:14px;font-size:8px}.feature-top,.photo-story-top{display:block}.feature-top>.btn,.photo-story-top>.btn{margin-bottom:20px}.work-grid{grid-template-columns:1fr;gap:16px}.work-shot,.work-small{height:425px}.work-shot>div{bottom:20px;left:20px}.work-shot>div strong{font-size:39px}.photo-chip{top:14px;left:14px;font-size:8px}.approach-head h2{font-size:clamp(58px,13vw,79px)}.approach-head>p{font-size:13px}.step{grid-template-columns:52px 1fr 17px;gap:12px;padding:20px 0}.step>span{font-size:37px}.step h3{font-size:27px}.step p{font-size:12px}.cap-img{height:auto;min-height:280px}.cap-img img{max-height:440px}.cap-visual{padding:9px}.cap-visual>span{left:13px;bottom:14px;font-size:8px;padding:8px}.cap-copy p{font-size:13px}.cap-items span{font-size:12px}.value-grid{grid-template-columns:1fr 1fr}.value-primary{grid-column:1/-1;padding:25px}.value-primary h3{margin-top:10px;font-size:36px}.value-primary p{max-width:none}.value{padding:25px 16px}.value .i{height:25px;width:25px;margin-bottom:20px}.value h3{font-size:25px}.value p{font-size:12px}.value:last-child{grid-column:1/-1}.faq-grid{gap:32px}.faq-side h2{margin:16px 0}.faq-side p{font-size:13px}.faq summary{grid-template-columns:29px 1fr 18px;gap:9px;padding:18px 0;font-size:12px}.faq-answer{padding:0 15px 17px 38px;font-size:12px}.mini-banner-in{gap:14px}.mini-banner p{font-size:25px}.mini-banner a{font-size:9px;white-space:normal}.mini-banner a span{font-size:18px;margin-left:4px}.contact-ribbon{padding:55px 0}.ribbon-in{display:block}.ribbon-in h2{font-size:clamp(48px,11.5vw,70px);margin:16px 0 25px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 15px;padding-top:58px;padding-bottom:55px}.footer-intro,.footer-contact{grid-column:1/-1}.footer h3{font-size:11px}.footer li{margin:8px 0}.footer li a{font-size:12px}.footer-contact .big-call{font-size:30px}.footer-contact p{max-width:300px}.foot-bottom{flex-direction:column;align-items:flex-start;gap:9px;font-size:9px}.float-actions{bottom:max(15px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));gap:8px}.float-actions>a{width:49px;height:49px}.float-actions .i{width:23px;height:23px}.back-top{right:15px;bottom:129px;width:35px;height:35px}.page-hero{height:420px}.page-hero-image{left:18%}.page-hero-shade{background:linear-gradient(90deg,#071923f8 0%,#071923dd 52%,#07192350)}.page-hero-inner{padding-top:77px}.page-hero h1{font-size:clamp(58px,13vw,84px)}.page-hero p{font-size:12px;max-width:320px}.crumb{font-size:8px;margin-top:18px}.page-hero-index{right:8px;bottom:12px;font-size:8px}.about-split-copy h2{font-size:clamp(52px,12vw,78px)}.about-split-copy .lede{font-size:15px}.about-split-copy p{font-size:13px}.about-split-photo{padding:7px}.about-split-photo img{height:auto;max-height:380px}.about-split-photo>span{left:13px;bottom:14px;font-size:8px}.ethos-grid,.story-photo-grid{grid-template-columns:1fr}.ethos-grid article{min-height:210px}.story-photo-grid img{height:auto;max-height:380px}.about-visual-band{height:450px}.about-visual-band>div{width:calc(100% - 34px)}.about-visual-band h2{font-size:clamp(57px,13vw,85px)}.services-open-grid{grid-template-columns:1fr;gap:15px}.services-open-grid p{font-size:16px}.service-detail-grid{gap:28px}.service-detail-photo{padding:7px}.service-detail-photo img{height:auto;min-height:240px;max-height:375px}.service-detail-copy h2{font-size:clamp(49px,11vw,70px)}.service-detail-copy p{font-size:13px}.service-inquiry h2{font-size:clamp(54px,12vw,77px)}.projects-real,.project-concept-grid{grid-template-columns:1fr}.projects-real a:last-child{grid-column:auto}.photo-frame img{height:auto;max-height:450px}.project-concept-grid img{height:260px}.gallery-header{display:block}.filter-controls{margin:8px 0 25px;gap:6px}.filter{font-size:10px;padding:9px 10px}.gallery-mosaic{grid-template-columns:1fr;gap:15px}.gallery-tile img,.gallery-tall img{height:auto;max-height:480px;min-height:200px}.contact-copy h2{font-size:clamp(60px,13vw,82px)}.contact-copy>p{font-size:13px}.contact-line{padding:19px 0}.contact-line a:not(.directions-link){font-size:19px}.contact-line p{font-size:13px}.form-wrap{padding:30px 20px}.form-wrap h3{font-size:49px}.enquiry-form .form-row{grid-template-columns:1fr}.form-note{font-size:10px}.location-graphic{min-height:260px;padding:27px}.location-graphic strong{font-size:55px}.location-graphic>.i{width:40px;height:40px}.legal-body h2{font-size:49px}.legal-body h3{font-size:27px}.legal-body p{font-size:13px}}
@media(max-width:360px){.container{width:calc(100% - 28px)}.hero-copy h1{font-size:clamp(59px,15.3vw,75px)}.hero-pre{font-size:7px}.hero-actions .btn{padding:10px 11px;font-size:8px;gap:7px}.hero-bottom-note{font-size:7px}.hero-visual{padding-left:6px}.hero-stamp{left:0}.image-caption{font-size:6px;padding:8px}.mobile-links a{font-size:26px}.mini-banner p{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
/* final mobile art-direction pass: bring authentic factory photography higher into first screen */
@media(max-width:600px){.hero-copy{padding-top:42px}.hero-tiny{margin-top:22px}.hero-actions{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:8px}.hero-actions .btn{width:100%;font-size:8px;padding-inline:9px;gap:7px}.hero-bottom-note{margin-top:22px}.hero-visual{height:298px}}

/* November 2026 SHIGEON refinements: calmer motion, original video and new branded footer */
.marquee-track{animation-duration:110s}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
a[href^="mailto:"]{overflow-wrap:anywhere;word-break:break-word}
.footer-logo-wrap{background:transparent;padding:0;max-width:185px}
.footer-logo-wrap img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;mix-blend-mode:screen}
.factory-film{background:#0a1e2b;color:#f7f7f3;overflow:hidden;position:relative}
.factory-film:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 95% 30%,rgba(241,93,35,.13),transparent 40%);pointer-events:none}
.factory-film-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,100px)}
.factory-film-text{position:relative;z-index:2}
.film-eyebrow{color:#c5d6dd}
.film-kicker{color:#ec6b38;font-size:11px;letter-spacing:.21em;font-weight:900;margin:36px 0 16px}
.factory-film-text h2,.gallery-film-copy h2{font-size:clamp(48px,5.6vw,91px);line-height:.99;letter-spacing:-.018em;margin:0 0 28px}
.factory-film-text h2 em{color:#fa6b2a}
.film-lede{font-size:clamp(19px,2vw,28px);font-weight:700;line-height:1.35;margin-bottom:18px;max-width:530px}
.film-body{color:#aabec7;font-size:15px;line-height:1.85;max-width:540px;margin-bottom:28px}
.film-points{display:flex;flex-wrap:wrap;gap:12px 25px;margin-bottom:32px}
.film-points>span{color:#cbd9de;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:8px}
.film-point-dot{width:7px;height:7px;background:#ed6735;display:inline-block;border-radius:50%}
.factory-film-media{position:relative;display:flex;justify-content:center;align-items:center;min-width:0;min-height:570px}
.film-image-back{position:absolute;width:72%;height:390px;right:0;top:8%;border:1px solid #65839866;opacity:.34;overflow:hidden}
.film-image-back img{width:100%;height:100%;object-fit:cover}
.film-video-card{width:min(320px,80%);position:relative;z-index:2;padding:10px;background:#132f3f;border:1px solid #5a7581;box-shadow:25px 30px 0 #fd682626,0 24px 56px rgba(0,0,0,.28);margin:0 auto}
.film-video-heading,.gallery-film-video-top{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.16em;font-weight:900;color:#cfdee6;padding:11px 9px 15px}
.film-video-heading>span:last-child,.gallery-film-video-top>span:last-child{margin-left:auto;color:#ef8050}
.factory-video{display:block;width:100%;height:auto;aspect-ratio:464/832;object-fit:contain;background:#081a25;max-height:540px}
.film-video-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#b2c6ce;padding:12px 5px 5px;font-size:9px;letter-spacing:.14em;font-weight:900}
.film-outline{position:absolute;font-family:var(--head);font-size:clamp(27px,4vw,64px);color:transparent;-webkit-text-stroke:1px #5f859447;bottom:20px;right:-16px;letter-spacing:.03em;white-space:nowrap;pointer-events:none}
.film-outline span{color:#fa6b2a;-webkit-text-stroke:0}
.gallery-film{background:#0b2431;color:white;overflow:hidden}
.gallery-film-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(35px,7vw,110px);align-items:center}
.gallery-film-video{width:min(360px,100%);margin:0 auto;padding:12px;background:#102f3d;border:1px solid #4c7181;box-shadow:18px 20px 0 rgba(242,103,41,.18)}
.gallery-film-video .factory-video{max-height:510px}
.gallery-film-copy h2 em{color:#fa6b2a}
.gallery-film-copy p{color:#adbfca;font-size:16px;line-height:1.85;margin-bottom:26px;max-width:480px}
.gallery-film-copy .btn-dark{background:#f36b35;color:#fff;border-color:#f36b35}
.gallery-film-copy .btn-dark:hover{background:#fff;color:#082230}
@media(max-width:920px){
.factory-film-layout,.gallery-film-grid{grid-template-columns:1fr;gap:40px}
.factory-film-media{min-height:unset;padding:0 0 10px}
.factory-film-text h2,.gallery-film-copy h2{font-size:clamp(44px,8vw,70px)}
.factory-film-text .film-kicker{margin-top:22px}
.film-video-card{width:min(345px,85%)}
.film-image-back{left:20%;right:auto;height:70%;top:10%}
.gallery-film-video{order:2}
.gallery-film-copy{order:1}
}
@media(max-width:480px){
.factory-film{padding-top:62px;padding-bottom:66px}
.gallery-film{padding-top:65px;padding-bottom:72px}
.factory-film-text h2,.gallery-film-copy h2{font-size:clamp(39px,11.3vw,54px)}
.film-lede{font-size:18px}
.film-body{font-size:14px}
.film-video-card{width:min(320px,88vw);box-shadow:12px 15px 0 #fd682626}
.film-image-back{height:77%;width:65%;left:29%;top:7%}
.film-video-heading,.gallery-film-video-top{font-size:8px}
.film-video-caption{font-size:8px}
.film-outline{display:none}
.gallery-film-video{width:min(305px,86vw)}
.footer-logo-wrap{max-width:165px}
}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}
