/* Photographic edition. Before this redesign: saved Site Version 7. */
:root{
  --scene-jewel:url('/assets/scenes/jewel-day.webp');
  --scene-architecture:url('/assets/scenes/jewel-night.webp');
  --scene-waterfront:url('/assets/scenes/singapore-waterfront.webp');
}
.photo-design{background:#edf3fa;--muted:#51627a;isolation:isolate}
.site-scene{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:linear-gradient(110deg,#f1f6fbeF,#edf4fbeD),var(--scene-architecture) center 38%/cover no-repeat}
.site-scene>span{position:absolute;bottom:6%;right:-1%;font:700 italic clamp(90px,19vw,360px)/1 'Space Grotesk',sans-serif;letter-spacing:-.075em;color:#143e7a06;user-select:none}
.site-header{background:#fff;box-shadow:0 5px 26px #071b3c0b}
.brand-strip{background:#fffffff5;border-bottom-color:#d8e2f0}
.photo-watermark{position:absolute;z-index:0;right:-.025em;bottom:10px;pointer-events:none;user-select:none;white-space:nowrap;font:700 italic clamp(95px,20vw,310px)/.8 'Space Grotesk',sans-serif;letter-spacing:-.075em;color:#ffffff0e}

/* Keep the uploaded Jewel photograph within a readable, balanced hero. */
.hero{background:#071e43;min-height:690px;height:clamp(690px,78svh,820px)}
.hero-image{inset:0 0 0 auto;width:56%;max-width:1100px;height:100%;object-position:50% 20%;opacity:1;filter:saturate(.85);mask-image:linear-gradient(90deg,transparent,#000 22%);z-index:-3;transform:none!important;will-change:auto}
.hero-shade{z-index:-2;background:linear-gradient(90deg,#071e43 0%,#071e43f7 30%,#071e43d1 43%,#071e4370 56%,#071e431a 77%,#071e4333 100%),linear-gradient(0deg,#071e43b3,transparent 38%)}
.hero-inner{position:relative;z-index:1;padding-top:48px;padding-bottom:55px}
.hero h1{max-width:790px;font-size:clamp(56px,5.2vw,78px)}
.hero h1>span{color:#b6d2ff}
.hero-description{color:#e1ebfa;max-width:475px}
.hero-metrics{padding-top:22px;border-top:1px solid #ffffff28;margin-top:30px}
.hero .photo-watermark{right:var(--gutter);bottom:28px;font-size:clamp(65px,7vw,112px);color:#ffffff08;z-index:-1}
.hero-discover{bottom:36px}
@media(min-width:1800px){.hero-image{width:52%;max-width:1100px;object-position:50% 18%}.hero-shade{background:linear-gradient(90deg,#071e43 0%,#071e43ed 34%,#071e4399 51%,#071e431a 70%,#071e4333 100%),linear-gradient(0deg,#071e43b3,transparent 38%)}}
@media(max-width:1100px){.hero-image{width:65%}.hero h1{font-size:clamp(50px,6vw,66px)}}
@media(max-width:800px){.hero{height:auto;min-height:650px}.hero-image{width:100%;max-width:none;object-position:50% 23%}.hero-shade{background:linear-gradient(90deg,#071e43f5,#071e43d9 48%,#071e438f),linear-gradient(0deg,#071e43d9,transparent 70%)}.hero-inner{padding-top:54px;padding-bottom:50px}.hero h1{font-size:clamp(46px,7.1vw,65px)}.hero .photo-watermark{font-size:12vw;bottom:20px}}
@media(max-width:520px){.hero{min-height:0}.hero h1{font-size:clamp(37px,10.5vw,51px)}.hero-inner{padding-top:48px;padding-bottom:45px}.hero-image{object-position:50% 26%}.hero-shade{background:linear-gradient(90deg,#071e43f2,#071e43d1),linear-gradient(0deg,#071e43cc,transparent 70%)}.hero-metrics{gap:23px 0}.hero .photo-watermark{right:20px;bottom:13px;font-size:12vw;color:#ffffff08}}

/* Opaque surfaces keep product photography and small type independent of scenery. */
.products-section,.why-section,.industries-section,.content-section,.about-section,.catalogue,.map-section{position:relative}
.product-card,.industry-card,.service-card,.catalogue-card,.catalogue-photo,.catalogue-detail-photo,.quote-item{background:#fff}
.product-visual,.catalogue-photo,.catalogue-detail-photo,.quote-item-photo{background:#fff}
.product-card,.industry-card,.service-card,.catalogue-card{border-color:#d8e3f0;box-shadow:0 8px 24px #0d29480a;border-radius:7px}
.product-info p,.industry-card>p,.why-card p,.service-card>p{color:#51627a}
.product-card:hover,.industry-card:hover,.service-card:hover,.catalogue-card:hover{background:#fff;border-color:#efa785;box-shadow:0 13px 29px #0a2d5910}
.section-aside>p,.section-description{color:#465b76}
.quick-search{background:#fffffff5;border-color:#d6e2f1;box-shadow:0 8px 25px #10336005}
.why-section{padding-top:78px;padding-bottom:78px}
.why-grid{gap:20px}
.why-card{background:#fff;border:1px solid #d9e3f1;border-radius:7px;padding:27px 24px;box-shadow:0 8px 24px #0d294808}
.why-card h3{font-size:19px}
.industry-card{background:#fff}

/* Waterfront bands and quiet brand watermarks. */
.task-guide,.site-ending{position:relative;isolation:isolate;overflow:hidden;background-color:#071e43;background-image:linear-gradient(100deg,#071e43ef,#0a2851dc),var(--scene-waterfront);background-size:cover;background-position:center 59%;background-repeat:no-repeat}
.cta-band,.site-footer{position:relative;background:transparent}
.task-guide{padding-top:76px;background-image:linear-gradient(100deg,#071e43ed,#09254bd6),var(--scene-waterfront)}
.task-guide:before{opacity:.4}
.task-guide>.wrap,.cta-band>.wrap,.site-footer>.wrap{position:relative;z-index:1}
.task-guide .photo-watermark{bottom:0;color:#ffffff0c}
.task-card{border-radius:7px;border-color:#ffffffc9;box-shadow:0 10px 26px #030c2512}
.task-guide-intro>p,.task-guide-help p{color:#d2e0f4}
.task-ranges a{background:#071b3c7a;border-color:#b5cff35c}
.cta-band{border-top:0;padding-block:67px}
.cta-band .cta-inner>div>p:not(.eyebrow){color:#d3e1f5}
.site-footer{border-top:1px solid #ffffff26}
.footer-column>a,.footer-column address,.footer-brand>p{color:#d4e0f0}

/* Shared page banners use the customer's airport architecture. */
.page-hero,.catalogue-intro{background-color:#0b254c;background-image:linear-gradient(100deg,#071e43f5 5%,#0b2d59eb 43%,#0a2a50c0 100%),var(--scene-architecture);background-size:cover;background-position:center 32%;color:#fff;isolation:isolate}
.page-hero .wrap,.catalogue-intro>.wrap{position:relative;z-index:1}
.page-hero h1,.catalogue-intro h1,.catalogue-intro h1>span{color:#fff}
.page-hero .eyebrow,.catalogue-intro .eyebrow{color:#cfdef5}
.page-hero .wrap>p:not(.eyebrow),.catalogue-intro p:not(.eyebrow){color:#d8e5f7}
.page-hero .breadcrumbs,.catalogue-intro .breadcrumbs{color:#c7d9f0}
.page-hero .breadcrumbs a,.catalogue-intro .breadcrumbs a{color:#dce9fb}
.catalogue-intro .breadcrumbs span:last-child{color:#fff}
.page-hero .photo-watermark,.catalogue-intro .photo-watermark{bottom:-12px;color:#ffffff0c}
.catalogue-intro-note{border-left-color:#b9cee447}
.catalogue-mini-label{color:#d1e1f8}
.catalogue-intro-note strong{color:#ffae83}
.catalogue-intro-note>div>span,.catalogue-intro-note>a{color:#e1ecfc}
.catalogue-intro-note [data-quote-count]{border-color:#a6c5ee80}
.page-hero-photo>img{width:68%;opacity:1;z-index:-2;object-position:50% 29%;filter:saturate(.75)}
.page-hero-photo:before{background:linear-gradient(90deg,#071e43 0%,#071e43fa 30%,#071e43c4 58%,#071e435c)}
.page-contact .page-hero,.page-about .page-hero,.page-industries .page-hero{background-image:linear-gradient(100deg,#071e43f4 4%,#0b2d59e8 45%,#0a2a50c0 100%),var(--scene-waterfront);background-position:center 48%}
.process-section,.values-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(#edf4fbf0,#edf4fbf2),var(--scene-jewel) center 47%/cover no-repeat;border-block:1px solid #dbe5f1}
.process-section .photo-watermark,.values-section .photo-watermark{color:#0d32620a;bottom:-12px}
.process-section .wrap,.values-section .wrap{position:relative;z-index:1}
.service-card{background:white}
.about-photo{box-shadow:0 15px 36px #071b3c16;border-radius:8px;overflow:hidden}
.about-copy{background:#fffffff5;border:1px solid #d8e3f1;border-radius:8px;padding:35px}
.about-copy>p:not(.eyebrow){color:#4d5f78}

/* Clear catalogue surfaces are intentional: product colours stay true. */
.catalogue-workspace{margin-top:30px;padding-top:30px;background:#f4f8fcf2;border:1px solid #d9e4f2;border-radius:8px;box-shadow:0 12px 32px #0d294808}
.catalogue-sidebar{background:#fff;border:1px solid #dce5f1;border-radius:6px;padding:19px 16px}
.catalogue-layout{grid-template-columns:235px minmax(0,1fr)}
.catalogue-sourcing-note{border-top-color:#d7e2ef}
.catalogue-product-page{margin-top:28px;background:#f5f9fcf7;border:1px solid #dce5f1;border-radius:8px}
.catalogue-detail-copy{background:#fff;border:1px solid #dae4f1;border-radius:7px;padding:30px;min-width:0}
.catalogue-detail-photo{border-radius:7px}
.catalogue-specification table{background:#fff}
.catalogue-related{background:#eaf2f9d9}
.quote-items-panel{background:#fff;border:1px solid #d9e4f1;padding:27px;border-radius:7px}
.quote-request-form{background:#fff;border-radius:7px;box-shadow:0 10px 25px #0d294808}
.catalogue-source-note{color:#51627a}

/* A single company heading spans the contact grid, including on phones. */
.contact-main{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:30px 5.5vw;padding-top:44px}
.contact-company-header{grid-column:1/-1;padding:25px 28px;background:#fff;border:1px solid #d9e3f0;border-left:3px solid var(--orange);border-radius:7px;min-width:0}
.contact-company-header .eyebrow{margin-bottom:12px}
.contact-company-name{font-size:clamp(16px,3.25vw,39px);line-height:1.2;letter-spacing:-.035em;white-space:nowrap;margin:0}
.contact-details{background:#fff;border:1px solid #d9e3f0;border-radius:7px;padding:29px 27px;min-width:0;align-self:start}
.contact-links{margin-top:0;gap:28px}
.contact-link a{font-size:clamp(18px,1.7vw,24px)}
.contact-form{border-radius:7px;box-shadow:0 10px 25px #0d294808}
.contact-tip{background:#f0f5fc;border-left-color:var(--orange)}
.map-frame{background:#fff;border:1px solid #d5e1ef;border-radius:7px;overflow:hidden;box-shadow:0 10px 30px #0d29480a}
.map-caption{color:#51627a}
.footer-bottom,.footer-bottom button{color:#9fb4d4}
.contact-link small,.field label>span,.form-submit-row small,.form-intro,.quote-request-form>small{color:#52667f}
.field input::placeholder,.field textarea::placeholder{color:#64758c;opacity:1}
.catalogue-product-page .breadcrumbs,.catalogue-product-page .breadcrumbs a{color:#536985}

@media(min-width:1560px){.catalogue-workspace,.catalogue-product-page{margin-inline:auto}}
@media(max-width:1100px){
  .catalogue-layout{grid-template-columns:211px minmax(0,1fr);gap:26px}
  .catalogue-sidebar{padding:17px 12px}.catalogue-detail-copy{padding:24px}
  .contact-details{padding:26px 22px}.contact-main{gap:27px 4vw}
}
@media(max-width:800px){
  .page-hero-photo:before{background:linear-gradient(90deg,#071e43f2,#071e43d9)}
  .why-card{padding:24px}.why-card h3{font-size:21px}
  .catalogue-layout{grid-template-columns:1fr;gap:25px}
  .catalogue-sidebar{position:static;padding:20px}.catalogue-workspace{margin-top:20px}
  .catalogue-detail-copy{padding:24px}.contact-main{grid-template-columns:1fr;gap:24px}
  .contact-company-header{padding:23px 25px}.contact-company-name{font-size:clamp(17px,3.8vw,30px)}
  .contact-links{display:flex;flex-direction:column;gap:25px}.contact-link a{font-size:22px}
  .contact-details{padding:29px}.about-copy{padding:29px}.quote-items-panel{padding:24px}
}
@media(max-width:700px){
  :root{--scene-jewel:url('/assets/scenes/jewel-day-mobile.webp');--scene-architecture:url('/assets/scenes/jewel-night-mobile.webp');--scene-waterfront:url('/assets/scenes/singapore-waterfront-mobile.webp')}
  .site-scene{background-position:center top}
  .task-guide{padding-top:50px}.task-guide .photo-watermark{font-size:25vw}
}
@media(max-width:520px){
  .brand-strip{background:#fff}.why-section{padding-top:52px;padding-bottom:53px}
  .why-grid{gap:15px}.why-card{padding:23px 20px;grid-template-columns:35px 1fr;gap:0 15px}
  .why-card .line-icon{width:35px;height:35px}.why-card h3{font-size:19px}
  .page-hero-photo>img{width:100%}.page-hero-photo:before{background:#071e43d9}
  .photo-watermark{font-size:25vw;bottom:7px}
  .catalogue-workspace,.catalogue-product-page{border-radius:0;border-inline:0;margin-top:14px}
  .catalogue-sidebar{padding:18px 16px}.catalogue-detail-copy{padding:21px 18px}
  .catalogue-related{background:#eaf2f9ed}.quote-items-panel{padding:20px 16px}
  .contact-company-header{padding:20px 17px}.contact-company-name{font-size:clamp(15px,4.3vw,22px);letter-spacing:-.035em}
  .contact-details{padding:25px 20px}.contact-link a{font-size:clamp(17px,5vw,22px)}
  .contact-link{gap:12px}.contact-link .line-icon{width:30px;height:30px}
  .contact-link>div{min-width:0}.contact-link a[href^="mailto:"]{font-size:clamp(14px,4.4vw,19px);white-space:nowrap;letter-spacing:-.035em}
  .contact-link small{font-size:8px}
  .about-copy{padding:25px 22px}.cta-band{padding-block:49px}
}
