/* Orextic case study. No animation framework, fonts or third-party assets. */
.orextic-case-study, .oxcs-section {
 --oxcs-ink:#171616; --oxcs-muted:#66615f; --oxcs-coral:#ff583a;
 --oxcs-bg:#fcf9f7; --oxcs-soft:#f6ece8; --oxcs-line:#e8dfdb;
 --oxcs-font:Manrope,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 font-family:var(--oxcs-font); color:var(--oxcs-ink);
}
.orextic-case-study {background:var(--oxcs-bg); padding:18px 0 96px;}
.orextic-case-study * , .oxcs-section * {box-sizing:border-box;}
.orextic-case-study img, .oxcs-section img {display:block;max-width:100%;}
.oxcs-section {width:min(1680px,calc(100% - 120px));margin:0 auto;border-bottom:1px solid var(--oxcs-line);padding:34px 0;}
.oxcs-section h1,.oxcs-section h2,.oxcs-section h3,.oxcs-section p,.oxcs-section figure {margin:0;}
.oxcs-section h2 {font-size:clamp(1.65rem,2.2vw,2.75rem);font-weight:570;letter-spacing:-.045em;line-height:1.18;}
.oxcs-section h3 {font-size:clamp(.98rem,1.12vw,1.27rem);font-weight:620;letter-spacing:-.027em;line-height:1.3;}
.oxcs-section p {font-size:clamp(.93rem,1vw,1.12rem);line-height:1.55;color:var(--oxcs-muted);font-weight:400;}
.oxcs-sec-label {font-size:.78rem;letter-spacing:.095em;text-transform:uppercase;font-weight:680;line-height:1.5;margin:0 0 13px;color:var(--oxcs-ink);}
.oxcs-accent {color:var(--oxcs-coral);}
/* Project intro */
.oxcs-hero {display:grid;grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:4.1%;align-items:center;padding-top:46px;padding-bottom:35px;min-height:590px;}
.oxcs-back {display:inline-block;color:#89817b;font-size:.9rem;line-height:1.4;margin-bottom:56px;text-decoration:none;}
.oxcs-back:hover,.oxcs-back:focus-visible{color:var(--oxcs-coral);}
.oxcs-main-title {font-size:clamp(2.45rem,3.4vw,4.15rem);font-weight:630;line-height:1.11;letter-spacing:-.05em;}
.oxcs-title-next {display:block;}
.oxcs-intro {max-width:530px;margin-top:22px!important;}
.oxcs-tags {display:flex;flex-wrap:wrap;gap:9px;margin-top:26px;}
.oxcs-tag {border-radius:999px;padding:7px 15px;background:#f3eae6;color:#6c6561;font-size:.81rem;line-height:1.2;white-space:nowrap;}
.oxcs-media {background:#f4e9e5;overflow:hidden;position:relative;border-radius:28px;min-width:0;}
.oxcs-media img.oxcs-visual-img {display:block;width:100%;height:100%;object-fit:cover;}
.oxcs-media-blank {height:100%;min-height:200px;background:linear-gradient(130deg,#f8efec 0%,#f1e3dd 60%,#f5ece9 100%);}
.oxcs-hero-visual {aspect-ratio:1.63;}
/* Overview */
.oxcs-overview {display:grid;grid-template-columns:minmax(0,34%) 1fr;gap:3%;align-items:center;}
.oxcs-split-label p{max-width:455px;margin-top:15px;}
.oxcs-meta-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;}
.oxcs-meta {background:#f8f0ed;border-radius:16px;padding:21px 17px;min-height:148px;}
.oxcs-meta-label {font-size:.98rem;font-weight:610;margin-top:10px;line-height:1.3;}
.oxcs-meta-value {font-size:.79rem;color:var(--oxcs-muted);line-height:1.45;margin-top:5px;}
.oxcs-icon {width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:13px;background:#fbe6de;color:var(--oxcs-coral);font-size:1.27rem;}
.oxcs-icon-image {width:28px;max-height:30px;object-fit:contain;}
.oxcs-icon-fallback {font-family:var(--oxcs-font);font-weight:600;}
/* Challenges */
.oxcs-challenge,.oxcs-process,.oxcs-results,.oxcs-feedback {display:grid;grid-template-columns:minmax(0,23%) 1fr;gap:3.5%;}
.oxcs-challenge-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;}
.oxcs-challenge-item {padding:5px 20px 8px 25px;min-width:0;border-left:1px solid var(--oxcs-line);}
.oxcs-challenge-item:first-child {border-left:0;padding-left:0;}
.oxcs-challenge-item .oxcs-icon {background:transparent;width:33px;height:34px;justify-content:flex-start;border-radius:0;}
.oxcs-challenge-item .oxcs-icon-image {width:26px;max-height:26px;}
.oxcs-challenge-item h3 {margin:8px 0 8px;}
.oxcs-challenge-item p {font-size:.83rem;line-height:1.48;}
/* Solution */
.oxcs-solution {display:grid;grid-template-columns:minmax(0,33%) minmax(0,1fr);gap:5%;align-items:stretch;}
.oxcs-solution-copy {padding:8px 0 0;}
.oxcs-solution-copy > p {margin-top:17px;max-width:485px;}
.oxcs-solution-items {display:flex;flex-direction:column;gap:17px;margin-top:28px;}
.oxcs-solution-feature {display:flex;gap:17px;align-items:flex-start;}
.oxcs-solution-feature h3 {margin:0 0 3px;}
.oxcs-solution-feature p {font-size:.85rem;line-height:1.46;max-width:370px;}
.oxcs-solution-feature .oxcs-icon {border-radius:12px;width:49px;height:49px;}
.oxcs-solution-visual {width:100%;aspect-ratio:1.65;min-height:0;align-self:center;}
/* Process */
.oxcs-process-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;}
.oxcs-process-step .oxcs-icon {width:53px;height:53px;border-radius:15px;margin:0 0 17px;}
.oxcs-process-number {font-size:.94rem;font-weight:500;line-height:1.25;margin-bottom:6px;}
.oxcs-process-number strong{font-weight:670;}
.oxcs-process-step p {font-size:.84rem;line-height:1.48;}
/* Gallery */
.oxcs-gallery {padding-top:36px;}
.oxcs-gallery h2 {margin-bottom:23px;}
.oxcs-gallery-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2, minmax(0,1fr));gap:14px;}
.oxcs-gallery-item {position:relative;overflow:hidden;border-radius:17px;min-height:185px;}
.oxcs-gallery-item-0{grid-column:span 2;grid-row:span 2;min-height:402px;}
.oxcs-gallery-visual{height:100%;width:100%;border-radius:17px;aspect-ratio:1.9;}
.oxcs-gallery-item-0 .oxcs-gallery-visual{aspect-ratio:auto;}
.oxcs-gallery-item figcaption {position:absolute;left:13px;bottom:13px;z-index:1;background:rgba(36,26,22,.59);padding:7px 12px;border-radius:9px;color:#fff;font-size:.77rem;line-height:1.25;backdrop-filter:blur(8px);}
.oxcs-gallery-item .oxcs-media-blank {min-height:100%;}
/* Results and feedback */
.oxcs-results-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.oxcs-result {padding:20px 15px 18px;border-radius:16px;background:#f8f0ed;min-height:112px;}
.oxcs-result-value {color:var(--oxcs-coral);font-size:clamp(1.5rem,2vw,2.3rem);line-height:1.15;letter-spacing:-.03em;font-weight:650;}
.oxcs-result-label {margin-top:9px;font-size:.83rem;color:var(--oxcs-muted);line-height:1.35;}
.oxcs-outcome-text {align-self:center;font-size:1.04rem;line-height:1.55;color:var(--oxcs-muted);}
.oxcs-quote {display:flex;align-items:center;gap:30px;background:#f6ece8;padding:20px 30px;margin:0;border-radius:18px;}
.oxcs-quote p {flex:1;font-size:1rem;font-style:italic;color:var(--oxcs-ink);line-height:1.55;}
.oxcs-quote footer {border-left:1px solid #e6dcd7;padding-left:25px;display:flex;gap:12px;align-items:center;min-width:220px;}
.oxcs-quote footer img {width:52px;height:52px;object-fit:cover;border-radius:50%;}
.oxcs-quote strong,.oxcs-quote small{display:block;font-size:.84rem;line-height:1.4;}
.oxcs-quote small{font-size:.75rem;color:var(--oxcs-muted);}
/* CTA */
.oxcs-cta {display:flex;justify-content:space-between;align-items:center;gap:35px;background:linear-gradient(118deg,#f9eee9 0%,#fde6da 100%);border:0;border-radius:24px;padding:42px 53px;margin-top:22px;}
.oxcs-cta h2 {font-size:clamp(1.6rem,2.2vw,2.7rem);}
.oxcs-cta p {margin-top:12px;max-width:560px;}
.oxcs-button {background:var(--oxcs-coral);color:white!important;display:inline-flex;align-items:center;justify-content:center;gap:22px;border-radius:12px;padding:18px 36px;font-size:1rem;font-weight:600;white-space:nowrap;text-decoration:none!important;min-height:55px;transition:background-color .18s ease;}
.oxcs-button:hover,.oxcs-button:focus-visible {background:#df472c;}
.oxcs-button:focus-visible,.oxcs-back:focus-visible,.oxcs-project-link:focus-visible {outline:3px solid #bd5b37;outline-offset:4px;}
/* Mid screens */
@media (max-width:1180px) {
 .oxcs-section{width:min(100% - 66px, 1680px);}
 .oxcs-hero{min-height:auto;gap:4%;}
 .oxcs-back{margin-bottom:37px;}
 .oxcs-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .oxcs-meta{min-height:124px;}
 .oxcs-challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px;}
 .oxcs-challenge-item:nth-child(3){border-left:none;padding-left:0;}
 .oxcs-solution-visual{min-height:0;}
}
@media (max-width:767px) {
 .orextic-case-study{padding:8px 0 65px;}
 .oxcs-section{width:calc(100% - 38px);padding:29px 0;}
 .oxcs-hero,.oxcs-overview,.oxcs-challenge,.oxcs-solution,.oxcs-process,.oxcs-results,.oxcs-feedback{display:flex;flex-direction:column;align-items:stretch;gap:22px;}
 .oxcs-hero{gap:28px;padding-top:15px;}
 .oxcs-back{margin-bottom:30px;}
 .oxcs-main-title{font-size:clamp(2.2rem,9vw,3.15rem);}
 .oxcs-intro{margin-top:16px!important;}
 .oxcs-hero-visual{aspect-ratio:1.52;}
 .oxcs-solution-visual{min-height:0;aspect-ratio:1.45;}
 .oxcs-challenge-grid,.oxcs-process-grid,.oxcs-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;}
 .oxcs-challenge-item{border:0!important;padding:0!important;}
 .oxcs-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 .oxcs-meta{min-height:130px;padding:15px;}
 .oxcs-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:10px;}
 .oxcs-gallery-item{min-height:132px;}
 .oxcs-gallery-item-0{grid-column:span 2;grid-row:span 1;min-height:248px;}
 .oxcs-gallery-item-0 .oxcs-gallery-visual{aspect-ratio:1.55;}
 .oxcs-gallery-item figcaption{left:9px;bottom:9px;}
 .oxcs-quote{flex-direction:column;align-items:flex-start;gap:16px;padding:23px;}
 .oxcs-quote footer{border-left:0;border-top:1px solid #e6dcd7;padding:16px 0 0;width:100%;}
 .oxcs-cta{flex-direction:column;align-items:stretch;padding:29px 24px;}
 .oxcs-button{align-self:flex-start;}
}
@media (max-width:380px){
 .oxcs-section{width:calc(100% - 30px);}
 .oxcs-challenge-grid,.oxcs-meta-grid{gap:11px;}
 .oxcs-meta{padding:13px;}
 .oxcs-meta-label{font-size:.87rem;}
 .oxcs-meta-value{font-size:.74rem;}
 .oxcs-result{padding:15px 11px;}
}
@media(prefers-reduced-motion:reduce){.oxcs-button{transition:none;}}
