/* Service catalogue and dedicated service pages — local revision, September 2026. */
.service-hub .breadcrumb,.service-page .breadcrumb{display:flex;gap:12px;flex-wrap:wrap;line-height:1.5}
.catalogue-hero,.specialty-hero{background:var(--navy);color:#fff;padding:40px 0 0;overflow:hidden}
.catalogue-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:72px;align-items:center;padding:15px 0 56px}
.catalogue-hero h1{font-size:clamp(3rem,5.4vw,5.3rem);max-width:720px;line-height:1.02}
.catalogue-hero h1 em{font-style:normal;color:var(--sky)}
.catalogue-hero .eyebrow,.specialty-hero .eyebrow{color:var(--sky)}
.catalogue-hero-grid>div>p{max-width:560px;color:#d6e5ed;margin:26px 0 30px;font-size:1.1rem;line-height:1.7}
.catalogue-visual{position:relative;border-radius:6px 6px 60px 6px;overflow:hidden;background:#1d435b;min-height:360px}
.catalogue-visual img{width:100%;height:420px;object-fit:cover;object-position:center}
.catalogue-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#041b30e6)}
.catalogue-visual-caption{position:absolute;inset:auto 30px 30px;z-index:1}
.catalogue-visual-caption span{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sky);font-weight:700}
.catalogue-visual-caption p{font-size:1.7rem;font-weight:650;line-height:1.2;margin-top:12px;letter-spacing:-.03em}
.catalogue-trust{border-top:1px solid #486174;padding:23px 0;display:flex;gap:50px;flex-wrap:wrap;font-size:.87rem;color:#d6e5ed}
.catalogue-trust span{display:flex;align-items:center;gap:12px}.catalogue-trust span:before{content:'';width:6px;height:6px;background:var(--orange);border-radius:50%}
.specialty-catalogue{background:#f5f8fa;padding:80px 0 95px}
.specialty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.specialty-card{background:white;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;border-radius:6px;position:relative;scroll-margin-top:120px;transition:border-color .2s,box-shadow .2s}
.specialty-card:hover{border-color:var(--blue);box-shadow:0 12px 30px #0829400d}
.specialty-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:16px}
.specialty-card-top>span{font-size:.69rem;font-weight:750;letter-spacing:.08em;color:var(--blue)}
.specialty-card-top svg{width:32px;height:32px;stroke:var(--blue);fill:none;stroke-width:1.4;flex:none}
.specialty-card h2{font-size:1.7rem;line-height:1.13;letter-spacing:-.035em;max-width:310px;margin-bottom:18px}
.specialty-card h2 a:focus-visible{outline-offset:4px}
.specialty-card>p{font-size:.95rem;line-height:1.65;color:var(--muted);margin-bottom:22px}
.specialty-tags{display:flex;gap:7px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 28px}
.specialty-tags li{font-size:.71rem;background:var(--soft);color:#40586b;border-radius:3px;padding:5px 8px;line-height:1.4}
.specialty-open{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:auto;font-size:.88rem;font-weight:750;color:var(--blue)}
.specialty-open span{font-size:1.4rem;line-height:1}
.service-guidance{padding:65px 0;background:#eaf4f8}
.service-guidance>.wrap{display:flex;justify-content:space-between;gap:50px;align-items:center}
.service-guidance h2{font-size:clamp(2rem,3.4vw,3.25rem)}
.service-guidance p{color:var(--muted);max-width:660px;margin-top:20px;font-size:1rem}
.service-guidance .btn{flex-shrink:0}
.specialty-hero{padding-bottom:65px}
.specialty-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:75px;padding-top:18px}
.specialty-hero h1{font-size:clamp(2.8rem,5vw,5.1rem);max-width:780px;overflow-wrap:break-word}
.specialty-lead{margin-top:27px;max-width:680px;font-size:1.1rem;color:#d4e5ef;line-height:1.7}
.specialty-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:34px}
.specialty-actions .text-link{color:#e3f1f8;font-size:.87rem}
.specialty-focus{background:#10374f;border:1px solid #476276;padding:30px;border-radius:6px 6px 42px 6px;position:relative}
.focus-icon{border-bottom:1px solid #496678;margin-bottom:24px;padding-bottom:24px}
.focus-icon svg{width:65px;height:65px;stroke:var(--sky);stroke-width:1;fill:none}
.focus-label{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#bad5e5;font-weight:700}
.specialty-focus ul{padding:0;list-style:none;margin:18px 0 28px}
.specialty-focus li{display:flex;align-items:flex-start;gap:15px;padding:10px 0;font-size:1.07rem;line-height:1.4}
.specialty-focus li span{color:var(--orange)}
.focus-caption{font-size:.8rem;color:#bad5e5}
.specialty-scope{padding:80px 0}
.specialty-scope h2,.critical-systems h2,.specialty-faq h2,.related-specialties h2{font-size:clamp(2.1rem,3.6vw,3.4rem)}
.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.scope-grid article{border-top:2px solid var(--blue);padding-top:22px}
.scope-step{font-size:.8rem;color:var(--blue);font-weight:700;display:block;margin-bottom:22px}
.scope-grid h3{font-size:1.5rem;margin-bottom:22px}
.scope-grid ul{padding-left:18px;font-size:.96rem;color:var(--muted);line-height:1.75;margin:0}
.scope-grid li+li{margin-top:13px}
.scope-agreement{font-size:.84rem;line-height:1.65;color:var(--muted);margin-top:38px;padding-top:22px;border-top:1px solid var(--line)}
.critical-systems{background:#f0f5f8;padding:75px 0}
.critical-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.critical-grid article{background:white;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;border-radius:5px}
.critical-number{font-size:2.8rem;line-height:1;color:var(--blue);letter-spacing:-.06em;margin-bottom:30px}
.critical-grid h3{font-size:1.7rem;line-height:1.2}
.critical-grid .critical-lead{color:var(--ink);font-weight:650;margin:18px 0 15px;font-size:1rem}
.critical-grid p,.critical-grid li{font-size:.93rem;color:var(--muted);line-height:1.7}
.critical-grid ul{margin:18px 0 24px;padding-left:18px}
.critical-grid li+li{margin-top:8px}
.critical-grid .text-link{margin-top:auto;font-size:.87rem;justify-content:space-between;gap:10px;color:var(--blue)}
.specialty-faq{background:#f5f8fa;padding:60px 0}
.specialty-faq>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}
.specialty-faq details{border-top:1px solid #9ab7c8;padding:23px 0}
.specialty-faq summary{font-size:1.2rem;font-weight:650;cursor:pointer;line-height:1.45}
.specialty-faq details p{margin-top:22px;color:var(--muted);font-size:1rem;line-height:1.8}
.related-specialties{padding:70px 0}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.related-grid>a{border-top:1px solid var(--line);padding-top:22px;display:flex;flex-direction:column;align-items:flex-start;transition:border-color .2s}
.related-grid>a:hover{border-color:var(--blue)}
.related-grid>a>span:first-child{font-size:.7rem;letter-spacing:.08em;color:var(--blue);font-weight:700}
.related-grid h3{font-size:1.5rem;line-height:1.2;margin:20px 0}
.related-arrow{font-size:1.5rem;color:var(--blue);margin-top:auto}
@media(max-width:1100px){.catalogue-hero-grid,.specialty-hero-grid{gap:40px}.catalogue-visual img{height:370px}.specialty-grid{gap:18px}.specialty-card{padding:24px}.specialty-card h2{font-size:1.55rem}.critical-grid{gap:18px}.critical-grid article{padding:24px}.scope-grid{gap:30px}.service-guidance>.wrap{gap:30px}.service-guidance .btn{max-width:260px}}
@media(max-width:900px){.specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-hero-grid{grid-template-columns:1.1fr .9fr;gap:30px}.catalogue-hero h1{font-size:3.6rem}.catalogue-visual img{height:380px}.catalogue-visual-caption{inset:auto 20px 25px}.catalogue-visual-caption p{font-size:1.35rem}.specialty-hero-grid{grid-template-columns:1fr;gap:35px}.specialty-focus{display:grid;grid-template-columns:75px 1fr;gap:0 25px}.focus-icon{grid-row:1/4;border:0;margin:0;padding:0;align-self:center}.specialty-focus ul{display:flex;flex-wrap:wrap;gap:0 25px;margin:10px 0}.focus-caption{grid-column:2}.scope-grid,.critical-grid{grid-template-columns:1fr}.scope-grid{gap:35px}.scope-grid article{display:grid;grid-template-columns:40px .8fr 1.2fr;gap:20px}.scope-step{margin-top:4px}.critical-grid article{display:grid;grid-template-columns:50px 1fr;column-gap:25px}.critical-number{grid-row:1/6}.critical-grid .text-link{justify-self:start}.specialty-faq>.wrap{gap:35px;grid-template-columns:1fr}.service-guidance>.wrap{align-items:flex-start;flex-direction:column}.service-guidance .btn{max-width:none}}
@media(max-width:760px){.catalogue-hero,.specialty-hero{padding-top:28px}.catalogue-hero-grid{grid-template-columns:1fr;padding-top:0;gap:35px;padding-bottom:35px}.catalogue-hero h1{font-size:clamp(2.8rem,9vw,4.4rem)}.catalogue-hero-grid>div>p{font-size:1rem;margin:22px 0 25px}.catalogue-visual{min-height:0;max-width:560px;width:100%}.catalogue-visual img{height:270px}.catalogue-trust{gap:13px 25px;font-size:.8rem;padding:20px 0}.specialty-catalogue{padding:55px 0}.specialty-card-top{margin-bottom:23px}.specialty-hero{padding-bottom:40px}.specialty-hero h1{font-size:clamp(2.6rem,8vw,3.8rem)}.specialty-lead{font-size:1rem;margin-top:22px}.specialty-actions{gap:20px;margin-top:28px}.specialty-focus{padding:25px;gap:0 20px;grid-template-columns:48px 1fr}.focus-icon svg{width:48px;height:48px}.specialty-focus li{font-size:.96rem}.scope-grid article{grid-template-columns:35px 1fr;gap:0 15px}.scope-grid ul{grid-column:2}.scope-grid h3{font-size:1.45rem}.scope-step{grid-row:1/3}.specialty-scope,.critical-systems{padding:55px 0}.specialty-faq{padding:45px 0}.related-specialties{padding:50px 0}.related-grid{gap:20px}.related-grid h3{font-size:1.23rem}.service-guidance{padding:45px 0}.critical-grid article{padding:24px;gap:0 15px;grid-template-columns:38px 1fr}.critical-number{font-size:2.25rem}.critical-grid h3{font-size:1.55rem}}
@media(max-width:540px){.specialty-grid{grid-template-columns:1fr;gap:20px}.specialty-card{padding:28px}.specialty-card h2{font-size:1.85rem}.specialty-tags{margin-bottom:26px}.related-grid{grid-template-columns:1fr;gap:28px}.related-grid h3{font-size:1.4rem;max-width:280px;margin-bottom:0}.related-grid>a{position:relative;padding-right:40px}.related-arrow{position:absolute;right:0;top:43px}.critical-grid article{display:flex}.critical-number{font-size:2.4rem;margin-bottom:22px}.critical-grid .text-link{width:100%}.specialty-focus{display:block}.focus-icon{display:none}.specialty-focus ul{display:block}.specialty-actions .btn{width:100%;font-size:.9rem}.service-page .breadcrumb{font-size:.74rem;gap:8px}.catalogue-trust{display:grid;gap:12px}.specialty-scope .section-head,.critical-systems .section-head{gap:20px}}
@media(prefers-reduced-motion:reduce){.specialty-card,.related-grid>a{transition:none}}

/* Technical journey: visible sequence, expandable activities and official sources. */
.service-tabs{background:#f0f5f8;border-bottom:1px solid var(--line);padding:15px 0}
.service-tabs .wrap{display:flex;gap:18px 34px;flex-wrap:wrap}
.service-tabs a{font-size:.86rem;font-weight:700;color:var(--blue);padding:5px 0;border-bottom:1px solid transparent}
.service-tabs a:hover{border-color:var(--blue)}
.service-definition{padding:65px 0;background:white}
.service-definition .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.service-definition h2{font-size:clamp(2rem,3.3vw,3rem)}
.service-definition p{font-size:1.15rem;line-height:1.8;color:var(--muted);max-width:750px;padding-top:5px}
.service-stages{background:#edf4f7;padding:75px 0}
.stages-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}
.stages-intro{position:sticky;top:125px}
.stages-intro h2{font-size:clamp(2.2rem,3.5vw,3.5rem)}
.stages-intro>p{margin-top:25px;font-size:1rem;color:var(--muted);line-height:1.8}
.stages-hint{display:block;font-size:.81rem;color:#58717f;line-height:1.65;margin-top:27px;padding-top:22px;border-top:1px solid #c2d3dd}
.stage-list{list-style:none;padding:0;margin:0;display:grid;gap:13px;counter-reset:stage}
.stage-list>li{margin:0;position:relative}
.stage-list details{border:1px solid #c9d9e3;background:#fff;border-radius:5px;overflow:hidden}
.stage-list details[open]{border-color:#8eaabd;box-shadow:0 7px 18px #08294006}
.stage-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:30px 1fr 18px;gap:15px;align-items:start;padding:23px}
.stage-list summary::-webkit-details-marker{display:none}
.stage-number{color:var(--blue);font-size:.8rem;font-weight:700;line-height:1.6;margin-top:2px}
.stage-title>strong{display:block;font-size:1.15rem;line-height:1.35;letter-spacing:-.018em;color:var(--ink)}
.stage-title>span{display:block;font-size:.89rem;font-weight:400;line-height:1.65;color:var(--muted);margin-top:9px}
.stage-toggle{position:relative;display:block;width:18px;height:18px;margin-top:3px;color:var(--blue)}
.stage-toggle:before,.stage-toggle:after{content:'';position:absolute;background:currentColor}
.stage-toggle:before{width:12px;height:1px;top:8px;left:3px}.stage-toggle:after{width:1px;height:12px;top:3px;left:8px}
.stage-list details[open] .stage-toggle:after{display:none}
.stage-content{margin:0 23px 23px 68px;padding-top:20px;border-top:1px solid var(--line);display:grid;gap:20px}
.stage-content h4{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--blue);margin-bottom:8px}
.stage-content p{font-size:.93rem;line-height:1.75;color:var(--muted)}
.stage-evidence{padding:15px 18px;background:#f3f7f9;border-left:2px solid var(--orange);border-radius:0 3px 3px 0}
.stage-evidence p{font-size:.88rem;color:var(--ink)}
.service-basis{margin-top:27px;padding-top:22px;border-top:1px solid var(--line)}
.service-basis>span{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.service-basis ul{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}
.service-basis li{margin:0}
.service-basis a{display:block;padding:8px 12px;border:1px solid #b8d0de;border-radius:3px;font-size:.78rem;line-height:1.4;font-weight:600;color:var(--blue);text-decoration:none;background:#f4f8fb}
.service-basis a:hover{border-color:var(--blue);background:#e9f3f9}
.service-basis a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.service-references{background:#f4f7f9;padding:65px 0}
.service-references h2{font-size:clamp(2.1rem,3.3vw,3.2rem)}
.service-references .section-head{margin-bottom:30px}
.reference-context{max-width:1000px;font-size:.96rem;color:var(--muted);line-height:1.8;margin-bottom:30px}
.reference-details{border-top:1px solid #a9bfce;border-bottom:1px solid #a9bfce}
.reference-details>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font-size:1rem;font-weight:700;color:var(--ink);padding:22px 0}
.reference-details>summary>span{font-size:.8rem;font-weight:400;color:var(--blue);white-space:nowrap}
.reference-list{list-style:none;padding:0;margin:0 0 25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}
.reference-list li{border-top:1px solid var(--line);padding:23px 0}
.reference-publisher{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;margin-bottom:9px}
.reference-list a{display:block;color:var(--blue);font-weight:700;line-height:1.45;font-size:.98rem;text-decoration:underline;text-underline-offset:4px}
.reference-list p{margin-top:12px;font-size:.87rem;color:var(--muted);line-height:1.7}
.reference-applicability{font-size:.8rem;line-height:1.75;color:var(--muted);max-width:970px;margin-top:24px}
.reference-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.stages-layout{grid-template-columns:.75fr 1.25fr;gap:35px}.service-definition .wrap{gap:40px}.stage-content{margin-left:23px}.stage-list summary{gap:10px;grid-template-columns:25px 1fr 18px}}
@media(max-width:760px){.service-definition{padding:45px 0}.service-definition .wrap{grid-template-columns:1fr;gap:25px}.service-definition p{font-size:1rem;padding:0}.service-stages{padding:50px 0}.stages-layout{grid-template-columns:1fr;gap:30px}.stages-intro{position:static}.stages-intro>p{margin-top:20px}.stages-hint{margin-top:20px;padding-top:16px}.service-tabs .wrap{gap:9px 23px}.service-tabs a{font-size:.8rem}.service-references{padding:50px 0}.reference-list{grid-template-columns:1fr}.stage-list summary{padding:20px}.stage-content{margin:0 20px 20px}.stage-title>strong{font-size:1.06rem}.stage-title>span{font-size:.86rem}.stage-content p{font-size:.9rem}.reference-details>summary{font-size:.94rem}.reference-context{font-size:.91rem}}
@media(max-width:360px){.stage-list summary{grid-template-columns:22px 1fr 14px;gap:8px;padding:18px 14px}.stage-content{margin:0 14px 18px}.stage-title>strong{font-size:1rem}.stage-evidence{padding:13px}.reference-details>summary{gap:12px}.reference-details>summary>span{font-size:.73rem}}
@media print{.stages-intro{position:static}.stages-layout{grid-template-columns:1fr}.stage-list details:not([open])>*{display:block}.stage-list summary{display:grid}.reference-list{display:grid!important}.reference-details>*{display:block!important}}
