.tsw-realizations,
.tsw-realizations * { box-sizing:border-box; }

.tsw-realizations {
    --tsr-green:#306648;
    --tsr-lime:#90bb32;
    --tsr-cream:#f4f1eb;
    --tsr-text:#202521;
    width:100%;
    color:var(--tsr-text);
    font-family:'Manrope',Arial,sans-serif;
}
.tsw-realizations__inner {
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding-left:24px;
    padding-right:24px;
}

/* HERO */
.tsw-realizations__hero {
    position:relative;
    min-height:600px;
    overflow:hidden;
    background:#173e2e;
}
.tsw-realizations__hero-media,
.tsw-realizations__hero-media img,
.tsw-realizations__hero-overlay {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}
.tsw-realizations__hero-media img {
    display:block;
    object-fit:cover;
    object-position:center;
}
.tsw-realizations__hero-overlay {
    background:
        linear-gradient(90deg,rgba(13,42,30,.88) 0%,rgba(13,42,30,.68) 40%,rgba(13,42,30,.20) 75%),
        linear-gradient(0deg,rgba(0,0,0,.16),rgba(0,0,0,.04));
}
.tsw-realizations__hero-inner {
    position:relative;
    z-index:2;
    min-height:600px;
    display:flex;
    align-items:flex-end;
    padding-top:120px;
    padding-bottom:72px;
}
.tsw-realizations__hero-copy {
    max-width:730px;
    color:#fff;
}
.tsw-realizations__hero h1 {
    margin:0;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:clamp(64px,7vw,106px);
    line-height:.86;
    font-weight:500;
    letter-spacing:-.04em;
}
.tsw-realizations__accent { color:var(--tsr-lime); }
.tsw-realizations__intro {
    max-width:650px;
    margin-top:25px;
    font-size:17px;
    line-height:1.65;
    color:rgba(255,255,255,.86);
}
.tsw-realizations__intro p { margin:0; }

/* PROJECTS */
.tsw-realizations__projects {
    padding:112px 0 120px;
    background:#fff;
}
.tsw-realizations__projects-intro {
    max-width:850px;
    margin-bottom:76px;
}
.tsw-realizations__projects-intro h2 {
    margin:0;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:clamp(54px,5.7vw,82px);
    font-weight:500;
    line-height:.9;
    letter-spacing:-.035em;
}
.tsw-realizations__projects-intro em {
    color:var(--tsr-green);
    font-style:normal;
}
.tsw-realizations__list {
    display:flex;
    flex-direction:column;
    gap:92px;
}
.tsw-realizations__project {
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);
    gap:58px;
    align-items:center;
}
.tsw-realizations__project.is-reverse {
    grid-template-columns:minmax(340px,.84fr) minmax(0,1.16fr);
}
.tsw-realizations__project.is-reverse .tsw-realizations__project-media { order:2; }
.tsw-realizations__project.is-reverse .tsw-realizations__project-copy { order:1; padding-left:24px; padding-right:0; }

.tsw-realizations__project-media {
    position:relative;
    min-height:420px;
    overflow:hidden;
    background:#e7e7e2;
}
.tsw-realizations__project-media img {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .8s cubic-bezier(.2,.65,.25,1);
}
.tsw-realizations__project:hover .tsw-realizations__project-media img { transform:scale(1.025); }
.tsw-realizations__project-number {
    position:absolute;
    left:18px;
    bottom:-8px;
    color:rgba(255,255,255,.64);
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:clamp(86px,9vw,138px);
    line-height:.75;
    font-weight:500;
    letter-spacing:-.06em;
    text-shadow:0 2px 16px rgba(0,0,0,.08);
}
.tsw-realizations__project-copy {
    padding-right:24px;
}
.tsw-realizations__meta {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:var(--tsr-green);
    font-size:11px;
    font-weight:800;
    letter-spacing:.10em;
    text-transform:uppercase;
}
.tsw-realizations__meta i {
    width:28px;
    height:1px;
    background:rgba(48,102,72,.34);
}
.tsw-realizations__project h3 {
    margin:0;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:clamp(42px,4.2vw,62px);
    line-height:.94;
    font-weight:500;
    letter-spacing:-.025em;
}
.tsw-realizations__project-text {
    max-width:500px;
    margin-top:22px;
    color:#5d625f;
    font-size:14px;
    line-height:1.75;
}
.tsw-realizations__project-text p { margin:0; }

