/* Portfolio addition, same visual language as the redesigned homepage. */
.cap-card-rich{min-height:365px;gap:19px}
.cap-card-rich .cap-brand{display:flex;align-items:center;gap:14px;min-width:0}
.cap-card-rich .cap-brand img{width:54px;height:54px;object-fit:contain;padding:9px;background:#fff;border-radius:9px;flex:none}
.cap-card-rich .cap-brand strong{font-size:clamp(19px,1.7vw,28px);letter-spacing:-.05em;line-height:1.1;overflow-wrap:anywhere}
.cap-card-rich .cap-description{font-size:13px;line-height:1.65;color:#c2bbb5;margin:0;flex:1}
.cap-card-rich .cap-card-bottom{align-items:end}
.cap-card-rich .cap-card-bottom span{line-height:1.4;max-width:55%}
.cap-card-rich .cap-card-bottom a{font-size:10px;font-weight:900;color:#ff801c;letter-spacing:.045em;white-space:nowrap}
.cap-card-rich .cap-card-bottom a:hover{color:white;text-decoration:underline}
@media(max-width:540px){.cap-card-rich{min-height:325px}.cap-card-rich .cap-brand strong{font-size:25px}}

body.ca-portfolio{background:#090909;color:#faf7f1;font-family:Montserrat,Arial,sans-serif}body.ca-portfolio *{box-sizing:border-box}body.ca-portfolio a{text-decoration:none}
.cap-hero{padding:115px 0 90px;background:radial-gradient(ellipse at 80% 20%,#41200d 0,#101010 53%,#090909 100%);border-bottom:1px solid #39302b}.cap-hero h1{font-size:clamp(64px,11vw,160px);letter-spacing:-.095em;line-height:.94;font-weight:900;color:#fff;margin:0 0 70px}.cap-hero h1 em{font-style:normal;color:#ff801c}.cap-intro{display:flex;justify-content:space-between;align-items:end;gap:50px;border-top:1px solid #665347;padding-top:28px}.cap-intro p{font-size:clamp(18px,2vw,24px);line-height:1.5;color:#ded6d0;max-width:770px;margin:0}.cap-intro span{font-size:11px;letter-spacing:.15em;font-weight:800;color:#ff801c;white-space:nowrap}
.cap-list{background:#0c0c0c;padding:115px 0 135px}.cap-list-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.cap-list-head h2{font-weight:900;font-size:clamp(32px,4.8vw,68px);line-height:1.05;letter-spacing:-.07em;color:#fff;margin:0}.cap-list-head p{max-width:220px;font-size:15px;color:#b2aaa4}.cap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.cap-card{border:1px solid #393330;background:linear-gradient(135deg,#1d1b19,#101010);min-height:280px;padding:21px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s,border-color .2s,background .2s}.cap-card:nth-child(4n+2){background:linear-gradient(140deg,#27180f,#111)}.cap-card:nth-child(5n+3){background:linear-gradient(140deg,#25201b,#111)}.cap-card:hover{border-color:#ff801c;transform:translateY(-4px)}.cap-card-top,.cap-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:9px;color:#a7a19d;font-size:9px;font-weight:800;letter-spacing:.12em}.cap-card-top span:last-child{color:#ff801c;font-size:25px}.cap-card-center strong{font-size:clamp(22px,2.2vw,36px);font-weight:900;letter-spacing:-.065em;line-height:1.08;color:#fff;display:block;overflow-wrap:anywhere}.cap-card-bottom{border-top:1px solid #393330;padding-top:12px}.cap-card-bottom span:last-child{color:#ff801c}
.cap-cta{background:#ff801c;color:#111;padding:105px 0}.cap-cta span{letter-spacing:.2em;font-size:12px;font-weight:900}.cap-cta h2{font-size:clamp(50px,8vw,110px);font-weight:900;letter-spacing:-.09em;line-height:.96;margin:35px 0;color:#111}.cap-cta h2 em{font-style:normal;color:#fff}.cap-cta a{display:inline-block;background:#111;color:#fff;font-weight:900;font-size:12px;padding:20px 27px;letter-spacing:.08em}
@media(max-width:1050px){.cap-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cap-intro,.cap-list-head{display:block}.cap-intro span{display:block;margin-top:25px}.cap-hero{padding:70px 0}.cap-list{padding:65px 0}}@media(max-width:480px){.cap-grid{grid-template-columns:1fr}.cap-card{min-height:230px}.cap-hero h1{font-size:clamp(50px,13vw,74px)}}
