:root{--ct-ink:#171714;--ct-warm:#f3efe8;--ct-paper:#fbfaf7;--ct-gold:#b08a57;--ct-line:rgba(31,28,23,.13)}
.ct-solutions-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 84% 10%,rgba(190,151,92,.24),transparent 34%),linear-gradient(125deg,#191816 0%,#2b2925 64%,#3a332a 100%);padding:clamp(72px,10vw,140px) 0 clamp(64px,8vw,112px)}
.ct-solutions-hero:after{content:"";position:absolute;inset:0;opacity:.18;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.12) 50%,transparent 50.2%);background-size:25% 100%}
.ct-solutions-hero__inner{position:relative;z-index:1;max-width:950px}.ct-solutions-hero__eyebrow,.ct-projects__eyebrow,.ct-gallery__eyebrow{margin:0 0 14px;color:#c7a775;font:700 12px/1.2 Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.ct-solutions-hero h1{max-width:900px;margin:0;color:#fff;font:700 clamp(42px,6.4vw,84px)/.98 Jost,sans-serif;letter-spacing:-.035em}.ct-solutions-hero__lead{max-width:720px;margin:28px 0 0;color:rgba(255,255,255,.75);font:500 clamp(17px,2vw,22px)/1.55 Manrope,sans-serif}
.ct-solutions-list{background:var(--ct-paper);padding:clamp(56px,7vw,100px) 0}.ct-solutions-list__heading{max-width:780px;margin-bottom:36px}.ct-solutions-list__heading h2{margin:0;font:700 clamp(32px,4.3vw,54px)/1.05 Jost,sans-serif;color:var(--ct-ink)}.ct-solutions-list__heading p{margin:15px 0 0;color:#69645d;font-size:17px}.ct-solutions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ct-solution-premium{min-height:270px;display:flex;flex-direction:column;padding:30px;color:var(--ct-ink);text-decoration:none;background:#fff;border:1px solid var(--ct-line);border-radius:2px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.ct-solution-premium:hover{color:var(--ct-ink);transform:translateY(-5px);border-color:rgba(176,138,87,.55);box-shadow:0 22px 55px rgba(45,39,31,.1)}.ct-solution-premium__number{color:var(--ct-gold);font:700 12px/1 Manrope,sans-serif;letter-spacing:.12em}.ct-solution-premium h3{margin:34px 0 14px;font:650 26px/1.12 Jost,sans-serif}.ct-solution-premium p{margin:0;color:#746e65;line-height:1.6}.ct-solution-premium__link{margin-top:auto;padding-top:24px;font-weight:700}
.ct-projects{padding:clamp(64px,8vw,112px) 0;background:var(--ct-warm)}.ct-projects__heading{display:grid;grid-template-columns:1fr minmax(280px,560px);gap:48px;align-items:end;margin-bottom:38px}.ct-projects__title{margin:0;color:var(--ct-ink);font:700 clamp(36px,5vw,64px)/1 Jost,sans-serif;letter-spacing:-.025em}.ct-projects__aside{display:flex;align-items:flex-end;gap:24px}.ct-projects__intro{flex:1;margin:0;color:#676159;font:500 17px/1.65 Manrope,sans-serif}.ct-projects__controls{display:flex;flex:0 0 auto;gap:8px}.ct-projects__controls button{display:grid;place-items:center;width:48px;height:48px;padding:0;color:var(--ct-ink);background:transparent;border:1px solid rgba(23,23,20,.28);border-radius:50%;font:300 30px/1 sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease,opacity .2s ease}.ct-projects__controls button:hover:not(:disabled){color:#fff;background:var(--ct-ink)}.ct-projects__controls button:disabled{opacity:.28;cursor:default}.ct-projects__grid{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain}.ct-projects__grid::-webkit-scrollbar{display:none}
.ct-project-card{flex:0 0 calc((100% - 26px)/2);min-width:0;overflow:hidden;background:#fff;border-radius:3px;box-shadow:0 18px 45px rgba(36,31,25,.08);scroll-snap-align:start}.ct-project-card__button{width:100%;padding:0;color:inherit;text-align:left;background:none;border:0;cursor:pointer}.ct-project-card__visual{position:relative;display:block;height:clamp(340px,37vw,560px);overflow:hidden;background:#24231f}.ct-project-card__visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.22,1,.36,1)}.ct-project-card__button:hover img{transform:scale(1.035)}.ct-project-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 48%,rgba(0,0,0,.72) 100%)}
.ct-project-card__count{position:absolute;top:18px;right:18px;display:flex;align-items:center;gap:8px;padding:9px 12px;color:#fff;background:rgba(18,17,15,.7);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);border-radius:999px;font:600 12px/1 Manrope,sans-serif}.ct-project-card__count svg{width:16px;height:16px;fill:currentColor}.ct-project-card__open{position:absolute;left:24px;bottom:22px;color:#fff;font:700 14px/1 Manrope,sans-serif;letter-spacing:.02em}.ct-project-card__open b{display:inline-grid;place-items:center;width:34px;height:34px;margin-left:8px;border:1px solid rgba(255,255,255,.45);border-radius:50%}.ct-project-card__body{display:block;padding:27px 28px 30px}.ct-project-card__meta{display:flex;flex-wrap:wrap;gap:8px 20px;color:#99764b;font:700 11px/1.4 Manrope,sans-serif;letter-spacing:.1em;text-transform:uppercase}.ct-project-card__name{display:block;margin-top:13px;color:var(--ct-ink);font:650 clamp(25px,2.6vw,34px)/1.1 Jost,sans-serif}.ct-project-card__description{display:block;margin-top:12px;color:#69645d;font:500 15px/1.6 Manrope,sans-serif}
.ct-projects__all{margin-top:32px;text-align:right}.ct-projects__all a{color:var(--ct-ink);font:700 14px/1.3 Manrope,sans-serif;text-decoration:none;border-bottom:1px solid rgba(23,23,20,.32);padding-bottom:4px}.ct-projects__all a:hover{color:#8d6738;border-color:#8d6738}
.ct-gallery[hidden]{display:none}.ct-gallery{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:22px}.ct-gallery__backdrop{position:absolute;inset:0;background:rgba(10,10,9,.92);backdrop-filter:blur(14px)}.ct-gallery__dialog{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(1480px,96vw);height:min(940px,94vh);color:#fff;background:#161614;border:1px solid rgba(255,255,255,.12);box-shadow:0 35px 100px rgba(0,0,0,.55)}.ct-gallery__header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px;padding:18px 22px 16px 28px;border-bottom:1px solid rgba(255,255,255,.1)}.ct-gallery__header p{margin-bottom:6px}.ct-gallery__title{margin:0;color:#fff;font:650 clamp(22px,3vw,34px)/1.05 Jost,sans-serif}.ct-gallery__close{flex:0 0 auto;width:48px;height:48px;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:50%;font:300 34px/1 sans-serif;cursor:pointer}.ct-gallery__stage{position:relative;min-height:0;overflow:hidden;display:grid;place-items:center;background:#0d0d0c;touch-action:pan-y}.ct-gallery__stage img,.ct-gallery__stage video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block}.ct-gallery__arrow{position:absolute;top:50%;z-index:2;width:52px;height:52px;color:#fff;background:rgba(20,20,18,.72);border:1px solid rgba(255,255,255,.2);border-radius:50%;font:300 40px/42px sans-serif;cursor:pointer;backdrop-filter:blur(8px)}.ct-gallery__arrow--prev{left:22px}.ct-gallery__arrow--next{right:22px}.ct-gallery__footer{display:flex;justify-content:space-between;gap:20px;padding:14px 28px;color:rgba(255,255,255,.72);border-top:1px solid rgba(255,255,255,.08);font-size:14px}.ct-gallery__caption,.ct-gallery__counter{margin:0}.ct-gallery__thumbs{display:flex;gap:9px;padding:0 22px 18px;overflow-x:auto;scrollbar-width:thin}.ct-gallery__thumb{position:relative;flex:0 0 76px;height:54px;overflow:hidden;padding:0;background:#252521;border:2px solid transparent;opacity:.58;cursor:pointer}.ct-gallery__thumb.is-active{border-color:#c7a775;opacity:1}.ct-gallery__thumb img{width:100%;height:100%;object-fit:cover}.ct-gallery__thumb--video:after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.25);font-size:15px}body.ct-gallery-open{overflow:hidden}
@media(max-width:991.98px){.ct-solutions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-projects__heading{grid-template-columns:1fr;gap:18px}.ct-projects__aside{align-items:center}.ct-project-card{flex-basis:100%}.ct-project-card__visual{height:min(92vw,600px)}}
@media(max-width:575.98px){.ct-solutions-hero{padding:60px 0 64px}.ct-solutions-grid{grid-template-columns:1fr}.ct-solution-premium{min-height:230px;padding:25px}.ct-projects__aside{align-items:flex-end}.ct-projects__intro{font-size:15px}.ct-projects__controls button{width:42px;height:42px}.ct-project-card__visual{height:112vw;max-height:560px}.ct-project-card__body{padding:23px 22px 26px}.ct-project-card__count{top:13px;right:13px}.ct-gallery{padding:0}.ct-gallery__dialog{width:100vw;height:100dvh;border:0}.ct-gallery__header{min-height:76px;padding:14px 14px 12px 18px}.ct-gallery__close{width:44px;height:44px}.ct-gallery__arrow{width:44px;height:44px;font-size:34px}.ct-gallery__arrow--prev{left:10px}.ct-gallery__arrow--next{right:10px}.ct-gallery__footer{padding:12px 16px}.ct-gallery__thumbs{padding:0 14px 12px}}
@media(prefers-reduced-motion:reduce){.ct-project-card__visual img,.ct-solution-premium{transition:none}}
.ct-gallery__stage>img,.ct-gallery__stage>video{position:absolute;inset:0}

/* Unified premium layout for every /solutions/<slug>/ page */
.ct-solution-detail-hero{position:relative;overflow:hidden;padding:36px 0 clamp(70px,9vw,128px);color:#fff;background:radial-gradient(circle at 84% 10%,rgba(190,151,92,.24),transparent 34%),linear-gradient(125deg,#191816 0%,#2b2925 64%,#3a332a 100%)}.ct-solution-detail-hero:after{content:"";position:absolute;inset:0;opacity:.18;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.12) 50%,transparent 50.2%);background-size:25% 100%}.ct-solution-detail-hero .container-xxl{position:relative;z-index:1}.ct-solution-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:clamp(48px,6vw,78px);color:rgba(255,255,255,.48);font:600 12px/1.4 Manrope,sans-serif;letter-spacing:.05em;text-transform:uppercase}.ct-solution-breadcrumb a{color:rgba(255,255,255,.72);text-decoration:none}.ct-solution-breadcrumb a:hover{color:#fff}.ct-solution-detail-hero__inner{max-width:1040px}.ct-solution-detail-hero h1{max-width:1000px;margin:0;color:#fff;font:700 clamp(42px,6.1vw,82px)/.98 Jost,sans-serif;letter-spacing:-.035em}.ct-solution-detail-hero__lead{max-width:790px;margin:28px 0 0;color:rgba(255,255,255,.75);font:500 clamp(17px,2vw,22px)/1.55 Manrope,sans-serif}.ct-solution-detail-hero__button,.ct-solution-detail-cta button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;margin-top:34px;padding:15px 18px 15px 22px;color:#191816;background:#fff;border:1px solid rgba(255,255,255,.4);border-radius:2px;font:700 14px/1 Manrope,sans-serif;cursor:pointer;transition:transform .2s ease,background .2s ease}.ct-solution-detail-hero__button span,.ct-solution-detail-cta button span{display:grid;place-items:center;width:32px;height:32px;color:#fff;background:#1d1c19;border-radius:50%}.ct-solution-detail-hero__button:hover,.ct-solution-detail-cta button:hover{transform:translateY(-2px);background:#f3efe8}
.ct-solution-detail{padding:clamp(64px,8vw,112px) 0;background:var(--ct-paper)}.ct-solution-detail__copy{max-width:980px;margin:0 auto;padding:clamp(30px,5vw,68px);color:#4f4a43;background:#fff;border:1px solid var(--ct-line);box-shadow:0 20px 60px rgba(42,36,29,.07);font:500 17px/1.8 Manrope,sans-serif}.ct-solution-detail__copy>:first-child{margin-top:0}.ct-solution-detail__copy>:last-child{margin-bottom:0}.ct-solution-detail__copy h2{margin:1.45em 0 .55em;color:var(--ct-ink);font:700 clamp(29px,3.4vw,44px)/1.08 Jost,sans-serif;letter-spacing:-.018em}.ct-solution-detail__copy h3{margin:1.35em 0 .5em;color:var(--ct-ink);font:650 clamp(23px,2.5vw,31px)/1.15 Jost,sans-serif}.ct-solution-detail__copy p{margin:0 0 1.15em}.ct-solution-detail__copy ul,.ct-solution-detail__copy ol{margin:1.1em 0;padding-left:1.3em}.ct-solution-detail__copy li{margin:.45em 0}.ct-solution-detail__copy a{color:#8d6738;text-decoration-thickness:1px;text-underline-offset:3px}.ct-solution-detail__copy img{max-width:100%;height:auto}.ct-solution-detail__copy table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.ct-solution-detail__copy th,.ct-solution-detail__copy td{padding:12px;border:1px solid var(--ct-line)}
.ct-solution-section-heading{max-width:760px;margin-bottom:30px}.ct-solution-section-heading h2{margin:0;color:var(--ct-ink);font:700 clamp(34px,4.3vw,54px)/1.05 Jost,sans-serif;letter-spacing:-.025em}.ct-solution-products,.ct-solution-articles{margin-top:clamp(64px,8vw,104px)}.ct-solution-products__grid,.ct-solution-articles__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ct-solution-product,.ct-solution-article{min-height:240px;display:flex;flex-direction:column;padding:28px;color:var(--ct-ink);text-decoration:none;background:#fff;border:1px solid var(--ct-line);border-radius:2px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.ct-solution-product:hover,.ct-solution-article:hover{color:var(--ct-ink);transform:translateY(-4px);border-color:rgba(176,138,87,.55);box-shadow:0 22px 55px rgba(45,39,31,.1)}.ct-solution-product h3,.ct-solution-article h3{margin:0 0 14px;font:650 25px/1.14 Jost,sans-serif}.ct-solution-product p{margin:0;color:#746e65;line-height:1.6}.ct-solution-product>span,.ct-solution-article__link{margin-top:auto;padding-top:24px;font-weight:700}.ct-solution-article__number{margin-bottom:32px;color:var(--ct-gold);font:700 12px/1 Manrope,sans-serif;letter-spacing:.12em}
.ct-solution-detail-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px;margin-top:clamp(64px,8vw,104px);padding:clamp(32px,5vw,64px);color:#fff;background:radial-gradient(circle at 90% 10%,rgba(190,151,92,.24),transparent 38%),#211f1b}.ct-solution-detail-cta h2{max-width:760px;margin:0;color:#fff;font:700 clamp(34px,4.5vw,58px)/1.02 Jost,sans-serif;letter-spacing:-.025em}.ct-solution-detail-cta div>p:last-child{max-width:700px;margin:20px 0 0;color:rgba(255,255,255,.68);font:500 17px/1.65 Manrope,sans-serif}.ct-solution-detail-cta button{margin:0;white-space:nowrap}
@media(max-width:991.98px){.ct-solution-products__grid,.ct-solution-articles__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-solution-detail-cta{grid-template-columns:1fr;align-items:start}.ct-solution-detail-cta button{justify-self:start}}
@media(max-width:575.98px){.ct-solution-detail-hero{padding:24px 0 64px}.ct-solution-breadcrumb{margin-bottom:42px;font-size:10px}.ct-solution-detail__copy{margin-inline:-2px;padding:26px 22px}.ct-solution-products__grid,.ct-solution-articles__grid{grid-template-columns:1fr}.ct-solution-product,.ct-solution-article{min-height:210px;padding:24px}.ct-solution-detail-cta{gap:28px;padding:30px 24px}.ct-solution-detail-cta button{width:100%}}
