.compliance{--cp-line:#d4d6d5}.compliance h2{max-width:850px}.compliance p{max-width:70ch}.cp-kicker{font-size:11px;font-weight:600;letter-spacing:.13em;line-height:1.6;margin-bottom:22px}.cp-hero{background:#212325;color:#fff;border-top:1px solid #434547}.cp-hero-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:60px;align-items:stretch}.cp-hero-copy{padding:65px 0 48px}.cp-hero h1{font-size:clamp(38px,4.3vw,62px);line-height:1.08;letter-spacing:-.045em}.cp-hero h1 span{color:#ff8f3d}.cp-lead{font-size:21px;line-height:1.5}.cp-hero .cp-lead{margin-top:27px;margin-bottom:18px}.cp-hero-copy>p:not(.cp-kicker){color:#d6d9d9}.cp-hero .actions{gap:20px;align-items:flex-start;flex-direction:column}.cp-explore{font-size:14px;padding:6px 0}.cp-hero-note{font-size:12px;margin-top:30px!important}.cp-photo{position:relative;min-height:650px;overflow:hidden}.cp-photo img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:50% 47%}.cp-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#131719e8)}.cp-photo figcaption{position:absolute;bottom:25px;left:25px;right:25px;z-index:1;font-size:15px;line-height:1.5}.cp-photo figcaption span{display:block;font-size:10px;color:#e0e2e2;margin-top:8px}.cp-price{background:#f7eee8;border-bottom:1px solid #e5d7cd;padding:33px 0}.cp-price-grid{display:grid;grid-template-columns:1fr 1.25fr auto;gap:34px;align-items:center}.cp-price h2{font-size:22px}.cp-price .cp-kicker{margin-bottom:10px}.cp-amount{font-family:Montserrat;font-size:39px;font-weight:600;line-height:1.2;margin-bottom:10px}.cp-amount small,.cp-amount span{font-family:Inter;font-size:15px}.cp-price p:not(.cp-amount,.cp-kicker){font-size:14px;margin-top:0}.cp-price small{display:block;font-size:11px;line-height:1.5;margin-top:9px}.cp-amount small{display:inline;font-size:15px}.cp-link{font-size:14px;font-weight:600;display:inline-block;padding:12px 0}.cp-section{padding:90px 0}.cp-two{display:grid;grid-template-columns:1fr 1fr;gap:85px}.cp-spaced{margin-top:25px}.cp-situations article{border-top:1px solid var(--cp-line);padding:23px 0}.cp-situations h3{font-size:22px;margin-bottom:10px}.cp-situations p{font-size:15px}.cp-soft{background:#f1f2f0}.cp-section-head{display:grid;grid-template-columns:1.4fr 1fr;gap:75px;align-items:end;margin-bottom:36px}.cp-section-head>p{font-size:15px}.cp-packages{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.cp-packages details{background:#fff;border:1px solid #d8dbd7;border-radius:4px;overflow:hidden}.compliance summary{cursor:pointer;list-style:none}.compliance summary::-webkit-details-marker{display:none}.cp-packages summary{padding:25px;display:flex;justify-content:space-between;gap:20px;font-family:Montserrat;font-size:20px;line-height:1.3;min-height:100px;align-items:center}.cp-plus{font:28px Inter;color:#9c3c14}.cp-packages details[open]{border-top:3px solid #ec662c}.cp-packages details[open] .cp-plus{transform:rotate(45deg)}.cp-package-body{padding:0 25px 25px;font-size:15px}.cp-package-body h4{font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:20px 0 8px}.cp-purpose{font-weight:600}.cp-output{background:#f8eee7;padding:1px 18px 18px;margin-top:20px;border-left:3px solid #ec662c}.cp-footnote{font-size:12px;color:#565d60;margin-top:22px}.cp-engineering{background:#212325;color:#fff}.cp-engineering .cp-kicker{color:#ff8f3d}.cp-insights{display:grid;grid-template-columns:1fr 1fr;gap:40px 70px;margin-top:45px}.cp-insights article{border-top:1px solid #64686a;padding-top:24px}.cp-insights h3{font-size:23px;margin-bottom:18px}.cp-insights p{font-size:15px;color:#d2d6d7}.cp-engineering-note{border-left:4px solid #ec662c;background:#2c3032;margin-top:45px;padding:25px 30px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.cp-engineering-note strong{font-size:15px;color:#ff8f3d}.cp-engineering-note p{font-size:17px}.cp-samples details{border:1px solid #d3d8d8;margin-bottom:12px}.cp-samples summary{padding:21px 25px;font-weight:600;display:flex;justify-content:space-between}.cp-samples summary:after,.cp-faq summary:after{content:'+';margin-left:20px}.cp-samples details[open] summary:after,.cp-faq details[open] summary:after{content:'−'}.cp-document{margin:0 25px 25px;background:#fafbf9;border:1px solid #d4d8d5;padding:27px;font-size:14px}.cp-doc-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #212325;padding-bottom:18px}.cp-doc-head span{font-size:9px;letter-spacing:.1em;border:1px solid #c1c6c4;padding:4px 8px;align-self:start}.cp-document dl{margin:0}.cp-document dl>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #d4d8d5;padding:15px 0;gap:20px}.cp-document dt{font-weight:600}.cp-document dd{margin:0}.cp-status{font-size:12px;background:#f7e8db;padding:5px 9px;display:inline-block}.cp-engagements{display:grid;grid-template-columns:repeat(3,1fr);margin-top:35px;border:1px solid #d0d4cf}.cp-engagements article{padding:30px;border-right:1px solid #d0d4cf}.cp-engagements article:last-child{border-right:0}.cp-tag{font-size:9px;font-weight:600;letter-spacing:.1em;display:block;margin-bottom:25px}.cp-engagements h3{font-size:24px;margin-bottom:20px}.cp-engagements p{font-size:14px;margin-bottom:24px}.cp-engagements strong{font-size:14px;display:block}.cp-engagements .cp-featured{background:#fff;border-top:3px solid #ec662c}.cp-small{font-size:12px!important;line-height:1.65;margin-top:14px}.cp-founder{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:80px}.cp-founder img{width:100%;max-height:510px;object-fit:cover;object-position:top;background:#212325}.cp-founder p:not(.cp-kicker,.cp-lead){font-size:16px}.cp-subtitle{font:15px Inter;letter-spacing:0}.cp-faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.cp-faq details{border-bottom:1px solid #c9ceca}.cp-faq summary{display:flex;justify-content:space-between;padding:23px 0;font-weight:600;font-size:16px;line-height:1.45}.cp-faq details p{font-size:14px;padding:0 0 24px}.cp-proposal{background:#212325;color:#fff}.cp-proposal .cp-kicker{color:#ff8f3d}.cp-email{font-size:25px;display:block;margin:28px 0}.cp-enquiry{background:#303436;padding:35px}.cp-enquiry h3{font-size:25px;margin-bottom:20px}.cp-enquiry p,.cp-enquiry li{font-size:15px}.cp-enquiry ul{padding-left:20px;margin:20px 0 28px}.cp-enquiry>a:last-child{font-size:12px;display:inline-block;margin-top:15px}.cp-credit{font-size:10px;color:#5b6265;padding-top:20px;padding-bottom:20px}.compliance summary:hover{color:#9d3e18}.cp-proposal a:focus-visible,.cp-hero a:focus-visible{outline-color:#fff}
@media(max-width:1100px){.cp-hero-grid{gap:35px;grid-template-columns:1.3fr .8fr}.cp-price-grid{grid-template-columns:1fr 1fr}.cp-price-grid>.cp-link{grid-column:2;padding:0}.cp-two,.cp-founder,.cp-faq-layout{gap:40px}.cp-engagements article{padding:24px}.cp-section-head{gap:35px}.cp-hero h1{font-size:43px}}
@media(max-width:760px){.cp-hero-grid,.cp-two,.cp-section-head,.cp-founder,.cp-faq-layout,.cp-price-grid{grid-template-columns:1fr;gap:30px}.cp-hero-copy{padding:40px 0 0}.cp-hero h1{font-size:clamp(32px,7vw,48px)}.cp-hero .cp-lead{font-size:19px}.cp-hero-copy>p{font-size:15px}.cp-hero-copy>.cp-kicker{font-size:10px}.cp-photo{min-height:380px;margin-bottom:30px}.cp-photo img{object-position:50% 45%}.cp-price-grid>.cp-link{grid-column:auto}.cp-price{padding:30px 0}.cp-price-grid{gap:20px}.cp-amount{font-size:36px}.cp-section{padding:56px 0}.cp-packages,.cp-insights,.cp-engagements{grid-template-columns:1fr}.cp-packages summary{font-size:20px;min-height:83px;padding:22px}.cp-insights{gap:28px}.cp-engineering-note{grid-template-columns:1fr;gap:12px;padding:23px}.cp-document{margin:0 12px 12px;padding:18px}.cp-doc-head{flex-direction:column;gap:12px}.cp-document dl>div{grid-template-columns:1fr;gap:6px}.cp-engagements article{border-right:0;border-bottom:1px solid #d0d4cf;padding:28px}.cp-engagements p{margin-bottom:18px}.cp-founder img{max-height:430px;max-width:330px}.cp-founder{gap:30px}.cp-faq-layout{gap:20px}.cp-enquiry{padding:25px}.cp-email{font-size:22px}.cp-credit{font-size:10px}.cp-section-head{margin-bottom:28px}.cp-lead{font-size:19px}.cp-proposal h2{font-size:34px}.cp-samples summary{padding:20px;font-size:15px}.cp-hero-note{font-size:11px!important}}
.cp-packages{display:block;columns:2;column-gap:14px}.cp-packages details{break-inside:avoid;margin-bottom:14px}.cp-footnote{font-size:13px}.cp-price small{font-size:12px}.cp-credit{font-size:11px}
@media(max-width:760px){.cp-packages{columns:1}}

/* Review refinement: unobstructed photography and quieter scope note. */
.cp-photo:after{display:none}.cp-price small{font-size:11px}.cp-price .cp-amount small{font-size:15px}
.fw-intro h2{max-width:1050px;font-size:clamp(30px,3.2vw,44px)}.fw-intro-copy{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;margin-top:25px;font-size:15px}.fw-intro-copy p+p{margin:0}.fw-map{display:grid;grid-template-columns:1.4fr 1fr;gap:74px;margin-top:45px;align-items:start}.fw-label{font-size:10px;letter-spacing:.1em;font-weight:600;line-height:1.5;margin-bottom:20px}.fw-label>span{display:block;font-size:11px;font-weight:400;letter-spacing:0;color:#565d60;margin-top:5px}.fw-branches{position:relative}.fw-branches:after{content:'';position:absolute;right:-28px;top:60px;bottom:60px;border-right:1px solid #b65a32}.fw-stream{position:relative;background:#fff;border:1px solid #d4d8d5;margin-bottom:13px;border-radius:3px;transition:border-color .18s,box-shadow .18s}.fw-stream:after{content:'';position:absolute;right:-28px;top:60px;width:27px;border-top:1px solid #b65a32}.fw-stream summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;padding:20px;min-height:120px}.fw-service{font-family:Montserrat;font-size:17px;line-height:1.3}.fw-toggle{font:11px Inter;display:flex;align-items:center;gap:9px;margin-top:13px;color:#565d60}.fw-toggle b{font-size:18px;font-weight:400;transition:transform .18s}.fw-record{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.45;border-left:1px solid #e0e2df;padding-left:18px}.fw-record small{display:block;font-size:8px;letter-spacing:.1em;color:#696f70;margin-bottom:5px}.fw-document{width:32px;min-width:32px;height:42px;fill:#faf9f5;stroke:#949e9d;stroke-width:1.2}.fw-document-accent{stroke:#b54f22;stroke-width:3}.fw-stream[open],.fw-stream:hover{border-color:#c6653d;box-shadow:0 3px 13px #21232508}.fw-stream[open] .fw-toggle b,.fw-closeout[open] .fw-toggle b{transform:rotate(45deg)}.fw-stream[open] .fw-document{stroke:#b54f22}.fw-detail{padding:0 22px 24px;font-size:14px;line-height:1.65}.fw-detail>div{margin-top:18px}.fw-detail h4{font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px}.fw-detail .fw-purpose{padding-top:18px;border-top:1px solid #ddd;font-weight:600}.fw-standalone{font-size:12px;color:#565d60;margin-top:18px}.fw-destination{padding-top:64px;position:relative}.fw-destination:before{content:'';position:absolute;left:-46px;top:126px;width:45px;border-top:2px solid #b65a32}.fw-destination:after{content:'›';position:absolute;left:-12px;top:107px;font-size:29px;color:#b65a32}.fw-folder-tab{display:inline-block;background:#ec662c;color:#212325;padding:11px 19px;font-size:9px;font-weight:600;letter-spacing:.1em;border-radius:7px 15px 0 0}.fw-folder-body{background:#212325;color:#fff;padding:30px;border-radius:0 5px 5px 5px;border-top:3px solid #ec662c}.fw-folder-body>.fw-label{color:#ff9d70;margin-top:25px;margin-bottom:15px}.fw-folder-art{height:80px;position:relative;margin:5px 0 20px 8px}.fw-folder-art>span{display:block;position:absolute;width:112px;height:72px;top:0;left:0;border:1px solid #a4adae;border-radius:3px;background:#383f42;transform:rotate(-9deg)}.fw-folder-art>span:nth-child(2){transform:rotate(-3deg);left:10px;top:3px}.fw-folder-art>span:nth-child(3){transform:rotate(4deg);left:20px;top:6px}.fw-folder-art>div{position:absolute;left:31px;top:21px;font-size:7px;line-height:1.9;letter-spacing:.06em;color:#e2e7e7;transform:rotate(4deg)}.fw-closeout h3{font-size:28px;line-height:1.16}.fw-closeout summary:hover{color:#ffb28e}.fw-closeout .fw-toggle{color:#d0d7d7;margin-top:18px}.fw-closeout .fw-detail{padding:0 0 20px;color:#e0e5e5}.fw-closeout .fw-purpose{border-color:#596165}.fw-conclusion{font-size:15px;line-height:1.65;margin-top:24px}.fw-outcomes{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px;padding-top:22px;border-top:1px solid #5e6568}.fw-outcomes span{font-size:10px;border:1px solid #6d777a;padding:5px 9px;color:#e3e7e7}.fw-inputs{position:relative;border:1px dashed #a4adaa;padding:24px;margin-top:38px;background:#e8ebe7}.fw-input-arrow{position:absolute;top:-35px;left:30px;font-size:27px;color:#7b8581}.fw-inputs h4{font-size:13px;margin:0 0 10px}.fw-inputs p{font-size:12px}.fw-inputs p+p{margin-top:12px}.fw-route{display:flex;gap:25px;border-top:1px solid #c8ceca;margin-top:40px;padding-top:30px}.fw-route h3{font-size:24px;margin-bottom:12px}.fw-route p{font-size:15px;max-width:90ch}.fw-route-mark{background:#ec662c;min-width:44px;height:44px;text-align:center;font-size:28px;line-height:44px}.fw-closeout summary:focus-visible{outline-color:#fff}
@media(max-width:1100px){.fw-map{grid-template-columns:1.2fr 1fr;gap:56px}.fw-stream summary{grid-template-columns:1fr;gap:15px}.fw-record{border-left:0;padding-left:0;border-top:1px solid #e0e2df;padding-top:13px}.fw-destination:before{left:-28px;width:27px}.fw-folder-body{padding:23px}.fw-closeout h3{font-size:24px}.fw-intro-copy{gap:30px}}
@media(max-width:760px){.fw-intro-copy,.fw-map{grid-template-columns:1fr;gap:22px}.fw-map{margin-top:30px}.fw-stream summary{grid-template-columns:1fr 1fr;gap:15px;padding:18px}.fw-service{font-size:16px}.fw-record{border-top:0;border-left:1px solid #e0e2df;padding:0 0 0 12px;font-size:11px}.fw-document{width:25px;min-width:25px}.fw-record small{font-size:7px}.fw-branches:after{right:-9px;top:60px;bottom:-18px}.fw-stream:after{right:-9px;width:8px}.fw-standalone{padding-right:18px}.fw-destination{padding-top:35px}.fw-destination:before{left:50%;top:-10px;height:43px;width:0;border-top:0;border-left:2px solid #b65a32}.fw-destination:after{content:'↓';left:calc(50% - 8px);top:9px;font-size:24px}.fw-folder-tab{font-size:9px}.fw-folder-body{padding:26px}.fw-closeout h3{font-size:28px}.fw-folder-art{float:right;width:125px;transform:scale(.85);transform-origin:top right;margin-bottom:0}.fw-folder-body>.fw-label{clear:both;padding-top:12px}.fw-route{gap:15px}.fw-route h3{font-size:22px}.fw-route p{font-size:14px}.fw-inputs{padding:22px}}
@media(max-width:359px){.fw-stream summary{grid-template-columns:1fr}.fw-record{border-left:0;padding-left:0;border-top:1px solid #e0e2df;padding-top:12px}.fw-record small{font-size:8px}.fw-folder-body{padding:22px}}

/* Framework review: aligned connector with a geometric arrowhead. */
.fw-intro-copy{display:block;max-width:900px}.fw-intro-copy p{max-width:90ch}
.fw-destination:after{content:"";left:-9px;top:121px;width:10px;height:10px;border-top:2px solid #b65a32;border-right:2px solid #b65a32;transform:rotate(45deg);font-size:0}
.fw-folder-art{margin-bottom:32px}
@media(max-width:760px){.fw-destination:after{content:"";left:calc(50% - 4px);top:24px;width:10px;height:10px;border-top:0;border-right:2px solid #b65a32;border-bottom:2px solid #b65a32;transform:rotate(45deg)}.fw-folder-art{float:none;transform:none;margin-bottom:25px}}
@media(min-width:761px){.fw-destination:before{top:116.5px}.fw-destination:after{top:111.5px;left:-10px}}
/* One continuous, uniform-weight arrow, ending clear of the folder edge. */
@media(min-width:761px){.fw-destination:before{top:111px;left:-46px;width:46px;height:12px;border:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 12' preserveAspectRatio='none'%3E%3Cpath d='M0 6H38M33 1l5 5-5 5' fill='none' stroke='%23b65a32' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/100% 100% no-repeat}.fw-destination:after{display:none}}
@media(min-width:761px) and (max-width:1100px){.fw-destination:before{left:-28px;width:28px}}
.fw-input-arrow{left:50%;transform:translateX(-50%);width:28px;text-align:center}
/* Connect at the folder centre with a single small solid arrowhead. */
@media(min-width:761px){.fw-destination:before{display:none}.fw-folder{position:relative}.fw-folder:before{content:"";position:absolute;left:-46px;top:50%;transform:translateY(-50%);width:46px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5H38' fill='none' stroke='%23b65a32' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M38 2L43 5L38 8Z' fill='%23b65a32'/%3E%3C/svg%3E") center/100% 100% no-repeat}}
@media(min-width:761px) and (max-width:1100px){.fw-folder:before{left:-28px;width:28px}}
.fw-map+.fw-route{margin-top:30px}
/* Matching connector geometry: 1px shaft and compact solid triangular head. */
.fw-input-arrow{font-size:0;width:10px;height:30px;top:-34px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 30'%3E%3Cpath d='M5 30V8' fill='none' stroke='%237b8581' stroke-width='1'/%3E%3Cpath d='M2 8L5 3L8 8Z' fill='%237b8581'/%3E%3C/svg%3E") center/10px 30px no-repeat}
.fw-streams > .fw-label {font:600 18px/1.4 Montserrat,Arial,sans-serif;letter-spacing:normal;text-transform:none}.fw-streams > .fw-label > span {font:400 14px/1.6 Inter,Arial,sans-serif;letter-spacing:normal}
