/* =====================================================
VISAC PHYSICAL-CYBER CORRELATION
USE CASE PAGE
===================================================== */


.physical-cyber-page {

background:#ffffff;
color:#050505;

}



.physical-cyber-container {

width:min(1400px,90%);
margin:0 auto;

}



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


.physical-cyber-hero {

padding:120px 0 100px;

}



.physical-cyber-grid {

display:grid;
grid-template-columns:1fr 1fr;
gap:80px;
align-items:center;

}



.physical-cyber-label {

display:flex;
align-items:center;
gap:12px;

font-size:12px;
letter-spacing:.28em;
text-transform:uppercase;

color:#666;

margin-bottom:35px;

}



.physical-cyber-label span {

width:8px;
height:8px;

background:#0f9f6e;

border-radius:50%;

}



.physical-cyber-hero h1 {

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

font-weight:500;

line-height:.95;

letter-spacing:-.065em;

margin-bottom:40px;

}



.physical-cyber-hero p {

font-size:22px;

line-height:1.65;

color:#555;

max-width:650px;

}



.physical-cyber-actions {

display:flex;
gap:20px;

margin-top:45px;

}



/* =====================================================
BUTTONS
===================================================== */


.physical-cyber-button {

display:inline-flex;

align-items:center;
justify-content:center;

padding:18px 38px;

font-size:13px;

letter-spacing:.15em;

text-transform:uppercase;

text-decoration:none;

}



.physical-cyber-button.dark {

background:#050505;

color:white;

}



.physical-cyber-button.light {

border:1px solid #ddd;

color:#050505;

}





/* =====================================================
INTELLIGENCE VISUAL
===================================================== */


.physical-cyber-map {

height:520px;

background:#050505;

position:relative;

overflow:hidden;

border:1px solid #222;

}



.map-grid {

position:absolute;
inset:0;


background-image:

linear-gradient(
rgba(255,255,255,.07) 1px,
transparent 1px
),

linear-gradient(
90deg,
rgba(255,255,255,.07) 1px,
transparent 1px
);


background-size:50px 50px;

}



.map-core {


position:absolute;

top:50%;
left:50%;

transform:translate(-50%,-50%);


width:230px;
height:230px;


background:#ffffff;

color:#050505;


display:flex;

justify-content:center;
align-items:center;

flex-direction:column;

text-align:center;

z-index:3;

}



.map-core span {

font-size:18px;

font-weight:700;

letter-spacing:.2em;

}



.map-core strong {

font-size:11px;

margin-top:18px;

letter-spacing:.15em;

}



.map-core small {

font-size:10px;

margin-top:12px;

color:#666;

letter-spacing:.15em;

}




.map-node {


position:absolute;

padding:12px 22px;


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


background:rgba(0,0,0,.5);


color:white;


font-size:11px;

letter-spacing:.25em;

z-index:2;

}




.node-one {

top:18%;

left:10%;

}



.node-two {

top:20%;

right:10%;

}



.node-three {

bottom:20%;

left:18%;

}



.node-four {

bottom:18%;

right:18%;

}




.physical-cyber-map::after {

content:"";

position:absolute;

inset:0;


background:

radial-gradient(
circle at center,
rgba(15,159,110,.18),
transparent 45%
);


pointer-events:none;

}








/* =====================================================
CHALLENGE
===================================================== */


.physical-cyber-challenge {


padding:120px 0;

}



.challenge-grid {


display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

}



.challenge-grid h2 {


font-size:64px;

font-weight:500;

line-height:1;

letter-spacing:-.05em;

}



.challenge-grid p {


font-size:22px;

line-height:1.7;

color:#555;

}






/* =====================================================
ARCHITECTURE
===================================================== */


.physical-cyber-architecture {


padding:140px 0;

background:#050505;

color:white;

}



.architecture-grid {


display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

}



.physical-cyber-label.light {

color:#aaa;

}



.architecture-copy h2 {


font-size:64px;

font-weight:500;

letter-spacing:-.05em;

line-height:1;

}



.architecture-copy p {


font-size:22px;

line-height:1.7;

color:#aaa;

}



