/* Category-led service panels inspired by the supplied historic design. */
.service-choice-heading{padding:50px 0 32px}.service-choice-heading h1{font-size:clamp(36px,3.8vw,50px)}.service-choice-grid{gap:32px}
.service-choice-card{padding:0;border-radius:18px;overflow:hidden;border:1px solid #e1e5e6;background:#fff;display:flex;flex-direction:column;box-shadow:none}.service-choice-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #18233107}
.service-card-top{margin:0;padding:24px 30px;min-height:86px}.business-choice .service-card-top{background:var(--portrait-neutral)}.individual-choice .service-card-top{background:var(--accent)}.service-audience{font-size:17px;letter-spacing:.2px;text-transform:none;color:#263c51}.service-card-top svg{width:30px;height:30px;color:#344f69}.service-card-body{padding:30px;display:flex;flex-direction:column;flex:1}.service-choice-card h2{font-size:31px;min-height:74px}.service-choice-card .service-card-lead{font-size:15px}.service-card-cta{border-radius:10px;background:var(--portrait-neutral);border-color:var(--portrait-neutral);color:#344f69}.individual-choice .service-card-cta{background:#edf2f7;border-color:#edf2f7}.service-card-price{font-size:16px}.service-card-note{font-size:12px}.service-choice-help{padding-bottom:36px}
/* Detail pages alternate concise editorial sections and intentional colour bands. */
.detail-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;padding:45px 0 42px}.detail-back{display:inline-block;font-size:12px;color:var(--muted);text-decoration:none;margin-bottom:31px}.detail-back:hover{text-decoration:underline}.detail-hero h1{font-size:clamp(36px,3.8vw,52px);line-height:1.12;margin-bottom:18px}.detail-hero .eyebrow{margin-bottom:15px}.detail-service-name{font-size:15px;font-weight:600;color:#344f69;margin-bottom:20px}.detail-hero .detail-lead{font-size:18px;line-height:1.6;color:#455563}.detail-hero>div>p:last-of-type{font-size:14px;line-height:1.85}.detail-hero .button{margin-top:8px}
.journey-visual{padding:35px 28px;border-radius:20px;background:#f1f1ef;position:relative}.expert-detail-hero .journey-visual{background:#edf2f7}.visual-caption{display:block;font-size:9px;letter-spacing:1.25px;color:#596772;margin-bottom:24px}.journey-node{display:flex;align-items:center;gap:15px;padding:20px 17px;border-radius:12px;background:#fff;margin-bottom:13px;border:1px solid #e7e8e2}.journey-node>span{font-size:10px;color:#7d9dbd}.journey-node strong{font-size:14px;font-weight:550;color:#344f69}.journey-node i{margin-left:auto;width:7px;height:7px;border-radius:50%;background:var(--accent)}.visual-footnote{font-size:11px;color:#596772;margin-top:23px}
.detail-price-strip{display:flex;align-items:center;gap:40px;padding:25px 32px;margin-bottom:55px;border-radius:14px;background:var(--portrait-neutral)}.expert-price-strip{background:#edf2f7}.detail-price-strip strong{flex:0 0 260px;font-size:22px;font-weight:600;letter-spacing:-.5px;color:#344f69}.detail-price-strip p{font-size:13px;line-height:1.8;margin:0;color:#455563}
.detail-method{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding:25px 0 65px}.detail-method h2{font-size:36px}.detail-method .section-intro>p:last-child{font-size:14px}.detail-method .service-steps{display:block;margin:0;list-style:none}.detail-method .service-steps li{padding:0;border:0;display:block}.service-steps details{padding:0;border:0;border-bottom:1px solid var(--portrait-neutral);margin:0}.service-steps summary{display:grid;grid-template-columns:28px 1fr 20px;gap:14px;align-items:center;padding:21px 0;list-style:none;cursor:pointer;font-weight:500;color:#344f69;font-size:16px}.service-steps summary::-webkit-details-marker{display:none}.service-steps summary::after{content:none}.service-steps .step-index{margin:0;font-size:11px;padding:0;grid-row:auto}.step-symbol{font-size:21px;color:var(--accent);text-align:center;transition:transform .2s}.service-steps details[open] .step-symbol{transform:rotate(45deg)}.detail-method .service-steps p{padding:0 33px 22px 42px;font-size:14px;line-height:1.85;margin:0}
.service-evidence{padding:42px 35px;background:#f5f5f3;border-radius:20px;margin-bottom:55px}.service-evidence h2,.expert-deliverables h2,.additional-services h2,.expert-questions h2{font-size:35px}.service-output-grid{gap:27px 38px}.service-output-grid article{background:transparent;border-top:1px solid #d8dcd6;padding-top:20px}.output-index{display:block;font-size:9px;letter-spacing:1px;color:#596772;margin-bottom:14px}.service-output-grid h3,.expert-output-grid h3{font-size:23px;color:#344f69}.service-output-grid p,.expert-output-grid p{font-size:14px;line-height:1.8}.service-evidence>.service-disclosure{margin-bottom:0}.additional-services{display:grid;grid-template-columns:.9fr 1.1fr;gap:15px 55px;padding:20px 0 60px}.additional-services>.section-intro{grid-column:1;grid-row:1/4}.additional-services .addon-list{grid-column:2;margin:0}.additional-services>.small,.additional-services>.text-link{grid-column:2}.additional-services .section-intro p{font-size:14px;line-height:1.8}.additional-services details:first-child{margin-top:0}
.expert-deliverables{padding:42px 35px;background:#edf2f7;border-radius:20px;margin-bottom:50px}.expert-deliverables .section-intro>p:last-child{font-size:14px}.expert-output-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}.expert-output-grid article{padding-top:20px;border-top:1px solid #cfdce6}.expert-questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:0 55px;padding:20px 0 45px}.expert-questions .section-intro{grid-column:1;grid-row:1/4}.expert-questions details{grid-column:2;margin-top:0}.detail-closing{padding-top:45px;padding-bottom:60px}.detail-closing h2{font-size:38px}
@media(max-width:1000px){.service-card-body{padding:26px}.service-card-top{padding:22px 26px}.service-choice-card h2{font-size:28px;min-height:100px}.detail-hero{gap:35px}.detail-hero h1{font-size:39px}.detail-method{gap:35px}.detail-method h2{font-size:32px}.journey-visual{padding:28px 20px}.journey-node{padding:17px 12px}.detail-price-strip strong{flex-basis:230px;font-size:20px}.expert-output-grid{gap:20px}.expert-output-grid h3{font-size:21px}}
@media(max-width:650px){.service-choice-heading{padding:32px 0 25px}.service-choice-heading h1{font-size:36px}.service-choice-grid{gap:24px}.service-card-body{padding:25px 23px}.service-card-top{padding:20px 23px;min-height:76px}.service-choice-card h2{font-size:29px;min-height:0}.service-audience{font-size:16px}.detail-hero{grid-template-columns:1fr;gap:28px;padding-top:30px;padding-bottom:28px}.detail-back{margin-bottom:25px}.detail-hero h1{font-size:38px}.journey-visual{padding:25px 21px}.journey-node{padding:15px}.visual-caption{margin-bottom:18px}.detail-price-strip{flex-direction:column;align-items:flex-start;gap:12px;padding:24px;margin-bottom:35px}.detail-price-strip strong{flex-basis:auto}.detail-method{grid-template-columns:1fr;gap:15px;padding:20px 0 40px}.detail-method .section-intro{margin:0}.service-steps summary{font-size:15px;gap:10px;padding:19px 0}.detail-method .service-steps p{padding-left:38px;padding-right:20px}.service-evidence,.expert-deliverables{padding:30px 23px;margin-bottom:35px;border-radius:17px}.service-evidence h2,.expert-deliverables h2,.additional-services h2,.expert-questions h2{font-size:30px}.service-output-grid{gap:25px}.additional-services,.expert-questions{display:block;padding:10px 0 35px}.additional-services .addon-list{margin-top:20px}.expert-output-grid{grid-template-columns:1fr;gap:24px}.expert-questions .section-intro{margin-bottom:20px}.detail-closing h2{font-size:33px}}

/* Two audience panels, each containing two separately priced services. */
.catalogue-grid .service-card-body{padding-top:0;padding-bottom:0}.catalogue-offer{padding:27px 0;flex:1;display:flex;flex-direction:column}.catalogue-offer+.catalogue-offer{border-top:1px solid var(--portrait-neutral)}.catalogue-grid .catalogue-offer h2{font-size:25px;line-height:1.25;min-height:62px;margin-bottom:12px}.catalogue-offer>p:not(.catalogue-price):not(.catalogue-note){font-size:14px;line-height:1.8;min-height:50px;margin-bottom:17px}.catalogue-price{font-size:16px;font-weight:600;color:#344f69;margin:0 0 6px}.catalogue-note{font-size:11px;line-height:1.75;color:#596772;margin-bottom:20px}.catalogue-offer .service-card-cta{margin-top:auto}.catalogue-category-count{font-size:9px;letter-spacing:1px;color:#344f69}.training-pricing{padding:35px;background:#edf2f7;border-radius:20px;margin-bottom:45px}.training-pricing h2{font-size:35px}.training-pricing .section-intro>p:last-child{font-size:14px;line-height:1.8}.design-rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:30px 0}.design-rate-grid article{border-top:1px solid #cfdce6;padding-top:20px}.design-rate-grid span,.calculated-price>span{display:block;font-size:10px;letter-spacing:1px;color:#596772;margin-bottom:12px}.design-rate-grid strong{display:block;font-size:30px;font-weight:600;color:#344f69;margin-bottom:13px}.design-rate-grid p{font-size:13px;line-height:1.8;margin:0}.design-calculator{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:#fff;padding:25px;border-radius:14px;margin:25px 0}.design-calculator label{display:block;font-size:13px;color:#344f69;margin-bottom:12px}.design-calculator input{width:120px;max-width:100%;border:1px solid #cfdce6;border-radius:9px;padding:10px 12px;color:#344f69;font-size:20px}.design-calculator p{font-size:12px;line-height:1.8;margin:12px 0 0}.calculated-price output{display:block;font-size:33px;line-height:1.2;color:#344f69;font-weight:600}.pricing-example{font-size:13px;line-height:1.8}.training-pricing>.small{font-size:11px}
@media(max-width:1000px){.catalogue-grid .catalogue-offer h2{font-size:23px;min-height:90px}.catalogue-offer>p:not(.catalogue-price):not(.catalogue-note){min-height:75px}}
@media(max-width:650px){.catalogue-grid .catalogue-offer h2{font-size:24px;min-height:0}.catalogue-offer>p:not(.catalogue-price):not(.catalogue-note){min-height:0}.catalogue-offer{padding:25px 0}.training-pricing{padding:28px 22px}.training-pricing h2{font-size:30px}.design-rate-grid,.design-calculator{grid-template-columns:1fr;gap:25px}.design-calculator{padding:22px}.design-rate-grid strong{font-size:28px}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.catalogue-grid{padding-top:42px}@media(max-width:650px){.catalogue-grid{padding-top:28px}}
