.ct-on-sand{background:var(--sand)}.ct-phero{padding-top:calc(118px + env(safe-area-inset-top,0px));padding-bottom:clamp(56px,7vw,96px);overflow:hidden}.ct-phero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid}.ct-phero-copy{gap:var(--space-3);justify-items:start;min-width:0;display:grid}.ct-phero h1{letter-spacing:-.035em;font-size:clamp(3rem,7.2vw,6.6rem);font-weight:500;line-height:.9}.ct-phero h1 .ct-kw{opacity:0;animation:ct-fadeup 1s .15s var(--ease) forwards;display:block;transform:translateY(30px)}.ct-phero h1 em{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--terracotta-on-blue);opacity:0;animation:ct-fadeup 1s .35s var(--ease) forwards;margin-top:.14em;font-size:.58em;font-style:italic;font-weight:400;line-height:1.06;display:block}.ct-phero .ct-lead{max-width:33rem;font-size:17px}.ct-stack{min-height:clamp(420px,44vw,600px);position:relative}.ct-stack figure{background:var(--blue-deep);opacity:0;animation:ct-drop 1.1s var(--ease) forwards;margin:0;position:absolute;overflow:hidden;box-shadow:0 30px 70px #03142d73}.ct-stack img{object-fit:cover;width:100%;height:100%}.ct-stack figcaption{background:var(--ivory);color:var(--blue);font:600 11.5px/1.2 var(--font-condensed);letter-spacing:.08em;text-transform:uppercase;padding:9px 12px;position:absolute;bottom:0;left:0}.ct-stack .ct-s1{aspect-ratio:16/10;z-index:2;animation-delay:.35s;top:18%;left:0;right:14%}.ct-stack .ct-s2{aspect-ratio:3/4;z-index:1;width:34%;animation-delay:.55s;top:0;right:0}.ct-stack .ct-s3{aspect-ratio:3/4;z-index:3;width:30%;animation-delay:.75s;bottom:0;right:6%}@keyframes ct-drop{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (max-width:900px){.ct-phero-grid{grid-template-columns:1fr}.ct-stack{aspect-ratio:4/3;min-height:0}}.ct-metro{background:var(--ivory);border-bottom:1px solid var(--line);padding-block:clamp(56px,7vw,88px) clamp(40px,5vw,64px)}.ct-metro-head{flex-wrap:wrap;align-items:center;gap:14px 18px;margin-bottom:34px;display:flex}.ct-m-badge{background:var(--terracotta);width:44px;height:44px;color:var(--white);font:700 16px/1 var(--font-condensed);letter-spacing:.02em;border-radius:50%;place-items:center;display:grid}.ct-metro-head h2{color:var(--blue);letter-spacing:-.01em;font-size:clamp(1.6rem,2.6vw,2.2rem)}.ct-m-dir{font:600 12px/1.2 var(--font-condensed);letter-spacing:.09em;text-transform:uppercase;color:var(--text-meta);margin-left:auto}.ct-line-map{grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 22px;padding:0;list-style:none;display:grid;position:relative}.ct-line-map:before{content:"";background:var(--terracotta);transform-origin:0;height:6px;animation:ct-draw 1.6s .2s var(--ease) both;position:absolute;top:13px;left:10%;right:10%}@keyframes ct-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.ct-line-map li{position:relative}.ct-line-map a{text-align:center;color:var(--blue);justify-items:center;gap:6px;padding:0 6px 6px;text-decoration:none;display:grid}.ct-line-map i{background:var(--ivory);border:6px solid var(--blue);z-index:1;width:32px;height:32px;transition:transform .3s var(--ease), border-color .3s;border-radius:50%;position:relative}.ct-line-map a:hover i{border-color:var(--terracotta);transform:scale(1.18)}.ct-line-map b{font:500 1.3rem/1.05 var(--font-condensed);margin-top:8px}.ct-line-map span{font:600 12px/1.3 var(--font-condensed);letter-spacing:.06em;text-transform:uppercase;color:var(--text-meta)}.ct-line-map a:hover b{color:var(--terracotta-text)}@media (max-width:760px){.ct-m-dir{margin-left:0}.ct-line-map{grid-template-columns:1fr;gap:0}.ct-line-map:before{transform-origin:50% 0;width:6px;height:auto;animation-name:ct-drawv;inset:16px auto 16px 13px}@keyframes ct-drawv{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.ct-line-map a{text-align:left;grid-template-columns:32px minmax(0,1fr);justify-items:start;gap:2px 16px;padding:8px 0}.ct-line-map i{grid-row:span 2}.ct-line-map b{margin-top:2px}}.ct-cases{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;display:grid}.ct-case-card{background:var(--white);color:var(--ink);transition:border-color .3s, transform .4s var(--ease);border-bottom:3px solid #0000;grid-column:span 2;grid-template-rows:auto 1fr;text-decoration:none;display:grid}.ct-case-card:hover{border-color:var(--terracotta);transform:translateY(-4px)}.ct-case-card figure{aspect-ratio:4/3;margin:0;overflow:hidden}.ct-case-card img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}.ct-case-card:hover img{transform:scale(1.05)}.ct-case-card.ct-big{grid-column:span 6;grid-template-rows:none;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.ct-case-card.ct-big figure{aspect-ratio:16/9}.ct-case-card:nth-child(5){grid-column:span 6;grid-template-rows:none;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.ct-case-card:nth-child(5) figure{aspect-ratio:16/9;order:2}.ct-case-card:nth-child(5) .ct-cc-body{align-content:center;padding:clamp(22px,3vw,40px)}.ct-case-card:nth-child(5) h3{font-size:clamp(2rem,3.4vw,3rem)}.ct-cc-body{align-content:start;gap:10px;padding:20px 22px 22px;display:grid}.ct-case-card.ct-big .ct-cc-body{align-content:center;padding:clamp(22px,3vw,40px)}.ct-cc-meta{font:600 12px/1.2 var(--font-condensed);letter-spacing:.08em;text-transform:uppercase;color:var(--terracotta-text)}.ct-cc-body h3{color:var(--blue);letter-spacing:-.01em;font-size:1.7rem;line-height:1.02}.ct-case-card.ct-big h3{font-size:clamp(2rem,3.4vw,3rem)}.ct-cc-body p{color:var(--text-secondary);font-size:15.5px}.ct-cc-body dl{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px 26px;margin:4px 0 0;padding-top:12px;display:flex}.ct-cc-body dt{font:600 11.5px/1.2 var(--font-condensed);letter-spacing:.08em;text-transform:uppercase;color:var(--text-meta)}.ct-cc-body dd{font:500 1.15rem/1.15 var(--font-condensed);color:var(--blue);margin:2px 0 0}@media (max-width:900px){.ct-cases{grid-template-columns:1fr 1fr}.ct-case-card,.ct-case-card:nth-child(5){grid-column:span 1;grid-template-rows:auto 1fr;grid-template-columns:none}.ct-case-card:nth-child(5) figure{aspect-ratio:4/3;order:0}.ct-case-card:nth-child(5) .ct-cc-body{align-content:start;padding:20px 22px 22px}.ct-case-card:nth-child(5) h3{font-size:1.7rem}.ct-case-card.ct-big{grid-column:1/-1;grid-template-columns:1fr}}@media (max-width:560px){.ct-cases{grid-template-columns:1fr}.ct-stack .ct-s2{display:none}.ct-stack .ct-s1{top:0;right:0}.ct-stack .ct-s3{width:34%;right:4%}.ct-stack{aspect-ratio:5/4}}.ct-prat{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;display:grid}.ct-prat-pic{aspect-ratio:4/5;margin:0;position:relative;overflow:hidden}.ct-prat-pic img{object-fit:cover;width:100%;height:100%}.ct-prat-pic figcaption{background:var(--ivory);color:var(--blue);font:600 12px/1.2 var(--font-condensed);letter-spacing:.08em;text-transform:uppercase;padding:11px 15px;position:absolute;bottom:0;left:0}.ct-pillars{margin:var(--space-4) 0 var(--space-3);border-top:1px solid var(--blue);padding:0;list-style:none}.ct-pillar{padding:var(--space-3) 0;border-bottom:1px solid #042d6233;grid-template-columns:52px minmax(0,1fr);gap:12px;display:grid}.ct-pillar .ct-n{font:600 13px/1 var(--font-condensed);letter-spacing:.08em;color:var(--terracotta-text);padding-top:.55em}.ct-pillar h3{letter-spacing:-.02em;color:var(--blue);font-size:1.75rem;line-height:1}.ct-pillar p{color:var(--text-secondary);max-width:32rem;margin-top:8px}@media (max-width:900px){.ct-prat{gap:var(--space-4);grid-template-columns:1fr}.ct-prat-pic{aspect-ratio:4/3}}.ct-concepts{border-top:1px solid var(--blue);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.ct-concepts a{border-bottom:1px solid var(--line);color:var(--blue);transition:padding .35s var(--ease), color .3s;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:20px 18px 20px 0;text-decoration:none;display:grid}.ct-concepts li:not(:nth-child(3n+1)) a{border-left:1px solid var(--line);padding-left:18px}.ct-concepts b{font:500 clamp(1.7rem, 2.8vw, 2.4rem)/1 var(--font-condensed);letter-spacing:-.02em}.ct-concepts span{font:600 12px/1.3 var(--font-condensed);letter-spacing:.07em;text-transform:uppercase;color:var(--text-meta);grid-row:2;margin-top:6px}.ct-concepts i{color:var(--terracotta-text);transition:transform .3s var(--ease);grid-area:1/2/span 2;font-size:22px;font-style:normal}.ct-concepts a:hover{color:var(--terracotta-text)}.ct-concepts a:hover i{transform:translate(5px)}@media (max-width:760px){.ct-concepts{grid-template-columns:1fr 1fr}.ct-concepts li:not(:nth-child(3n+1)) a{border-left:0;padding-left:0}.ct-concepts li:nth-child(2n) a{border-left:1px solid var(--line);padding-left:16px}}@media (max-width:420px){.ct-concepts{grid-template-columns:1fr}.ct-concepts li:nth-child(2n) a{border-left:0;padding-left:0}}.ct-zlabel{font:600 12px/1.2 var(--font-condensed);letter-spacing:.09em;text-transform:uppercase;color:var(--sand);margin-bottom:14px}a.ct-dep{color:inherit;text-decoration:none;display:block}a.ct-dep:hover strong{color:var(--terracotta-on-blue)}a.ct-dep.ct-main:hover strong{color:var(--white)}@media (prefers-reduced-motion:reduce){.ct-phero h1 .ct-kw,.ct-phero h1 em,.ct-stack figure{opacity:1;transform:none}.ct-line-map:before{transform:none}}.ct-lead a{color:var(--terracotta-text)}.ct-phero .ct-lead a{color:var(--terracotta-on-blue)}.ct-line-map .ct-stop{text-align:center;color:var(--blue);justify-items:center;gap:6px;padding:0 6px 6px;display:grid}.ct-line-map .ct-stop i{border-color:var(--line);background:var(--ivory)}.ct-line-map .ct-stop b{color:var(--text-meta);font-weight:400}.ct-line-map .ct-ev i{border-color:var(--terracotta)}.ct-case-card.ct-big.ct-flip{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.ct-case-card.ct-big.ct-flip figure{order:2}.ct-concepts.ct-two{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-concepts.ct-two li:not(:nth-child(3n+1)) a{border-left:0;padding-left:0}.ct-concepts.ct-two li:nth-child(2n) a{border-left:1px solid var(--line);padding-left:18px}@media (max-width:760px){.ct-line-map .ct-stop{text-align:left;grid-template-columns:32px minmax(0,1fr);justify-items:start;gap:2px 16px;padding:8px 0}.ct-line-map .ct-stop i{grid-row:span 2}.ct-case-card.ct-big.ct-flip{grid-template-columns:1fr}.ct-case-card.ct-big.ct-flip figure{order:0}}@media (max-width:420px){.ct-concepts.ct-two{grid-template-columns:1fr}.ct-concepts.ct-two li:nth-child(2n) a{border-left:0;padding-left:0}}
