/* =====================================================
VISAC SECURITY GOVERNANCE & TRUST PAGE
===================================================== */


.compliance-page {

background:#ffffff;

color:#050505;

}



.compliance-container {

width:min(1400px,90%);

margin:0 auto;

}







/* =====================================================
LABEL
===================================================== */


.compliance-label {

display:flex;

align-items:center;

gap:12px;

font-size:12px;

letter-spacing:.28em;

text-transform:uppercase;

color:#666;

margin-bottom:35px;

}



.compliance-label span {

width:8px;

height:8px;

background:#0f9f6e;

border-radius:50%;

}







/* =====================================================
HERO
===================================================== */


.compliance-hero {

padding:130px 0 120px;

}



.compliance-hero h1 {

font-size:clamp(60px,7vw,110px);

font-weight:500;

line-height:.95;

letter-spacing:-.065em;

max-width:1200px;

margin-bottom:45px;

}



.compliance-hero p {

font-size:22px;

line-height:1.7;

color:#555;

max-width:950px;

}







/* =====================================================
CONTEXT
===================================================== */


.compliance-context {

padding:130px 0;

background:#f5f5f3;

}



.context-grid {

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

}



.context-grid h2 {

font-size:64px;

font-weight:500;

line-height:1;

letter-spacing:-.05em;

}



.context-grid p {

font-size:22px;

line-height:1.7;

color:#555;

}







/* =====================================================
GOVERNANCE PRINCIPLES
===================================================== */


.compliance-domains {

padding:140px 0;

}



.compliance-domains h2 {

font-size:64px;

font-weight:500;

letter-spacing:-.05em;

margin-bottom:70px;

}



.domain-grid {

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}



.domain-grid > div {

border:1px solid #e5e5e5;

padding:40px;

min-height:330px;

transition:.25s ease;

}



.domain-grid > div:hover {

border-color:#000;

}



.domain-grid span {

font-size:12px;

letter-spacing:.2em;

color:#0f9f6e;

}



.domain-grid h3 {

font-size:30px;

font-weight:500;

letter-spacing:-.03em;

margin:35px 0 20px;

}



.domain-grid p {

font-size:17px;

line-height:1.7;

color:#666;

}







/* =====================================================
INTELLIGENCE LIFECYCLE
===================================================== */


.compliance-lifecycle {

padding:140px 0;

background:#050505;

color:white;

}



.lifecycle-header h2 {

font-size:64px;

font-weight:500;

letter-spacing:-.05em;

margin-bottom:30px;

}



.lifecycle-header p {

font-size:22px;

line-height:1.7;

color:#aaa;

max-width:900px;

margin-bottom:70px;

}



.lifecycle-flow {

display:flex;

align-items:stretch;

gap:20px;

}



.lifecycle-flow > div {

flex:1;

border:1px solid rgba(255,255,255,.2);

padding:35px;

}



.lifecycle-flow h3 {

font-size:14px;

color:#0f9f6e;

letter-spacing:.2em;

}



.lifecycle-flow strong {

display:block;

font-size:24px;

font-weight:500;

margin:25px 0;

}



.lifecycle-flow p {

font-size:16px;

line-height:1.6;

color:#aaa;

}



.lifecycle-flow span {

display:flex;

align-items:center;

font-size:30px;

color:#777;

}

/* =====================================================
FRAMEWORK ALIGNMENT
===================================================== */


.compliance-frameworks {

padding:140px 0;

}



.compliance-frameworks h2 {

font-size:64px;

font-weight:500;

letter-spacing:-.05em;

margin-bottom:70px;

}



.framework-grid {

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}



.framework-grid > div {

border:1px solid #e5e5e5;

padding:45px;

min-height:330px;

transition:.25s ease;

}



.framework-grid > div:hover {

border-color:#000;

}



.framework-grid h3 {

font-size:34px;

font-weight:500;

letter-spacing:-.03em;

margin-bottom:20px;

}



.framework-grid strong {

display:block;

font-size:12px;

letter-spacing:.18em;

text-transform:uppercase;

color:#666;

margin-bottom:30px;

}



.framework-grid p {

font-size:17px;

line-height:1.7;

color:#666;

}








/* =====================================================
VISAC GOVERNANCE PLATFORM LAYER
===================================================== */


.compliance-platform {

padding:140px 0;

background:#f5f5f3;

}



.platform-grid {

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

margin-bottom:80px;

}



.platform-grid h2 {

font-size:64px;

font-weight:500;

letter-spacing:-.05em;

line-height:1;

}



.platform-grid p {

font-size:22px;

line-height:1.7;

color:#555;

}





.platform-stack {

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}



.platform-stack > div {

background:white;

border:1px solid #ddd;

padding:45px;

min-height:330px;

}



.platform-stack h3 {

font-size:42px;

font-weight:500;

letter-spacing:-.04em;

margin-bottom:15px;

}



.platform-stack strong {

display:block;

font-size:12px;

letter-spacing:.18em;

text-transform:uppercase;

margin-bottom:30px;

}



.platform-stack p {

font-size:17px;

line-height:1.7;

color:#666;

}








/* =====================================================
CTA
===================================================== */


.compliance-cta {

padding:150px 0;

text-align:center;

}



.compliance-cta h2 {

font-size:72px;

font-weight:500;

letter-spacing:-.06em;

line-height:1;

}



.compliance-cta p {

font-size:22px;

color:#555;

margin:35px 0 50px;

}









/* =====================================================
RESPONSIVE
===================================================== */


@media(max-width:1100px){


.context-grid,
.platform-grid {

grid-template-columns:1fr;

}



.domain-grid {

grid-template-columns:repeat(2,1fr);

}



.framework-grid {

grid-template-columns:repeat(2,1fr);

}



.platform-stack {

grid-template-columns:1fr;

}



.lifecycle-flow {

flex-wrap:wrap;

}



.lifecycle-flow span {

display:none;

}


}





@media(max-width:700px){


.compliance-container {

width:92%;

}



.compliance-hero {

padding:80px 0;

}



.compliance-hero h1 {

font-size:48px;

}



.compliance-hero p {

font-size:18px;

}



.context-grid h2,
.compliance-domains h2,
.lifecycle-header h2,
.compliance-frameworks h2,
.platform-grid h2 {

font-size:42px;

}



.domain-grid,
.framework-grid {

grid-template-columns:1fr;

}



.domain-grid > div,
.framework-grid > div,
.platform-stack > div {

padding:30px;

}



.lifecycle-flow {

flex-direction:column;

}



.lifecycle-flow > div {

min-height:240px;

}



.compliance-cta h2 {

font-size:42px;

}


}