@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#fff;--panel:#f1f6fc;--gold:#2359b8;--bright:#ffbe43;--text:#172c44;--muted:#657386;--line:#dce4ed;--font:'Manrope',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--font)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #316bd6;outline-offset:5px}img{display:block;max-width:100%}[hidden]{display:none!important}p,h1,h2,h3{margin-top:0}.topline{display:flex;justify-content:space-between;gap:20px;padding:9px max(5%,calc((100vw - 1260px)/2));background:#eaf2fc;font-size:12px;color:#46617e}.header{height:108px;max-width:1400px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:0 5%}.brand{display:flex;align-items:center;gap:13px}.brand>img{width:76px;height:76px;object-fit:contain}.brand>span{font-size:24px;font-weight:800;line-height:1.2;letter-spacing:-.8px;white-space:nowrap}.brand small{display:block;letter-spacing:3.5px;color:#7c663d;font-size:10px;font-weight:700;margin-bottom:7px}.brand b{color:#245bb7}.wordmark{font-size:24px;font-weight:800}.wordmark>span{display:block;font-size:11px;letter-spacing:2px;color:var(--gold)}.header nav{display:flex;gap:29px;font-size:14px;font-weight:600;color:#546175}.header nav a:hover{color:#245bb7}.header-contact{background:#214f99;color:white;padding:13px 23px;border-radius:9px;font-size:14px;font-weight:700;white-space:nowrap}.header-contact span{margin-left:22px}.header-contact:hover{background:#173f80}.hero{max-width:1400px;margin:auto;padding:50px 5% 65px;display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center;position:relative}.hero-copy{padding:0 0 10px}.location-tag{font-size:13px;color:#3f6090;font-weight:700;display:flex;align-items:center;gap:8px;margin:0 0 25px}.location-tag svg{height:18px;width:18px;color:#d49623}h1{font-size:clamp(43px,4.4vw,68px);font-weight:800;line-height:1.14;letter-spacing:-2.8px;margin:0 0 25px}h1 span{color:#245bb7}.hero-description{color:#6b7787;font-size:16px;line-height:1.9;margin-bottom:31px}.hero-actions{display:flex;flex-wrap:wrap;gap:23px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 22px;font-size:14px;font-weight:800;border:0;border-radius:9px;transition:background .2s,transform .2s}.gold{background:#ffbd43;color:#26313c;box-shadow:0 7px 20px #f0ac2520}.gold:hover{background:#ffd071;transform:translateY(-2px)}.subtle-link{display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:700;color:#2c507d}.subtle-link:hover{color:#1a67d5}.hero-service-note{display:flex;gap:0;font-size:12px;color:#778293;margin-top:30px}.hero-service-note>span+span:before{content:'·';margin:0 8px;color:#c4922c}.hero-visual{height:500px;position:relative;padding-left:16px}.hero-visual:before{content:'';position:absolute;inset:17px -15px 35px 55px;background:#edf4fd;border-radius:80px 24px 24px 24px}.photo-main{position:absolute;left:2%;top:0;width:57%;height:440px;border-radius:80px 15px 15px 15px;overflow:hidden;box-shadow:0 15px 36px #1c3b5119}.photo-main img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-secondary{position:absolute;right:0;top:64px;width:38%;height:358px;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px #19395319}.photo-secondary img{width:100%;height:100%;object-fit:cover}.photo-secondary:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#173049b0)}.photo-secondary>span{position:absolute;bottom:18px;left:17px;right:10px;z-index:1;color:white;font-size:9px;font-weight:700;letter-spacing:1.3px}.visual-caption{position:absolute;left:10%;bottom:8px;display:flex;align-items:center;gap:15px;border:1px solid #e3eaf2;border-radius:13px;background:white;padding:17px 27px 17px 17px;box-shadow:0 12px 35px #203c5610;font-weight:800;font-size:15px}.caption-mark{display:flex;justify-content:center;align-items:center;background:#ffca61;color:#324457;width:46px;height:46px;border-radius:10px;font-size:23px}.visual-caption small{display:block;font-size:11px;font-weight:500;color:#778698;margin-top:3px}.service-strip{border-top:1px solid #e8edf2;border-bottom:1px solid #e8edf2;max-width:1260px;margin:auto;padding:25px 25px;display:flex;justify-content:space-around;align-items:center;gap:20px;color:#536c8b;font-weight:700;font-size:13px;letter-spacing:1px}.service-strip i{font-style:normal;color:#edaf34;font-size:24px}.section{max-width:1400px;margin:auto;padding:88px 5%}.eyebrow{color:#2c67b7;font-weight:800;letter-spacing:2.2px;font-size:11px;margin:0 0 19px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:36px}h2{font-size:clamp(31px,3vw,44px);line-height:1.25;letter-spacing:-1.7px;font-weight:800;margin:0}h2 span{color:#75859a}.section-heading>p{color:#6f7f91;font-size:14px;line-height:1.9;margin:0 0 3px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-card{background:#eff5fc;border:1px solid #e2ebf5;border-radius:16px;position:relative;overflow:hidden}.service-simple{background:#fff8e8;border-color:#f4e7c8}.service-body{padding:35px 38px;position:relative;display:flex;align-items:flex-start;flex-direction:column;min-height:280px}.service-number{color:#90abc9;font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:23px}.service-simple .service-number{color:#a3823e}.service-body h3{font-size:25px;letter-spacing:-.8px;margin:0 0 12px;font-weight:800}.service-body>p{font-size:14px;color:#6f7c8d;max-width:400px;line-height:1.9;margin:0 0 22px}.service-body>a{margin-top:auto;color:#285c9a;font-size:13px;font-weight:800;display:flex;justify-content:space-between;align-items:center;width:100%}.service-body>a>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;border:1px solid #c7d7e8;font-size:20px}.service-simple .service-body>a{color:#8b671f}.service-simple .service-body>a>span{border-color:#dfce9f}.works{padding-top:12px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo{padding:0;border:0;background:none;text-align:left;width:100%;overflow:hidden;color:var(--text)}.photo img{width:100%;height:370px;object-fit:cover;border-radius:14px;transition:filter .25s;filter:saturate(.9)}.photo:hover img{filter:saturate(1.15)}.photo>span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;font-size:13px;color:#59697f;font-weight:600}.photo b{font-size:20px;color:#3b659f}.photo:nth-child(n+4){margin-top:12px}#gallery-status{color:var(--muted);font-size:14px}#gallery-status:empty{display:none}.contact{background:#edf4fc;max-width:none;padding:76px max(5%,calc((100vw - 1260px)/2));display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-title h2{font-size:clamp(37px,4vw,58px);letter-spacing:-2px}.contact-title h2 span{color:#245bb7}.contact-title>p:last-child{color:#6b7d93;font-size:15px;margin:25px 0}.contact-details{display:grid;gap:23px}.person{padding-bottom:23px;border-bottom:1px solid #d3dfed}.person-name{font-size:13px;color:#567598;font-weight:700;display:block;margin-bottom:4px}.phone{font-size:clamp(24px,2.8vw,36px);letter-spacing:-1px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:12px}.phone span{font-size:25px;color:#2d68b4}.whatsapp{font-size:12px;display:inline-block;margin-top:8px;color:#40689b;font-weight:600}.address .eyebrow{margin:0 0 10px}address{font-style:normal;font-size:14px;line-height:1.9;color:#647991;margin-bottom:12px}footer{padding:31px 5%;max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .brand>img{width:56px;height:56px}footer .brand>span{font-size:19px}footer>p{font-size:12px;color:#7c8796;margin:0}footer>div{display:flex;gap:22px;font-size:12px;color:#536982}.admin-link{color:#8c96a3}.mobile-contact{display:none}.skip{position:fixed;top:-100px;left:20px;z-index:50;background:#fff;color:#224d8d;padding:12px}.skip:focus{top:10px}dialog{padding:45px 23px 20px;background:#fff;color:var(--text);border:0;border-radius:14px;max-width:94vw;max-height:95dvh;box-shadow:0 20px 80px #142d4455}dialog::backdrop{background:#142d44c9;backdrop-filter:blur(5px)}dialog img{max-height:75dvh;max-width:85vw;object-fit:contain;margin:auto}dialog p{font-size:14px;margin:12px 0 0}.close-lightbox{position:absolute;top:0;right:8px;width:40px;height:40px;border:0;background:none;font-size:30px;color:#29466a}.admin-main input{background:white;color:#21374e;border-color:#c5d4e6;border-radius:8px}.admin-main .refresh,.admin-main .admin-card button{color:#275da7;border-color:#bacbe0}.admin-main .admin-card{background:#f4f8fd;border-radius:10px}.admin-main .admin-card img{border-radius:8px}
@media(max-width:1050px){.header{gap:20px}.brand>span{font-size:21px}.brand>img{width:67px;height:67px}.header nav{gap:19px;font-size:12px}.header-contact{padding:12px 16px}.hero{gap:24px;padding-top:38px;padding-bottom:45px}.hero-visual{height:430px}.photo-main{height:370px}.photo-secondary{height:295px}.visual-caption{left:0;bottom:4px;padding:13px;font-size:13px}.hero-actions{gap:18px}h1{font-size:48px;letter-spacing:-2px}.hero-description{font-size:14px}.photo img{height:310px}.section{padding-top:70px;padding-bottom:70px}.works{padding-top:5px}.service-body{padding:29px}.contact{gap:7%}.phone{font-size:29px}}
@media(max-width:760px){.topline{justify-content:center;padding:7px 4%;font-size:10px}.topline>a{display:none}.header{height:90px;padding:0 5%;gap:10px}.brand{gap:9px}.brand>img{width:63px;height:63px}.brand>span{font-size:19px;letter-spacing:-.7px}.brand small{font-size:9px;letter-spacing:2.5px;margin-bottom:5px}.header nav{display:none}.header-contact{font-size:12px;padding:10px 12px}.header-contact span{margin-left:8px}.hero{padding:32px 6% 38px;grid-template-columns:1fr;gap:35px}.hero-copy{padding:0}.location-tag{font-size:12px;margin-bottom:18px}h1{font-size:clamp(42px,10vw,61px);line-height:1.14;letter-spacing:-2px;margin-bottom:20px}h1 br:last-child{display:none}.hero-description{font-size:14px;line-height:1.8;margin-bottom:23px}.hero-actions{gap:20px}.button{padding:14px 18px;font-size:13px;gap:20px}.subtle-link{font-size:12px;gap:10px}.hero-service-note{font-size:11px;margin-top:22px}.hero-visual{height:356px;max-width:510px;width:100%;margin:auto;padding:0}.hero-visual:before{inset:15px -5px 25px 40px;border-top-left-radius:60px}.photo-main{left:0;width:58%;height:310px;border-top-left-radius:55px}.photo-secondary{top:39px;width:37%;height:256px}.photo-secondary>span{font-size:7px;left:9px;bottom:13px;letter-spacing:.8px}.visual-caption{bottom:0;left:7%;padding:11px 17px 11px 11px;border-radius:10px;font-size:12px;gap:11px}.caption-mark{width:38px;height:38px;font-size:20px}.visual-caption small{font-size:10px}.service-strip{padding:17px 6%;font-size:9px;letter-spacing:.2px;gap:10px;flex-wrap:wrap}.service-strip i{font-size:18px}.service-strip>span:last-child,.service-strip>i:last-of-type{display:none}.section{padding:52px 6%}.section-heading{display:block;margin-bottom:26px}.eyebrow{font-size:10px;margin-bottom:15px}.section-heading>p{margin-top:20px;font-size:13px}.section-heading>a{margin-top:20px}h2{font-size:30px;letter-spacing:-1.2px}.service-grid{grid-template-columns:1fr;gap:16px}.service-body{padding:27px;min-height:0}.service-number{margin-bottom:17px}.service-body h3{font-size:23px}.service-body>p{font-size:14px}.service-body>a{margin-top:1px}.works{padding-top:12px}.gallery{grid-template-columns:1fr 1fr;gap:18px 14px}.photo:first-child{grid-column:1/-1}.photo:first-child img{height:360px;object-position:center 53%}.photo img{height:245px;border-radius:10px}.photo>span{font-size:11px;padding:12px 0;align-items:flex-start}.photo b{font-size:17px}.contact{grid-template-columns:1fr;padding:53px 6%;gap:27px}.contact-title h2{font-size:39px;letter-spacing:-1.5px}.contact-title>p:last-child{font-size:14px;margin-bottom:5px}.phone{font-size:31px}.contact-details{gap:22px}footer{padding:26px 6% 96px;gap:20px;flex-wrap:wrap}footer>p{order:3;width:100%;font-size:11px}footer>div{font-size:11px;gap:16px}.mobile-contact{display:block;position:fixed;left:0;right:0;bottom:0;z-index:5;background:#214f99;color:white;padding:14px 6% max(14px,env(safe-area-inset-bottom));box-shadow:0 -3px 16px #13366b15}.mobile-contact>a{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:800}.mobile-contact span{font-size:11px;font-weight:500}}@media(max-width:375px){.brand>span{font-size:17px}.brand>img{width:55px;height:55px}.header-contact{font-size:11px;padding:9px 10px}h1{font-size:41px}.hero-actions{gap:16px}.hero-visual{height:320px}.photo-main{height:278px}.photo-secondary{height:228px}.phone{font-size:27px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* Crane-company reference direction: full-width opening, straight geometry, direct contact. */
:root{--gold:#c73327;--bright:#ffc34b}.topline{background:#f4f5f6;color:#586370}.header{height:112px}.header-contact{background:#c73327;border-radius:2px}.header-contact:hover{background:#a6271d}.brand b{color:#be3428}.header nav{gap:24px;font-size:13px}.header nav a:hover{color:#c73327}.button{border-radius:2px;padding:17px 25px}.gold{background:#f4bd48;color:#202d3b;box-shadow:none}.gold:hover{background:#ffd27c}.eyebrow{color:#b83b2e}.hero-banner{position:relative;min-height:580px;background:#eef0f1;overflow:hidden}.banner-image{position:absolute;inset:0 0 0 44%}.banner-image>img{width:100%;height:100%;object-fit:cover;object-position:center 59%}.hero-banner:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#f3f4f4 0%,#f3f4f4 33%,#f3f4f4e8 43%,#f3f4f400 67%)}.banner-inner{position:relative;z-index:1;max-width:1400px;margin:auto;padding:75px 5% 100px}.banner-copy{max-width:540px}.banner-copy .eyebrow{display:flex;align-items:center;gap:13px;font-size:12px;letter-spacing:2px;margin-bottom:25px}.banner-copy .eyebrow:before{content:'';height:2px;width:32px;background:#b83b2e}.banner-copy h1{font-size:clamp(48px,5.3vw,76px);letter-spacing:-2.5px;font-weight:800;line-height:1.08;margin-bottom:26px}.banner-copy h1 span{color:#bf3428}.banner-copy>p:not(.eyebrow){color:#62707e;font-size:18px;line-height:1.8;margin-bottom:30px}.banner-controls{position:absolute;z-index:2;bottom:0;right:0;display:flex;align-items:center;background:#fff;padding:17px 5% 17px 27px;gap:30px;border-top-left-radius:0;max-width:65%;box-shadow:0 -5px 22px #20334409}.banner-controls>span{font-size:12px;color:#576572}.banner-controls>div{display:flex;gap:6px}.slide-dot{width:43px;height:43px;background:white;color:#677481;border:1px solid #dce1e7;font-size:12px;font-weight:700}.slide-dot.active{background:#c73327;color:white;border-color:#c73327}.quick-contact{max-width:1260px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:auto;padding:30px 0;border-bottom:1px solid #e5e8ec;align-items:center}.quick-contact>div>span{display:block;font-size:10px;font-weight:800;letter-spacing:1.4px;color:#a07121;margin-bottom:5px}.quick-contact strong{font-size:20px}.quick-contact>a{position:relative;padding-left:30px;border-left:1px solid #e3e7eb;font-size:24px;font-weight:800;letter-spacing:-.7px}.quick-contact small{font-size:12px;display:block;font-weight:500;color:#78838f;letter-spacing:0;margin-bottom:3px}.quick-contact b{font-size:22px;margin-left:18px;color:#c73327}.about{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center}.about-photo{position:relative;max-width:480px}.about-photo>img{width:100%;height:410px;object-fit:cover;object-position:center 45%}.about-photo>div{position:absolute;bottom:-20px;right:-22px;padding:23px 32px;background:#f6c357;color:#263542;font-size:23px;font-weight:800;border-left:5px solid white}.about-photo>div>span{font-size:10px;letter-spacing:3px;font-weight:700;display:block;margin-bottom:4px}.about-copy h2{font-size:41px;margin-bottom:25px}.about-copy h2 span{color:#c73327}.about-copy>p:not(.eyebrow){font-size:15px;color:#6d7885;line-height:1.9;margin-bottom:18px}.about-services{display:flex;gap:25px;border-top:1px solid #e4e7eb;padding-top:20px;margin-bottom:27px;font-weight:700;font-size:13px}.about-services>span:before{content:'✓';color:#c73327;margin-right:8px}.services{background:#f5f6f7;max-width:none;padding-left:max(5%,calc((100vw - 1260px)/2));padding-right:max(5%,calc((100vw - 1260px)/2))}.service-card{border-radius:3px;background:white;border-color:#e4e6e9;border-top:3px solid #c73327}.service-simple{border-top-color:#e8b33c;background:white}.service-body>a{color:#b4362a}.service-body>a>span{border-radius:0;border-color:#ecd6d2}.service-body h3{font-size:27px}.service-number{color:#959da5}.section-heading h2 span{color:#727d87}.works{padding-top:80px}.photo img{border-radius:2px}.photo b{color:#b8392c}.contact{background:#f2f4f6}.contact-title h2 span{color:#c73327}.phone span,.person-name,.whatsapp{color:#a9372c}.subtle-link{color:#334b63}.mobile-contact{background:#c73327}.brand>span{letter-spacing:-.6px}footer .brand b{color:#bf3428}
@media(max-width:1300px){.quick-contact{margin:0 5%}.quick-contact>a{font-size:21px}.quick-contact b{margin-left:8px}.quick-contact strong{font-size:18px}}@media(max-width:1050px){.header nav{gap:15px;font-size:12px}.brand>span{font-size:19px}.header-contact{padding:12px}.banner-copy h1{font-size:58px}.hero-banner{min-height:550px}.banner-copy>p:not(.eyebrow){font-size:16px}.about{gap:7%}.about-copy h2{font-size:34px}.about-photo>img{height:390px}.quick-contact{gap:20px}.quick-contact>a{padding-left:20px;font-size:19px}}
@media(max-width:760px){.header{height:88px}.header-contact{border-radius:2px}.hero-banner{min-height:0;display:flex;flex-direction:column}.banner-inner{padding:34px 6% 30px;order:0;margin:0}.banner-copy{max-width:none}.banner-copy h1{font-size:47px;letter-spacing:-1.7px;margin-bottom:19px}.banner-copy .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:20px}.banner-copy>p:not(.eyebrow){font-size:15px;margin-bottom:23px}.banner-image{position:relative;inset:auto;order:1;height:360px;width:100%}.banner-image>img{object-position:center 60%}.hero-banner:after{display:none}.banner-controls{position:relative;order:2;max-width:none;padding:12px 6%;justify-content:space-between;gap:13px;width:100%}.banner-controls>span{font-size:11px}.slide-dot{width:35px;height:35px}.quick-contact{grid-template-columns:1fr 1fr;gap:20px 15px;margin:0 6%;padding:25px 0}.quick-contact>div{grid-column:1/-1}.quick-contact>a{border-left:0;padding-left:0;font-size:18px;letter-spacing:-.6px}.quick-contact b{display:none}.quick-contact strong{font-size:19px}.quick-contact small{font-size:11px}.about{grid-template-columns:1fr;gap:49px}.about-photo{max-width:none;margin-right:18px}.about-photo>img{height:340px}.about-photo>div{right:-18px;padding:18px 24px;font-size:21px}.about-copy h2{font-size:33px}.about-copy>p:not(.eyebrow){font-size:14px}.about-services{gap:20px;font-size:12px}.services{padding-left:6%;padding-right:6%}.works{padding-top:50px}.service-body h3{font-size:23px}.banner-copy .hero-actions{gap:23px}.banner-copy .button{font-size:13px;padding:15px 20px}}
/* Logo-led title and three-photo composition */
.topline{background:#e4eaf0;align-items:center;padding-top:9px;padding-bottom:9px}.top-contacts{display:flex;flex-direction:column;gap:2px;font-size:12px;text-align:right;line-height:1.65}.top-contacts a:hover{color:#b4362a}.hero-banner{background:#e3e9ec;min-height:660px}.hero-banner:after{display:none}.banner-inner{padding:27px 5% 60px;min-height:660px;display:flex;align-items:center;pointer-events:none}.banner-copy{max-width:46%;pointer-events:auto}.title-logo{width:157px;height:157px;object-fit:contain;margin:0 0 14px;background:transparent;border:0;box-shadow:none}.banner-copy h1{font-size:clamp(44px,4.7vw,66px);margin-bottom:21px;line-height:1.09}.banner-copy>p:not(.eyebrow){font-size:17px;color:#536678;margin-bottom:26px}.banner-collage{position:absolute;top:45px;right:max(5%,calc((100vw - 1260px)/2));bottom:45px;width:48%;display:grid;grid-template-columns:1.13fr 1fr;grid-template-rows:1fr 1fr;gap:12px}.banner-collage img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:3px}.collage-main{grid-row:1 / 3;object-position:50% 58%}.collage-top{object-position:50% 48%}.collage-bottom{object-position:50% 59%}.quick-contact{background:#fff}.services{background:#eaf0f4}.contact{background:#e2eaf0}.service-simple{background:#fff8e7}.about-photo>div{background:#edbd53}
@media(min-width:1500px){.banner-collage{width:610px}.banner-copy{max-width:570px}}@media(max-width:1050px){.hero-banner,.banner-inner{min-height:630px}.banner-copy h1{font-size:49px}.banner-copy{max-width:47%}.banner-collage{gap:9px;top:45px;bottom:45px;width:46%}.title-logo{width:145px;height:145px}.banner-copy>p:not(.eyebrow){font-size:15px}}
@media(max-width:760px){.topline{justify-content:space-between;padding:9px 5%;gap:12px}.topline>span{max-width:125px;font-size:9px;line-height:1.5}.top-contacts{font-size:10px;flex-shrink:0;gap:3px}.hero-banner{min-height:0}.banner-inner{min-height:0;padding:25px 6% 29px;display:block;order:0}.banner-copy{max-width:none}.title-logo{width:132px;height:132px;margin-bottom:14px}.banner-copy h1{font-size:44px;letter-spacing:-1.6px}.banner-copy>p:not(.eyebrow){font-size:15px}.banner-collage{position:relative;inset:auto;order:1;width:88%;height:380px;margin:0 6% 29px;gap:9px;grid-template-columns:1.08fr 1fr}.banner-collage img{border-radius:3px}.collage-main{object-position:50% 55%}.collage-top{object-position:50% 40%}.collage-bottom{object-position:50% 57%}}@media(max-width:375px){.top-contacts{font-size:9px}.banner-copy h1{font-size:40px}.banner-collage{height:340px}}
/* Staggered collage entrance; keep motion optional. */
.banner-collage{perspective:1000px}
.banner-collage img{border:3px solid #fff;box-shadow:0 7px 20px #23394d16;animation:collage-enter .85s cubic-bezier(.22,.7,.2,1) both;will-change:auto}
.banner-collage .collage-main{animation-delay:.08s}
.banner-collage .collage-top{animation-delay:.24s}
.banner-collage .collage-bottom{animation-delay:.4s}
@keyframes collage-enter{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.banner-collage img{animation:none!important;transform:none;opacity:1}}
/* Four equal collage tiles, including a closer view of the work vehicle. */
.banner-collage{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));overflow:hidden;padding:0 0 5px 0}
.banner-collage .collage-main{grid-row:auto;object-position:50% 35%}
.banner-collage .collage-top{object-position:50% 45%}
.banner-collage .collage-bottom{object-position:50% 46%}
.banner-collage .collage-detail{object-position:50% 92%;animation-delay:.56s}
@media(max-width:760px){.banner-collage{height:440px;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:375px){.banner-collage{height:380px}}
/* Larger supporting text and a warm orange palette. */
:root{--gold:#c65314;--bright:#f6aa52;--muted:#566373}
.topline{background:#f3e4d6;font-size:14px;color:#5c4d43}.top-contacts{font-size:14px;gap:3px}.top-contacts a:hover{color:#a8440f}
.brand b,footer .brand b{color:#c45113}.header nav{font-size:16px;gap:24px}.header nav a:hover{color:#bd4b0d}.header-contact{background:#c45113;font-size:16px}.header-contact:hover{background:#a4400b}
.hero-banner{background:#eee3d7}.banner-copy h1 span{color:#c45113}.banner-copy>p:not(.eyebrow){font-size:20px;line-height:1.8;color:#555f68}.button{font-size:16px}.gold{background:#ed9b42;color:#292c30}.gold:hover{background:#f6ad5b}.subtle-link{font-size:16px;color:#944414}
.eyebrow{font-size:14px;color:#ac470f;letter-spacing:1.6px}.quick-contact>div>span{font-size:13px;color:#a14d17}.quick-contact small{font-size:15px;color:#596571}.quick-contact b{color:#c45113}
.about-copy h2 span{color:#c45113}.about-copy>p:not(.eyebrow){font-size:18px;line-height:1.85;color:#56616d}.about-services{font-size:16px}.about-services>span:before{color:#c45113}.about-photo>div{background:#f0a34d}.about-photo>div>span{font-size:13px}
.services{background:#f7eee5}.section-heading>p{font-size:17px;color:#596773}.service-card{border-top-color:#d26521}.service-simple{background:#fff7ed;border-top-color:#e8a65c}.service-number{font-size:14px;color:#716d67}.service-body>p{font-size:17px;line-height:1.85;color:#58636f}.service-body>a,.service-simple .service-body>a{font-size:16px;color:#a44913}.service-body>a>span{border-color:#e5c3a7}
.photo>span{font-size:16px;color:#53616f;line-height:1.6}.photo b{color:#bd5016}.contact{background:#f0e5da}.contact-title h2 span{color:#c45113}.contact-title>p:last-child{font-size:18px;color:#576471}.person-name{font-size:17px;color:#9d4515}.phone span,.whatsapp{color:#a74a15}.whatsapp{font-size:16px}address{font-size:17px;color:#58616a;line-height:1.9}.contact .subtle-link{font-size:16px}
footer>p,footer>div{font-size:15px;color:#606a73}.admin-link{color:#65707a}.mobile-contact{background:#c45113}#gallery-status{font-size:16px}
@media(max-width:1100px){.header{gap:16px}.header nav{font-size:15px;gap:17px}.header-contact{font-size:15px;padding:12px 16px}.brand>span{font-size:20px}.brand>img{width:66px;height:66px}}
@media(max-width:900px) and (min-width:761px){.header nav{gap:12px;font-size:14px}.header-contact{padding:11px 13px}.header{gap:12px}.brand>span{font-size:18px}.brand>img{width:58px;height:58px}}
@media(max-width:760px){.topline{font-size:12px;gap:12px}.topline>span{font-size:12px;max-width:130px;line-height:1.55}.top-contacts{font-size:12px;gap:4px}.header-contact{font-size:14px;padding:11px 13px}.banner-copy>p:not(.eyebrow){font-size:18px;line-height:1.8}.banner-copy .button,.button{font-size:16px;padding:15px 20px}.subtle-link{font-size:15px}.quick-contact>div>span{font-size:13px}.quick-contact small{font-size:14px}.quick-contact>a{font-size:19px}.eyebrow{font-size:13px}.about-copy>p:not(.eyebrow){font-size:17px}.about-services{font-size:15px;flex-wrap:wrap;gap:12px 20px}.section-heading>p{font-size:16px}.service-body>p{font-size:17px}.service-body>a,.service-simple .service-body>a{font-size:16px}.photo>span{font-size:14px}.contact-title>p:last-child{font-size:17px}.person-name{font-size:16px}.whatsapp{font-size:16px}address{font-size:17px}footer>p,footer>div{font-size:14px}.mobile-contact>a{font-size:16px}.mobile-contact span{font-size:13px}}
@media(max-width:390px){.topline{flex-direction:column;align-items:flex-start;gap:6px}.topline>span{max-width:none;font-size:12px}.top-contacts{text-align:left;font-size:12px}.header-contact{font-size:13px;padding:10px 12px}.header .brand>span{font-size:17px}.header .brand>img{width:54px;height:54px}.quick-contact>a{font-size:18px}.mobile-contact span{font-size:12px}}
/* Neutral backgrounds, vivid orange accents. */
:root{--gold:#dc4b08;--bright:#ff6b16}
.topline{background:#edf0f3;color:#53616e}.hero-banner{background:#e8edf1}.services{background:#f0f3f6}.contact{background:#e9eef3}.service-simple{background:#fff}
.brand b,footer .brand b,.banner-copy h1 span,.about-copy h2 span,.contact-title h2 span{color:#e4510b}
.header-contact,.mobile-contact{background:#ea550c}.header-contact:hover{background:#cf4506}
.gold{background:#ff6b16;color:#241b14}.gold:hover{background:#ff812f}
.eyebrow,.top-contacts a:hover,.header nav a:hover,.quick-contact>div>span,.quick-contact b,.about-services>span:before,.photo b,.person-name,.phone span,.whatsapp,.subtle-link{color:#c54308}
.service-card,.service-simple{border-top-color:#f56315}.service-body>a,.service-simple .service-body>a{color:#c54308}.service-body>a>span{border-color:#efb494}.about-photo>div{background:#ff751f;color:#251b13}
/* Clearer top contact details and larger navigation. */
.top-contacts{font-size:15px;line-height:1.65;gap:4px}.top-contacts>a{display:flex;justify-content:flex-end;gap:12px}.top-contacts .contact-name{color:#c54308;font-weight:800}.top-contacts strong{color:#203044;font-weight:800;letter-spacing:.1px}
.header nav{font-size:18px;font-weight:800;gap:25px}.header{gap:22px}.header-contact{font-weight:800}.header-contact span:empty{display:none}
@media(max-width:1150px) and (min-width:901px){.header{padding-left:4%;padding-right:4%;gap:16px}.header nav{font-size:17px;gap:20px}.brand>span{font-size:19px}.brand>img{width:61px;height:61px}}
@media(max-width:900px) and (min-width:761px){.header{flex-wrap:wrap;height:auto;padding-top:14px;padding-bottom:16px;gap:12px 20px}.header nav{order:3;width:100%;justify-content:center;font-size:17px;gap:28px}.header-contact{margin-left:auto}}
@media(max-width:760px){.top-contacts{font-size:13px}.top-contacts>a{gap:9px}.topline>span{max-width:110px;font-size:11px}.topline{gap:9px}}
@media(max-width:430px){.topline{flex-direction:column;align-items:flex-start;gap:6px}.topline>span{max-width:none;font-size:12px}.top-contacts{text-align:left;font-size:13px}.top-contacts>a{justify-content:flex-start}}
.banner-collage .collage-drone{object-position:65% 50%}
.banner-collage .collage-drone-wide{object-fit:contain;object-position:center;background:#f4f6f8}
.gallery .photo img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
@media(max-width:760px){.gallery .photo img{height:auto;aspect-ratio:4/3}.gallery .photo:first-child img{height:auto;aspect-ratio:4/3}}
/* Preserve the full photographs in a naturally proportioned gallery. */
.gallery{display:block;columns:3;column-gap:24px}
.gallery .photo,.gallery .photo:nth-child(n+4){display:block;break-inside:avoid;margin:0 0 24px;width:100%}
.gallery .photo img,.gallery .photo:first-child img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:3px}
.gallery .photo>span{padding-top:12px}
.about-photo>img{width:100%;height:auto;object-fit:contain;aspect-ratio:auto}
.about-photo>div{position:relative;bottom:auto;right:auto;border-left:0;padding:18px 24px}
.banner-collage .collage-drone-wide{object-fit:contain;object-position:center;background:#e2e8ee}
@media(max-width:900px){.gallery{columns:2;column-gap:18px}}
@media(max-width:540px){.gallery{columns:1}.gallery .photo,.gallery .photo:nth-child(n+4){margin-bottom:24px}.gallery .photo>span{font-size:15px}}
/* Show complete source frames in the working-photo gallery at every breakpoint. */
#gallery .photo{height:auto;max-height:none;overflow:visible}
#gallery .photo img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center;transform:none}
.banner-collage .collage-detail{object-fit:contain!important;object-position:center;background:#e2e8ee}
/* Keep all four photographs complete within equally sized collage tiles. */
.banner-collage img{object-fit:contain!important;object-position:center!important;background:#f5f7f9}
.tonnage{color:#dc4b08;font-weight:800}

/* A portrait alongside three complete landscape photographs. */
.banner-collage{display:grid;columns:auto;grid-template-columns:1fr 1.15fr;grid-template-rows:auto;gap:14px;align-items:center;top:45px;bottom:45px;overflow:visible;padding:0}
.banner-collage img{display:block;width:100%;height:auto;min-height:0;margin:0;object-fit:contain!important;object-position:center!important;background:transparent!important;border:0;border-radius:5px;box-shadow:0 8px 24px #23394d18}
.banner-collage .collage-main{grid-row:auto}
.collage-landscapes{display:grid;gap:14px;align-content:center}
@media(max-width:760px){.banner-collage{position:relative;inset:auto;height:auto;width:88%;margin:0 6% 32px;gap:10px}.collage-landscapes{gap:10px}}

/* Framed photographs with both columns aligned at the top. */
.banner-collage{align-items:center}
.collage-left,.collage-landscapes{display:grid;gap:14px;align-self:start}
.banner-collage img{border:3px solid #fff;box-shadow:0 7px 22px #23394d20;border-radius:6px}
@media(max-width:760px){.collage-left,.collage-landscapes{gap:10px}}
