/* Interior pages extend the round 03 identity. */
/* Interior hero: dark, full-bleed photograph or video, matching the home and project pages. */
.page-hero{position:relative;display:flex;flex-direction:column;min-height:min(78svh,720px);padding-top:150px;color:#fff;background:var(--deep);overflow:hidden}
.page-hero-bg,.page-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,37,42,.95) 0%,rgba(6,37,42,.72) 45%,rgba(6,37,42,.25) 100%),linear-gradient(0deg,rgba(6,37,42,.85),rgba(6,37,42,0) 45%)}
html[dir=rtl] .page-hero:after{background:linear-gradient(270deg,rgba(6,37,42,.95) 0%,rgba(6,37,42,.72) 45%,rgba(6,37,42,.25) 100%),linear-gradient(0deg,rgba(6,37,42,.85),rgba(6,37,42,0) 45%)}
.page-hero>.container,.page-hero>.route-bar{position:relative;z-index:1}
.page-hero-inner{flex:1;padding-bottom:40px}
.page-crumbs{margin-bottom:56px;color:#c5d5d1}
.page-crumbs [aria-current]{color:#fff}
.page-crumbs a:hover{color:var(--lime);text-decoration:underline}
.page-hero .eyebrow{color:#fff}
.page-hero h1{max-width:860px;font-size:clamp(40px,5.2vw,80px);overflow-wrap:anywhere}
.page-hero-inner>p{max-width:640px;margin-top:22px;font-size:18px;color:#d8e4e1}
.page-hero .text-link:hover{color:var(--lime)}
.page-hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}
.page-hero-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:28px}
/* Route bar: in-page links drawn as a pipeline with hexagon nodes. */
.route-bar{border-top:1px solid rgba(255,255,255,.18);background:rgba(6,37,42,.55);backdrop-filter:blur(10px)}
.route-bar ol{position:relative;display:flex;gap:40px;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.route-bar ol::-webkit-scrollbar{display:none}
.route-bar a{position:relative;display:flex;align-items:center;gap:12px;padding:22px 0;font-size:15px;font-weight:500;white-space:nowrap}
.route-bar a:hover{color:var(--lime)}
.route-bar b{font-family:var(--font-en);font-size:12px;font-weight:500;color:var(--lime)}
.route-node{width:12px;height:14px;background:var(--lime);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.route-bar li+li a:before{content:'';position:absolute;top:50%;inset-inline-end:calc(100% + 8px);width:24px;height:1px;background:rgba(255,255,255,.35)}
.page-section{padding-block:88px}
.page-section.soft{background:var(--paper)}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:96px}
.editorial-split p,.scope-columns p{color:var(--muted);font-size:17px;line-height:1.9}
.editorial-split p+p{margin-top:20px}
.editorial-split .text-link{margin-top:24px}
.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:56px}
.values-grid article{padding:30px;border-top:3px solid var(--lime);background:var(--paper)}
.values-grid article>span,.deliverable-grid article>span{font-size:13px;color:var(--teal);font-family:var(--font-en)}
.values-grid h3{font-size:25px;margin-block:20px 12px}
.values-grid p{color:var(--muted)}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
/* Three columns for odd counts so no card is left alone on a row; five gets a wide lead card. */
.capability-grid[data-count="3"],.capability-grid[data-count="5"]{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.capability-grid[data-count="5"]>:first-child{grid-column:span 2}
.capability-grid[data-count="3"] .capability-card>img,.capability-grid[data-count="5"] .capability-card>img{height:230px}
.capability-grid[data-count="3"] .capability-card h3,.capability-grid[data-count="5"] .capability-card h3{font-size:24px}
.capability-grid[data-count="3"] .capability-card>div,.capability-grid[data-count="5"] .capability-card>div{padding:26px}
.capability-card{display:block;background:#fff;border:1px solid var(--line);transition:border-color .2s,transform .2s;min-width:0}
.capability-card:hover{transform:translateY(-3px);border-color:var(--teal)}
.capability-card>img{width:100%;height:280px;object-fit:cover}
.capability-card>div{padding:30px}
.capability-card .eyebrow{font-size:11px;margin-bottom:14px}
.capability-card h3{display:flex;justify-content:space-between;gap:16px;font-size:30px}
.capability-card h3 .arrow{margin-top:4px}
.capability-card p{color:var(--muted);margin-top:16px;font-size:16px}
.capability-card .card-link{display:inline-block;margin-top:24px;font-size:14px;border-bottom:1px solid var(--teal)}
.sector-gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;margin-top:64px}
.sector-gallery figure{position:relative;margin:0}
.sector-gallery img{width:100%;height:440px;object-fit:cover}
.sector-gallery .tech-tag{position:absolute;bottom:16px;inset-inline-start:16px}
.scope-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:96px;align-items:start}
.detail-list{list-style:none;padding:0;margin:24px 0}
.detail-list li{position:relative;padding:15px 0 15px 24px;border-bottom:1px solid var(--line);font-size:17px}
html[dir=rtl] .detail-list li{padding:15px 24px 15px 0}
.detail-list li:before{content:'';position:absolute;inset-inline-start:0;top:25px;width:6px;height:6px;background:var(--teal)}
.requirements-box{padding:36px;background:var(--sand);border-top:3px solid var(--teal)}
.requirements-box h3{font-size:28px}
.requirements-box .button{margin-top:14px}
.deliverable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.deliverable-grid article{padding:30px;background:white;border-bottom:3px solid var(--lime)}
.deliverable-grid h3{font-size:25px;margin-top:18px}
.quality-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.quality-page-grid article{padding:40px;background:var(--paper)}
.quality-page-grid .q-icon{color:var(--teal);display:block;margin-bottom:24px}
.quality-page-grid .q-icon svg{width:38px;height:38px}
.quality-page-grid h2{font-size:32px}
.quality-page-grid p{margin-top:18px;color:var(--muted);font-size:17px}
.profile-banner{background:var(--sand);padding:40px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.profile-banner>div{display:flex;align-items:center;gap:24px}
.profile-banner .brand-mark{width:72px;height:72px}
.profile-banner h2{font-size:32px}
.profile-banner p{color:var(--muted);margin-top:12px}
.profile-download{display:grid;grid-template-columns:.8fr 1.2fr;gap:96px;align-items:center}
.profile-cover{min-height:430px;background:var(--deep);color:#fff;display:flex;flex-direction:column;padding:54px;align-items:flex-start;position:relative;border-bottom:10px solid var(--lime)}
.profile-cover .brand-mark{height:86px;width:86px;margin-bottom:52px}
.profile-cover strong{font-family:var(--font-en);font-size:52px;font-weight:500;letter-spacing:.15em;direction:ltr}
.profile-cover span{font-size:21px;margin-top:18px}
.profile-cover small{font-size:13px;color:#c8d6d2;margin-top:auto;padding-top:46px}
.profile-download>div>p{margin-top:24px;max-width:650px;color:var(--muted)}

.contact-layout{display:grid;grid-template-columns:.8fr 1.25fr;gap:96px;align-items:start}
.contact-aside h2{font-size:42px}
.contact-help{padding:26px;margin-top:32px;background:var(--sand)}
.contact-help p{margin-block:14px;color:var(--muted)}
.contact-form-box{background:var(--paper);padding:40px;border-top:3px solid var(--lime)}
.contact-form-box>h2{font-size:32px}
.enquiry-form{margin-top:24px}
.enquiry-form label{display:block;font-size:14px;font-weight:500;margin-bottom:18px}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{display:block;width:100%;border:1px solid #a7b8b5;background:#fff;border-radius:0;padding:12px;margin-top:7px;font:inherit;font-weight:400;min-height:48px}
.enquiry-form textarea{resize:vertical;min-height:125px}
.enquiry-form input[aria-invalid=true],.enquiry-form textarea[aria-invalid=true]{border-color:var(--danger)}
.enquiry-form input[type=file]{font-size:13px;padding:8px;overflow:hidden}
.enquiry-form input[type=file]::file-selector-button{background:var(--ink);color:#fff;border:0;padding:8px 12px;margin-inline-end:10px;font:inherit;cursor:pointer}
.attachment-label small{display:block;font-weight:400;color:var(--muted);line-height:1.7;margin-top:10px}
.attachment-selection{font-size:13px;color:var(--teal);overflow-wrap:anywhere;margin-block:8px 16px}
.form-result{padding:18px;background:#e6efdf;border-inline-start:3px solid var(--teal);margin-top:20px;line-height:1.9}
.service-details{display:block;font-size:14px;color:var(--teal);padding-top:18px}
.sector-details{display:inline-block;margin:22px 0 0 22px;font-size:14px;color:var(--lime)}
html[dir=rtl] .sector-details{margin:22px 22px 0 0}
.primary>a[aria-current=page]:after{transform:scaleX(1)}
@media(max-width:1100px){.capability-grid[data-count="3"],.capability-grid[data-count="5"]{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-grid[data-count="5"]>:first-child{grid-column:span 2}.capability-grid[data-count="3"]>:first-child{grid-column:span 2}.editorial-split,.scope-columns,.contact-layout,.profile-download{gap:48px}.profile-banner{padding:30px}.profile-banner h2{font-size:27px}}
@media(max-width:800px){.page-hero{min-height:0;padding-top:118px}.page-crumbs{margin-bottom:36px}.sector-gallery{grid-template-columns:1fr;margin-top:40px}.sector-gallery img{height:280px}.editorial-split,.scope-columns,.contact-layout,.profile-download{grid-template-columns:1fr;gap:36px}.page-section{padding-block:64px}.values-grid,.deliverable-grid{grid-template-columns:1fr}.values-grid{margin-top:36px}.profile-banner{align-items:flex-start;flex-direction:column}.profile-download{max-width:650px;margin:auto}.contact-aside h2{font-size:36px}.contact-form-box{padding:28px}}
@media(max-width:600px){.page-hero{padding-top:100px}.page-hero-inner>p{font-size:16px}.page-hero:after,html[dir=rtl] .page-hero:after{background:linear-gradient(0deg,rgba(6,37,42,.96) 15%,rgba(6,37,42,.6) 60%,rgba(6,37,42,.4))}.route-bar ol{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;overflow:visible}.route-bar li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}.route-bar li+li a:before{display:none}.route-bar a{padding:14px 0;font-size:14px;white-space:normal}.page-hero-foot{padding-bottom:20px}.capability-grid[data-count]{grid-template-columns:1fr}.capability-grid[data-count]>:first-child{grid-column:auto}.page-crumbs{margin-bottom:28px;font-size:12px;gap:8px}.page-hero h1{font-size:clamp(34px,9.5vw,44px)}.page-hero-actions{gap:20px;margin-top:26px}.page-hero-actions .button{min-width:0;max-width:100%}.page-section{padding-block:48px}.capability-grid,.quality-page-grid{grid-template-columns:1fr;gap:20px}.capability-card>img{height:230px}.capability-card>div{padding:24px}.capability-card h3{font-size:27px}.requirements-box{padding:24px}.requirements-box h3{font-size:25px}.detail-list li{font-size:16px}.profile-banner{padding:24px;gap:24px}.profile-banner>div{gap:16px}.profile-banner .brand-mark{width:48px;height:48px}.profile-banner h2{font-size:25px}.profile-cover{padding:34px;min-height:380px}.profile-cover strong{font-size:46px}.quality-page-grid article{padding:26px}.contact-aside h2{font-size:32px}.contact-form-box{padding:24px 18px}.contact-form-box>h2{font-size:28px}.contact-layout .form-grid{grid-template-columns:1fr}.service-details{padding-bottom:4px}}
