.ct-sector {
    --sector-accent: #52a4ff;
    --sector-dark: #242424;
    color: #242424;
    background: #fff;
    font-family: "Helvena", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.42;
}

.ct-sector--red {
    --sector-accent: #b51119;
    --sector-dark: #a20f17;
}

.ct-sector--blue {
    --sector-accent: #1457a9;
    --sector-dark: #1157aa;
}

.ct-sector--green {
    --sector-accent: #009d2d;
    --sector-dark: #009f2d;
}

.ct-sector *,
.ct-sector *::before,
.ct-sector *::after {
    box-sizing: border-box;
}

.ct-sector img {
    display: block;
    max-width: 100%;
}

.ct-sector h1,
.ct-sector h2,
.ct-sector h3,
.ct-sector p {
    margin-top: 0;
}

.ct-sector a {
    text-decoration: none;
}

.ct-sector__container {
    width: min(1280px, calc(100% - 80px));
    margin-inline: auto;
}

.ct-sector__hero {
    position: relative;
    padding: 130px 0 40px;
    background: radial-gradient(circle at 86% 44%, #f6fbff 0, #fff 42%);
}

.ct-product-image {
    display: block;
    width: min(100%, 560px);
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 20px 25px rgba(15, 22, 30, .13));
}

.ct-product-image--hero { width: min(100%, 590px); }
.ct-product-image--detail { width: min(100%, 480px); }

.ct-sector__hero-grid {
    display: grid;
    min-height: 760px;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 5%;
}

.ct-sector__intro {
    max-width: 575px;
}

.ct-sector__eyebrow {
    margin-bottom: 12px;
    color: var(--sector-accent);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}

.ct-sector__intro h1 {
    margin-bottom: 55px;
    font-size: clamp(42px, 3.9vw, 58px);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.04;
}

.ct-sector__intro h1 span,
.ct-sector__product-copy h2 span,
.ct-sector__product-subtitle span,
.ct-sector__benefit strong,
.ct-sector__product-points strong {
    color: var(--sector-accent);
}

.ct-sector__intro h1 .ct-sector__green {
    color: #88c800;
}

.ct-sector__intro h2 {
    margin-bottom: 18px;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.ct-sector__intro > p:not(.ct-sector__eyebrow) {
    max-width: 570px;
    margin-bottom: 16px;
    font-size: 19px;
    line-height: 1.35;
}

.ct-sector__benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-top: 50px;
}

