/* Trust Clean UK Phase 20 — premium editorial/about system */
.tc-about-premium { background:#fff; color:#3a1e4b; overflow:hidden; }
.tc-about-premium .tc-kicker { display:inline-flex; align-items:center; gap:.4rem; color:#b22166; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; margin-bottom:1rem; }
.tc-kicker-light { color:#ffd8ea !important; }
.tc-about-hero { padding:clamp(4rem,7vw,7rem) 0; background:radial-gradient(circle at 80% 15%, rgba(178,33,102,.18), transparent 30%), linear-gradient(135deg,#3a1e4b,#5b2a72 60%,#7a2d72); color:#fff; }
.tc-about-hero__grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr); gap:clamp(2rem,5vw,5rem); align-items:center; }
.tc-about-hero h1 { color:#fff; font-size:clamp(2.35rem,5vw,5rem); line-height:.98; letter-spacing:-.04em; margin-bottom:1.3rem; max-width:820px; }
.tc-about-hero__lead { color:#f7eefe; font-size:clamp(1.08rem,1.8vw,1.35rem); max-width:760px; }
.tc-about-actions { display:flex; flex-wrap:wrap; gap:1rem; margin:2rem 0; }
.tc-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.85rem 1.35rem; border-radius:999px; font-weight:800; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease, background .2s ease; }
.tc-btn:hover { transform:translateY(-2px); box-shadow:0 16px 30px rgba(58,30,75,.18); }
.tc-btn-primary { background:#b22166; color:#fff; }
.tc-btn-primary:hover { color:#fff; background:#d43a82; }
.tc-btn-secondary { background:#fff; color:#3a1e4b; }
.tc-about-trust-mini { display:grid; gap:.5rem; color:#fff; opacity:.95; font-weight:700; font-size:.95rem; }
.tc-about-hero__visual { min-height:430px; position:relative; }
.tc-about-hero__visual img, .tc-about-hero__placeholder { width:100%; min-height:430px; border-radius:32px; object-fit:cover; box-shadow:0 35px 80px rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.22); }
.tc-about-hero__placeholder { background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.06)), radial-gradient(circle at 30% 20%,rgba(255,255,255,.24),transparent 25%), #4d2462; display:flex; align-items:flex-end; padding:2rem; }
.tc-about-hero__badge { position:absolute; top:2rem; right:2rem; background:#fff; color:#3a1e4b; padding:.75rem 1rem; border-radius:999px; font-weight:900; box-shadow:0 20px 45px rgba(0,0,0,.18); }
.tc-about-hero__glass { width:100%; color:#fff; background:rgba(255,255,255,.13); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.25); border-radius:20px; padding:1rem; font-weight:800; }
.tc-section-heading { max-width:880px; margin:0 auto 2.5rem; text-align:center; }
.tc-section-heading h2, .tc-editorial-grid h2 { font-size:clamp(2rem,4vw,3.35rem); letter-spacing:-.035em; margin-bottom:1rem; }
.tc-section-heading p { color:#6b5a7a; font-size:1.1rem; }
.tc-editorial-grid { display:grid; grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr); gap:clamp(2rem,5vw,5rem); align-items:start; }
.tc-editorial-copy { font-size:1.08rem; color:#5e4d6e; }
.tc-editorial-copy blockquote { margin:2rem 0 0; padding:1.4rem 1.6rem; border-left:5px solid #b22166; background:#f7f1fb; color:#3a1e4b; border-radius:16px; font-weight:900; font-size:1.25rem; }
.tc-founder-journey, .tc-timeline-section { background:#f7f1fb; }
.tc-founder-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.tc-founder-card { background:#fff; border:1px solid #efe2f7; border-radius:28px; padding:1.4rem; box-shadow:0 20px 55px rgba(58,30,75,.08); }
.tc-founder-card img { width:100%; height:320px; object-fit:cover; border-radius:22px; margin-bottom:1rem; }
.tc-founder-card span, .tc-mv-card span { color:#b22166; font-size:.8rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.tc-founder-card p { margin:.55rem 0 0; color:#5f506e; }
.tc-timeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; position:relative; }
.tc-timeline-card { background:#fff; border:1px solid #efe2f7; border-radius:24px; padding:1.4rem; box-shadow:0 18px 45px rgba(58,30,75,.07); }
.tc-timeline-card strong { color:#b22166; display:block; margin-bottom:.6rem; }
.tc-timeline-card h3 { font-size:1.15rem; margin-bottom:.75rem; }
.tc-timeline-card p { color:#665775; font-size:.95rem; }
.tc-ecosystem-section, .tc-final-brand { background:linear-gradient(135deg,#3a1e4b,#632c76); color:#fff; }
.tc-ecosystem-copy { text-align:center; max-width:850px; margin:0 auto 2rem; }
.tc-ecosystem-copy h2, .tc-final-brand h2 { color:#fff; font-size:clamp(2rem,4vw,3.3rem); }
.tc-ecosystem-copy p, .tc-final-brand p { color:#f6eafa; font-size:1.15rem; }
.tc-ecosystem-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.tc-ecosystem-card { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); border-radius:20px; padding:1.2rem; text-align:center; font-weight:900; backdrop-filter:blur(8px); }
.tc-trust-cards { display:grid; gap:1rem; }
.tc-trust-card { background:#fff; border:1px solid #efe2f7; border-radius:18px; padding:1rem 1.2rem; box-shadow:0 16px 40px rgba(58,30,75,.06); font-weight:800; }
.tc-mv-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem; }
.tc-mv-card { background:#fff; border:1px solid #efe2f7; border-radius:28px; padding:2rem; box-shadow:0 22px 60px rgba(58,30,75,.08); }
.tc-mv-card p { font-size:1.1rem; color:#5b4b6b; margin:.8rem 0 0; }
.tc-final-brand { text-align:center; }
.tc-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem; }
.tc-blog-card { background:#fff; border:1px solid #efe2f7; border-radius:24px; padding:1.3rem; box-shadow:0 18px 45px rgba(58,30,75,.07); }
.tc-blog-card img { border-radius:18px; aspect-ratio:16/10; object-fit:cover; margin-bottom:1rem; }
.tc-blog-card h2 { font-size:1.35rem; }
.tc-single-post { max-width:900px; margin:0 auto; }
.tc-single-post__hero { padding:4rem 0; background:#f7f1fb; }
.tc-single-post__content { font-size:1.1rem; }
.tc-single-post__content p { margin-bottom:1.3rem; }
@media (max-width: 980px) { .tc-about-hero__grid,.tc-editorial-grid,.tc-founder-cards,.tc-mv-grid { grid-template-columns:1fr; } .tc-timeline,.tc-ecosystem-grid,.tc-blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .tc-about-hero__visual { min-height:320px; } }
@media (max-width: 640px) { .tc-about-hero { padding:3rem 0; } .tc-about-actions { flex-direction:column; } .tc-btn { width:100%; } .tc-timeline,.tc-ecosystem-grid,.tc-blog-grid { grid-template-columns:1fr; } .tc-founder-card img { height:240px; } }


/* Phase 21 polish: align About page with global Trust Clean visual system and improve contrast/readability. */
.tc-about-premium .tc-about-hero {
    padding: clamp(4.5rem, 6.5vw, 6.25rem) 0 clamp(4.25rem, 6vw, 5.75rem);
}
.tc-about-premium .tc-about-hero h1 {
    font-size: clamp(2.55rem, 4.15vw, 4.25rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.045em;
    max-width: 760px;
}
.tc-about-premium .tc-section-heading h2,
.tc-about-premium .tc-editorial-grid h2,
.tc-about-premium .tc-ecosystem-copy h2,
.tc-about-premium .tc-final-brand h2 {
    font-size: clamp(2rem, 3.2vw, 3.05rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em;
}
.tc-about-premium .tc-about-hero__lead,
.tc-about-premium .tc-ecosystem-copy p,
.tc-about-premium .tc-final-brand p {
    font-size: clamp(1rem, 1.55vw, 1.2rem);
    line-height: 1.7;
}
.tc-about-premium .tc-btn,
.tc-about-premium a.tc-btn {
    border-radius: 14px !important;
    min-width: 170px;
    min-height: 50px;
    font-size: 0.98rem;
    box-shadow: 0 14px 34px rgba(178, 33, 102, .22);
}
.tc-about-premium .tc-btn-primary,
.tc-about-premium a.tc-btn-primary {
    background: #b22166 !important;
    color: #ffffff !important;
    border: 1px solid #b22166 !important;
}
.tc-about-premium .tc-btn-secondary,
.tc-about-premium a.tc-btn-secondary {
    background: #ffffff !important;
    color: #3a1e4b !important;
    border: 1px solid rgba(255,255,255,.82) !important;
    text-shadow: none !important;
}
.tc-about-premium .tc-btn-secondary:hover,
.tc-about-premium a.tc-btn-secondary:hover {
    background: #f7f1fb !important;
    color: #3a1e4b !important;
}
.tc-about-premium .tc-kicker {
    background: rgba(255,255,255,.95);
    color: #b22166 !important;
    border: 1px solid rgba(178, 33, 102, .14);
    border-radius: 999px;
    padding: .45rem .8rem;
    font-size: .74rem;
    line-height: 1;
}
.tc-about-premium .tc-about-story .tc-kicker,
.tc-about-premium .tc-trust-section .tc-kicker,
.tc-about-premium .tc-timeline-section .tc-kicker,
.tc-about-premium .tc-founder-journey .tc-kicker {
    background: #f7f1fb;
    color: #b22166 !important;
}
.tc-about-premium .tc-kicker-light,
.tc-about-premium .tc-ecosystem-section .tc-kicker,
.tc-about-premium .tc-final-brand .tc-kicker {
    background: rgba(255,255,255,.92) !important;
    color: #b22166 !important;
    text-shadow: none !important;
}
.tc-about-premium .tc-ecosystem-card {
    background: rgba(255,255,255,.16);
    color: #ffffff;
    border-color: rgba(255,255,255,.3);
}
.tc-about-premium .tc-about-hero__placeholder,
.tc-about-premium .tc-about-hero__visual img {
    min-height: 390px;
}
.tc-about-premium .tc-about-hero__visual {
    min-height: 390px;
}
.tc-about-premium .tc-about-hero__badge {
    color: #3a1e4b !important;
    background: #ffffff !important;
}
.tc-about-premium .tc-about-hero__glass {
    color: #ffffff !important;
    line-height: 1.5;
}
@media (max-width: 980px) {
    .tc-about-premium .tc-about-hero h1 { font-size: clamp(2.4rem, 8vw, 3.5rem) !important; }
    .tc-about-premium .tc-about-hero__visual { min-height: 300px; }
    .tc-about-premium .tc-about-hero__placeholder,
    .tc-about-premium .tc-about-hero__visual img { min-height: 300px; }
}
@media (max-width: 640px) {
    .tc-about-premium .tc-about-hero { padding: 3.25rem 0; }
    .tc-about-premium .tc-about-hero h1 { font-size: clamp(2.25rem, 11vw, 3rem) !important; }
    .tc-about-premium .tc-section-heading h2,
    .tc-about-premium .tc-editorial-grid h2,
    .tc-about-premium .tc-ecosystem-copy h2,
    .tc-about-premium .tc-final-brand h2 { font-size: clamp(1.85rem, 9vw, 2.45rem) !important; }
}