/* INVESTOR */
.tsw-realizations__investor {
    padding:108px 0 112px;
    background:var(--tsr-green);
    color:#fff;
}
.tsw-realizations__investor-grid {
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
    gap:80px;
    align-items:center;
}
.tsw-realizations__investor h2 {
    margin:0;
    max-width:700px;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:clamp(52px,5.6vw,78px);
    line-height:.9;
    font-weight:500;
    letter-spacing:-.035em;
}
.tsw-realizations__investor-text {
    max-width:680px;
    margin-top:24px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    line-height:1.75;
}
.tsw-realizations__investor-text p { margin:0; }
.tsw-realizations__investor-link,
.tsw-realizations__investor-link:link,
.tsw-realizations__investor-link:visited,
.tsw-realizations__investor-link:hover,
.tsw-realizations__investor-link:focus {
    display:inline-flex;
    align-items:center;
    gap:14px;
    margin-top:28px;
    color:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    letter-spacing:.02em;
}
.tsw-realizations__investor-link span {
    color:var(--tsr-lime);
    font-size:22px;
    transition:transform .2s ease;
}
.tsw-realizations__investor-link:hover span { transform:translateX(4px); }

.tsw-realizations__investor-brand {
    min-height:320px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:50px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.13);
}
.tsw-realizations__investor-brand img {
    display:block;
    max-width:290px;
    width:100%;
    height:auto;
}

@media (max-width:1024px) {
    .tsw-realizations__hero,
    .tsw-realizations__hero-inner { min-height:540px; }
    .tsw-realizations__projects { padding:86px 0 94px; }
    .tsw-realizations__project,
    .tsw-realizations__project.is-reverse {
        grid-template-columns:1fr 1fr;
        gap:34px;
    }
    .tsw-realizations__project-media { min-height:340px; }
    .tsw-realizations__investor-grid { gap:44px; }
}

@media (max-width:767px) {
    .tsw-realizations__inner { padding-left:18px; padding-right:18px; }
    .tsw-realizations__hero,
    .tsw-realizations__hero-inner { min-height:500px; }
    .tsw-realizations__hero-inner { padding-top:92px; padding-bottom:42px; }
    .tsw-realizations__hero h1 { font-size:clamp(54px,16vw,76px); }
    .tsw-realizations__intro { font-size:14px; }

    .tsw-realizations__projects { padding:64px 0 72px; }
    .tsw-realizations__projects-intro { margin-bottom:46px; }
    .tsw-realizations__projects-intro h2 { font-size:clamp(46px,14vw,62px); }

    .tsw-realizations__list { gap:58px; }
    .tsw-realizations__project,
    .tsw-realizations__project.is-reverse {
        display:flex;
        flex-direction:column;
        gap:24px;
        align-items:stretch;
    }
    .tsw-realizations__project.is-reverse .tsw-realizations__project-media,
    .tsw-realizations__project.is-reverse .tsw-realizations__project-copy { order:initial; }
    .tsw-realizations__project.is-reverse .tsw-realizations__project-copy,
    .tsw-realizations__project-copy {
        padding:0;
    }
    .tsw-realizations__project-media { min-height:270px; }
    .tsw-realizations__project-number { font-size:86px; }
    .tsw-realizations__project h3 { font-size:44px; }
    .tsw-realizations__meta { flex-wrap:wrap; gap:8px; }
    .tsw-realizations__meta i { width:18px; }

    .tsw-realizations__investor { padding:70px 0 72px; }
    .tsw-realizations__investor-grid { grid-template-columns:1fr; gap:38px; }
    .tsw-realizations__investor h2 { font-size:clamp(46px,13vw,62px); }
    .tsw-realizations__investor-brand { min-height:220px; padding:38px; }
}