.ct-sector__benefit {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.ct-sector__benefit svg {
    width: 45px;
    min-width: 45px;
    color: var(--sector-accent);
}

.ct-sector__benefit strong,
.ct-sector__benefit span {
    display: block;
}

.ct-sector__benefit strong {
    font-size: 16px;
    line-height: 1.15;
}

.ct-sector__benefit span {
    margin-top: 4px;
    font-size: 14px;
    line-height: 1.3;
}

.ct-sector__hero-product {
    display: flex;
    min-width: 0;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    padding-top: 10px;
}

/* Cloth silhouettes stand in for the sector-specific product photos. */
.ct-cloth {
    --cloth-band: var(--sector-accent);
    position: relative;
    display: grid;
    overflow: hidden;
    place-items: center;
    width: 100%;
    aspect-ratio: 1.17;
    border: 7px solid #eeece6;
    background:
        repeating-linear-gradient(95deg, transparent 0 2px, rgba(202, 198, 187, .08) 2px 3px),
        repeating-linear-gradient(3deg, transparent 0 3px, rgba(204, 201, 194, .08) 3px 4px),
        linear-gradient(135deg, #fcfbf8, #f1f0eb 49%, #fff 100%);
    box-shadow: 0 14px 25px rgba(28, 30, 32, .12), inset 0 0 25px rgba(140, 138, 130, .1);
}

.ct-cloth::before,
.ct-cloth::after {
    position: absolute;
    right: 0;
    left: 0;
    height: 6px;
    background: repeating-linear-gradient(90deg, #efeee8 0 3px, #d3d0c8 3px 4px, transparent 4px 7px);
    content: "";
}

.ct-cloth::before { top: 0; }
.ct-cloth::after { bottom: 0; }

.ct-cloth__band {
    display: block;
    width: 100%;
    border-top: 5px double var(--cloth-band);
    border-bottom: 5px double var(--cloth-band);
    color: #252525;
    font-size: clamp(14px, 1.5vw, 21px);
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.6;
    text-align: center;
    white-space: nowrap;
}

.ct-cloth--hero {
    width: min(100%, 520px);
}

.ct-cloth--red { --cloth-band: #aa1720; }
.ct-cloth--blue { --cloth-band: #1457a9; }
.ct-cloth--green { --cloth-band: #009d2d; }

.ct-sector__cloth-stack {
    position: relative;
    width: min(100%, 560px);
    height: 460px;
}

.ct-cloth--stack {
    position: absolute;
    width: 69%;
    aspect-ratio: 1;
}

.ct-cloth--stack:first-child {
    top: 25px;
    left: 4%;
    transform: rotate(-19deg);
}

.ct-cloth--stack:nth-child(2) {
    top: 14px;
    left: 26%;
    transform: rotate(12deg);
}

.ct-cloth--stack:nth-child(3) {
    top: 76px;
    left: 18%;
    transform: rotate(-3deg);
}

.ct-sector__swatches {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin: 24px 0 0;
}

.ct-sector__swatches i {
    width: 26px;
    height: 21px;
    border: 1px solid #dedede;
    border-top: 3px solid #b5121a;
    background: #f5f4f1;
}

.ct-sector__swatches i:nth-child(2) { border-top-color: #009d2d; }
.ct-sector__swatches i:nth-child(3) { border-top-color: #1457a9; }

.ct-sector__ideal {
    max-width: 530px;
    margin: 35px 0 0;
    color: #666;
    font-size: 15px;
    line-height: 1.35;
    text-align: center;
}

.ct-sector__ideal strong {
    color: #333;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

.ct-sector__usage-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 45px;
    margin: 15px auto 75px;
}

.ct-sector__usage-grid article {
    min-height: 200px;
    padding: 24px 28px;
    border-radius: 12px;
    background: #ededed;
    text-align: center;
}

.ct-sector__usage-grid small {
    display: block;
    margin-bottom: 8px;
    color: #1457a9;
    font-size: 13px;
    text-transform: uppercase;
}

.ct-sector__usage-grid article:nth-child(2) small,
.ct-sector__usage-grid article:nth-child(2) h3 { color: #008c28; }
.ct-sector__usage-grid article:nth-child(3) small,
.ct-sector__usage-grid article:nth-child(3) h3 { color: #a71018; }

.ct-sector__usage-grid h3 {
    margin: 0 0 12px;
    color: #1457a9;
    font-size: 25px;
    line-height: 1.1;
}

.ct-sector__usage-grid p {
    margin: 0;
    font-size: 15px;
    line-height: 1.25;
}

.ct-sector__cta {
    display: flex;
    width: fit-content;
    min-width: 300px;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 0 auto;
    padding: 12px 22px;
    border-radius: 7px;
    background: #52a4ff;
    color: #fff !important;
    font-size: 15px;
    font-weight: 600;
    transition: background .2s ease, transform .2s ease;
}

.ct-sector__cta:hover,
.ct-sector__cta:focus-visible {
    background: #267aca;
    transform: translateY(-2px);
}

.ct-sector__cta span { font-size: 25px; line-height: 1; }

.ct-sector__super {
    padding: 80px 0;
    background: #f3f4f5;
}

.ct-sector__ultra {
    padding: 80px 0;
    background: var(--sector-dark);
    color: #fff;
}

.ct-sector__product-grid {
    display: grid;
    min-height: 500px;
    grid-template-columns: 43% 52%;
    align-items: center;
    gap: 5%;
}

.ct-sector__product-grid--ultra {
    grid-template-columns: 60% 35%;
}

.ct-sector__product-visual {
    display: flex;
    min-width: 0;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.ct-cloth--super {
    width: min(100%, 420px);
    aspect-ratio: .92;
}

.ct-cloth--super .ct-cloth__band {
    margin-top: 15%;
    font-size: 13px;
}

.ct-cloth--ultra {
    width: min(100%, 410px);
    aspect-ratio: 1.05;
}

.ct-cloth--ultra .ct-cloth__band {
    align-self: end;
    margin-bottom: 22%;
    font-size: 11px;
}

.ct-sector__product-copy h2 {
    margin: 0 0 8px;
    font-size: clamp(38px, 3.3vw, 52px);
    font-weight: 700;
    line-height: 1;
}

.ct-sector__product-subtitle {
    margin-bottom: 45px;
    font-size: clamp(22px, 2vw, 29px);
    line-height: 1.22;
}

.ct-sector__product-copy > p:not(.ct-sector__product-subtitle) {
    max-width: 760px;
    margin-bottom: 35px;
    font-size: 18px;
    line-height: 1.4;
}

.ct-sector__product-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 38px;
}

.ct-sector__feature-icon {
    display: block;
    width: 48px;
    height: 54px;
    margin-bottom: 18px;
    object-fit: contain;
    object-position: left center;
}

.ct-sector__ultra .ct-sector__feature-icon { filter: brightness(0) invert(1); }

.ct-sector__product-points strong {
    display: block;
    margin-bottom: 7px;
    font-size: 16px;
    line-height: 1.2;
}

.ct-sector__product-points p {
    margin: 0;
    font-size: 15px;
    line-height: 1.35;
}

.ct-sector__ultra .ct-sector__product-copy h2 span {
    color: #97c709;
}

.ct-sector--red .ct-sector__ultra .ct-sector__product-copy h2 span,
.ct-sector--blue .ct-sector__ultra .ct-sector__product-copy h2 span,
.ct-sector--green .ct-sector__ultra .ct-sector__product-copy h2 span {
    color: #fff;
}

.ct-sector__ultra .ct-sector__product-points strong { color: #fff; }

.ct-sector__custom {
    padding: 105px 0 80px;
}

.ct-sector__custom-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 22px;
}

.ct-sector__custom-copy {
    max-width: 520px;
    padding: 8px 35px 0 0;
}

.ct-sector__custom-copy h2 {
    margin-bottom: 40px;
    font-size: clamp(29px, 2.9vw, 41px);
    font-weight: 400;
    line-height: 1.1;
}

.ct-sector__custom-copy h2 span { color: #52a4ff; }
.ct-sector__custom-copy h2 em { color: #97c709; font-style: normal; }

.ct-sector__custom-copy p {
    margin-bottom: 28px;
    font-size: 17px;
}

.ct-sector__custom-copy a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    gap: 15px;
    padding: 11px 19px;
    border-radius: 6px;
    background: #242424;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
}

.ct-sector__custom-tile {
    display: flex;
    min-height: 325px;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    padding: 25px;
    border-radius: 10px;
    color: #fff;
    text-align: center;
}

.ct-sector__custom-tile--blue { background: #52a4ff; }
.ct-sector__custom-tile--green { background: #97c709; }

.ct-sector__tile-icon {
    display: block;
    margin-bottom: 16px;
    font-family: Arial, sans-serif;
    font-size: 76px;
    line-height: 1;
}

.ct-sector__tile-icon--palette { font-size: 66px; }

.ct-sector__custom-tile h3 {
    margin: 0 0 12px;
    font-size: 24px;
    line-height: 1.05;
}

.ct-sector__custom-tile p {
    max-width: 210px;
    margin: 0;
    font-size: 15px;
    line-height: 1.27;
}

.ct-sector__related {
    padding: 55px 0 120px;
}

.ct-sector__related h2 {
    margin-bottom: 33px;
    font-size: 31px;
    font-weight: 400;
    text-align: center;
}

.ct-sector__related-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.ct-sector__related-card {
    position: relative;
    display: flex;
    min-height: 250px;
    align-items: flex-end;
    overflow: hidden;
    padding: 26px;
    border-radius: 16px;
    background: #f0f1f2;
    color: #242424 !important;
    isolation: isolate;
}

.ct-sector__related-card::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(90deg, #f0f1f2 0%, #f0f1f2 43%, rgba(240, 241, 242, .05) 72%);
    content: "";
}

.ct-sector__related-card img {
    position: absolute;
    z-index: -2;
    top: 0;
    right: 0;
    width: 65%;
    height: 100%;
    object-fit: cover;
    transition: opacity .3s ease, transform .35s ease;
}

.ct-sector__related-card--mat img { object-position: right center; }
.ct-sector__related-card .ct-related-image--hover { opacity: 0; }
.ct-sector__related-card:hover .ct-related-image--hover,
.ct-sector__related-card:focus-visible .ct-related-image--hover { opacity: 1; }

.ct-sector__related-card:hover img,
.ct-sector__related-card:focus-visible img { transform: scale(1.05); }

.ct-sector__related-card h3 {
    margin-bottom: 7px;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.05;
}

.ct-sector__related-card p {
    max-width: 215px;
    margin: 0;
    font-size: 15px;
    line-height: 1.25;
}

@media (prefers-reduced-motion: reduce) {
    .ct-sector__related-card img { transition: none; }
}

@media (max-width: 900px) {
    .ct-sector__container { width: min(100% - 48px, 1280px); }
    .ct-sector__hero-grid { min-height: auto; grid-template-columns: 1fr; gap: 55px; }
    .ct-sector__intro { max-width: none; }
    .ct-sector__hero-product { padding-bottom: 35px; }
    .ct-sector__usage-grid { gap: 14px; }
    .ct-sector__usage-grid article { padding: 20px; }
    .ct-sector__product-grid,
    .ct-sector__product-grid--ultra { grid-template-columns: 1fr 1fr; gap: 40px; }
    .ct-sector__product-copy h2 { font-size: 37px; }
    .ct-sector__product-points { gap: 18px; }
    .ct-sector__custom-grid { grid-template-columns: 1fr 1fr; }
    .ct-sector__custom-copy { grid-column: 1 / -1; max-width: none; padding-right: 0; }
}

@media (max-width: 640px) {
    .ct-sector__container { width: min(100% - 36px, 1280px); }
    .ct-sector__hero { padding: 115px 0 55px; }
    .ct-sector__intro h1 { margin-bottom: 32px; font-size: clamp(36px, 11vw, 46px); }
    .ct-sector__intro h2 { font-size: 18px; }
    .ct-sector__intro > p:not(.ct-sector__eyebrow) { font-size: 16px; }
    .ct-sector__benefits { gap: 15px; margin-top: 35px; }
    .ct-sector__benefit { gap: 8px; }
    .ct-sector__benefit svg { width: 31px; min-width: 31px; }
    .ct-sector__benefit strong { font-size: 13px; }
    .ct-sector__benefit span { font-size: 12px; }
    .ct-sector__cloth-stack { height: 330px; }
    .ct-sector__ideal { margin-top: 22px; font-size: 13px; }
    .ct-sector__usage-grid { grid-template-columns: 1fr; margin-bottom: 35px; }
    .ct-sector__usage-grid article { min-height: auto; }
    .ct-sector__usage-grid h3 { font-size: 23px; }
    .ct-sector__cta { min-width: 0; width: min(100% - 36px, 300px); }
    .ct-sector__super,
    .ct-sector__ultra { padding: 60px 0; }
    .ct-sector__product-grid,
    .ct-sector__product-grid--ultra { grid-template-columns: 1fr; gap: 45px; }
    .ct-sector__product-grid--ultra .ct-sector__product-visual { order: -1; }
    .ct-cloth--super,
    .ct-cloth--ultra { width: min(75%, 340px); }
    .ct-sector__product-copy h2 { font-size: 33px; }
    .ct-sector__product-subtitle { margin-bottom: 24px; font-size: 21px; }
    .ct-sector__product-copy > p:not(.ct-sector__product-subtitle) { margin-bottom: 25px; font-size: 16px; }
    .ct-sector__product-points { gap: 18px; }
    .ct-sector__product-points strong { font-size: 14px; }
    .ct-sector__product-points p { font-size: 13px; }
    .ct-sector__custom { padding: 65px 0 40px; }
    .ct-sector__custom-grid { gap: 12px; }
    .ct-sector__custom-copy h2 { margin-bottom: 22px; font-size: 31px; }
    .ct-sector__custom-copy p { font-size: 15px; }
    .ct-sector__custom-tile { min-height: 230px; padding: 12px; }
    .ct-sector__tile-icon { margin-bottom: 8px; font-size: 52px; }
    .ct-sector__custom-tile h3 { font-size: 18px; }
    .ct-sector__custom-tile p { font-size: 12px; }
    .ct-sector__related { padding: 45px 0 80px; }
    .ct-sector__related h2 { font-size: 27px; }
    .ct-sector__related-grid { grid-template-columns: 1fr; gap: 14px; }
    .ct-sector__related-card { min-height: 210px; }
}