.architecture-stack {


display:flex;

flex-direction:column;

gap:20px;

}



.architecture-layer {


display:flex;

gap:25px;

padding:32px;

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

}



.architecture-layer.active {


background:white;

color:#050505;

}



.architecture-layer span {


font-size:14px;

letter-spacing:.2em;

}



.architecture-layer h3 {


font-size:26px;

font-weight:500;

margin-bottom:10px;

}



.architecture-layer p {


line-height:1.6;

color:#777;

}








/* =====================================================
CAPABILITIES
===================================================== */


.physical-cyber-capabilities {


padding:140px 0;

}



.section-title h2 {


font-size:64px;

font-weight:500;

letter-spacing:-.05em;

}



.section-title p {


font-size:22px;

color:#555;

max-width:850px;

}



.capabilities-grid {


display:grid;

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

gap:30px;

margin-top:70px;

}



.capability {


border:1px solid #e5e5e5;

padding:40px;

min-height:250px;

}



.capability h3 {


font-size:28px;

font-weight:500;

letter-spacing:-.03em;

}



.capability p {


font-size:17px;

line-height:1.7;

color:#666;

}







/* =====================================================
WORKFLOW
===================================================== */


.physical-cyber-workflow {


padding:120px 0;

background:#f5f5f3;

}



.physical-cyber-workflow h2 {


font-size:64px;

font-weight:500;

letter-spacing:-.05em;

margin-bottom:70px;

}



.workflow-flow {


display:flex;

align-items:center;

gap:20px;

}



.workflow-flow div {


flex:1;

background:white;

border:1px solid #ddd;

padding:35px;


text-align:center;


font-size:13px;

letter-spacing:.15em;

}



.workflow-flow span {


font-size:30px;

}








/* =====================================================
STACK
===================================================== */


.physical-cyber-stack {


padding:140px 0;

}



.physical-cyber-stack h2 {


font-size:64px;

font-weight:500;

letter-spacing:-.05em;

margin-bottom:70px;

}



.stack-grid {


display:grid;

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

gap:30px;

}



.stack-grid > div {


border:1px solid #e5e5e5;

padding:45px;

}



.stack-grid .active {


background:#050505;

color:white;

}



.stack-grid h3 {


font-size:28px;

}



.stack-grid strong {


display:block;

margin:25px 0;

font-size:12px;

letter-spacing:.15em;

text-transform:uppercase;

}







/* =====================================================
USE CASES
===================================================== */


.physical-cyber-usecases {


padding:140px 0;

background:#f5f5f3;

}



.usecases-grid {


display:grid;

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

gap:30px;

margin-top:70px;

}



.usecases-grid div {


background:white;

border:1px solid #ddd;

padding:40px;

}



.usecases-grid h3 {


font-size:28px;

font-weight:500;

}



.usecases-grid p {


color:#666;

line-height:1.7;

}







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


.physical-cyber-cta {


padding:150px 0;

text-align:center;

}



.physical-cyber-cta h2 {


font-size:72px;

font-weight:500;

letter-spacing:-.06em;

}



.physical-cyber-cta p {


font-size:22px;

color:#555;

margin:35px 0 50px;

}







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


@media(max-width:1100px){


.physical-cyber-grid,
.challenge-grid,
.architecture-grid {


grid-template-columns:1fr;

}



.capabilities-grid {


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

}



.stack-grid,
.usecases-grid {


grid-template-columns:1fr;

}


}





@media(max-width:700px){


.physical-cyber-container {

width:92%;

}



.physical-cyber-hero {


padding:80px 0;

}



.physical-cyber-hero h1 {


font-size:48px;

}



.physical-cyber-hero p {


font-size:18px;

}



.physical-cyber-map {


height:380px;

}



.challenge-grid h2,
.architecture-copy h2,
.section-title h2,
.physical-cyber-workflow h2,
.physical-cyber-stack h2 {


font-size:42px;

}



.capabilities-grid {


grid-template-columns:1fr;

}



.workflow-flow {


flex-direction:column;

}



.workflow-flow span {


transform:rotate(90deg);

}



.physical-cyber-cta h2 {


font-size:42px;

}


}