:root { --philosophy-ink:#111114; --philosophy-paper:#f6f6f3; --philosophy-line:#dcdcd7; }
.philosophy-page { background:var(--philosophy-paper); color:var(--philosophy-ink); }
.philosophy-noise { position:fixed; inset:0; z-index:30; pointer-events:none; opacity:.09; mix-blend-mode:multiply; background-image:repeating-radial-gradient(circle at 20% 30%,rgba(0,0,0,.14) 0 1px,transparent 1px 5px); background-size:9px 9px; }
.philosophy-shell { width:min(1360px,calc(100% - 80px)); margin-inline:auto; }
.philosophy-header { color:var(--philosophy-ink); background:rgba(246,246,243,.88); border-bottom:1px solid transparent; }
.philosophy-header.scrolled { background:rgba(246,246,243,.9); border-color:rgba(17,17,20,.12); }
.philosophy-header .main-nav a { color:#636369; }.philosophy-header .main-nav a:hover,.philosophy-header .main-nav a.active { color:var(--philosophy-ink); }.philosophy-header .philosophy-login { border-color:rgba(17,17,20,.17); color:var(--philosophy-ink); }.philosophy-header .philosophy-login:hover { border-color:rgba(17,17,20,.5); }.philosophy-header .language-trigger { color:var(--philosophy-ink); border-color:rgba(17,17,20,.16); background:rgba(255,255,255,.62); }.philosophy-header .language-trigger:hover { background:white; border-color:rgba(17,17,20,.35); }.philosophy-header .menu-toggle { border-color:rgba(17,17,20,.18); }.philosophy-header .menu-toggle span { background:var(--philosophy-ink); }
.philosophy-kicker,.philosophy-section-number { color:#77777c; font-size:9px; font-weight:800; letter-spacing:2px; text-transform:uppercase; }
.philosophy-page h2 { color:var(--red); font-size:clamp(46px,5.3vw,82px); line-height:.94; letter-spacing:-4px; }.philosophy-page h2 em { color:var(--philosophy-ink); }
.philosophy-page p { color:#29292d; font-size:13px; line-height:1.85; }.philosophy-page .lead { color:var(--philosophy-ink); font-size:18px; font-weight:700; line-height:1.55; }

.philosophy-hero { min-height:100svh; padding:126px 0 58px; display:grid; grid-template-columns:minmax(420px,.82fr) minmax(560px,1.18fr); gap:clamp(45px,7vw,110px); align-items:center; }
.philosophy-hero-copy { position:relative; z-index:2; }.philosophy-hero h1 { margin:25px 0 32px; font-size:clamp(66px,7.5vw,116px); line-height:.79; letter-spacing:-7px; }.philosophy-hero h1 span,.philosophy-hero h1 strong { display:block; }.philosophy-hero h1 span { color:var(--philosophy-ink); }.philosophy-hero h1 strong { color:var(--red); }
.philosophy-hero blockquote { max-width:600px; padding-left:25px; border-left:4px solid var(--red); color:#242428; font-size:clamp(17px,1.35vw,22px); font-weight:600; line-height:1.6; }
.philosophy-scroll { display:inline-flex; align-items:center; gap:14px; margin-top:36px; color:var(--philosophy-ink); font-size:9px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }.philosophy-scroll i { width:38px; height:38px; display:grid; place-items:center; border:1px solid #c9c9c5; border-radius:50%; color:var(--red); transition:transform .3s,background .3s,color .3s; }.philosophy-scroll:hover i { transform:translateY(4px); background:var(--red); color:white; border-color:var(--red); }
.philosophy-hero-media { min-height:670px; position:relative; overflow:hidden; border-radius:4px 80px 4px 4px; background:#ddd; box-shadow:0 45px 100px rgba(32,32,35,.18); }.philosophy-hero-media::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(246,246,243,.18),transparent 38%),linear-gradient(0deg,rgba(0,0,0,.62),transparent 40%); }.philosophy-hero-media img { width:100%; height:100%; position:absolute; object-fit:cover; object-position:center; animation:philosophyImage 18s ease-in-out infinite alternate; }.media-caption { position:absolute; z-index:2; left:34px; bottom:32px; display:flex; align-items:center; gap:15px; color:white; }.media-caption>span { font-size:37px; font-weight:900; color:var(--red); }.media-caption b,.media-caption small { display:block; }.media-caption b { font-size:10px; letter-spacing:1.4px; }.media-caption small { margin-top:4px; color:#bcbcc0; font-size:8px; }.media-line { position:absolute; z-index:2; width:1px; height:140px; right:34px; top:35px; background:linear-gradient(var(--red),transparent); animation:mediaLine 3.8s ease-in-out infinite; }
@keyframes philosophyImage { from{transform:scale(1.02)} to{transform:scale(1.08) translateX(-1%)} } @keyframes mediaLine { 0%,100%{height:70px;opacity:.5} 50%{height:160px;opacity:1} }

.manifesto { padding:150px 0; display:grid; grid-template-columns:190px minmax(0,850px); justify-content:center; gap:clamp(45px,8vw,130px); border-top:1px solid var(--philosophy-line); }.manifesto-index { display:flex; flex-direction:column; align-items:center; gap:16px; padding-top:12px; }.manifesto-index span { color:var(--red); font-size:58px; font-weight:900; letter-spacing:-4px; }.manifesto-index i { width:1px; height:120px; background:linear-gradient(var(--red),#d0d0cc); }.manifesto-index small { writing-mode:vertical-rl; color:#777; font-size:8px; font-weight:800; letter-spacing:2px; }.manifesto-copy h2 { margin-bottom:42px; }.manifesto-copy>p { max-width:790px; margin-top:18px; }.manifesto-quote { margin-top:48px; padding:30px 0 30px 32px; border-left:5px solid var(--red); display:flex; flex-direction:column; gap:5px; font-size:clamp(22px,2vw,32px); font-weight:900; line-height:1.18; }.manifesto-quote span { color:var(--philosophy-ink); }.manifesto-quote strong { color:var(--red); }

.philosophy-band { width:calc(100% - 40px); margin-inline:auto; background:white; border:1px solid var(--philosophy-line); }
.why { padding:130px 0; }.why-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr); gap:clamp(60px,9vw,150px); }.why-title h2 { margin-top:25px; }.why-content>p { margin-bottom:20px; }.red-check-list { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:11px 24px; margin:27px 0; }.red-check-list li { position:relative; padding:13px 14px 13px 38px; border:1px solid #e2e2df; color:#252529; font-size:10px; line-height:1.45; background:#fafaf8; }.red-check-list li::before { content:'✓'; position:absolute; left:14px; top:12px; color:var(--red); font-weight:900; }.why-closing { margin-top:35px; padding:24px 0; border-top:2px solid var(--red); font-weight:700; }

.stages { padding:160px 0; }.philosophy-heading { max-width:1040px; margin-bottom:70px; }.philosophy-heading h2 { margin:22px 0 25px; }.philosophy-heading>p { max-width:580px; }.stage-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.stage-card { min-height:720px; padding:45px; position:relative; overflow:hidden; display:flex; flex-direction:column; border:1px solid var(--philosophy-line); background:#fbfbf9; transition:transform .4s var(--ease),box-shadow .4s,border-color .4s; }.stage-card:hover { transform:translateY(-6px); border-color:rgba(230,0,18,.45); box-shadow:0 35px 70px rgba(31,31,34,.1); }.stage-card::after { content:''; position:absolute; width:190px; height:190px; right:-110px; top:-110px; border:35px solid rgba(230,0,18,.05); border-radius:50%; transition:transform .7s var(--ease); }.stage-card:hover::after { transform:scale(1.2) rotate(25deg); }.stage-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:60px; }.stage-top span { color:#d0d0cd; font-size:70px; font-weight:900; letter-spacing:-5px; }.stage-top i { width:55px; height:55px; display:grid; place-items:center; border-radius:50%; background:var(--red); color:white; box-shadow:0 14px 30px rgba(230,0,18,.2); }.stage-card h3 { color:var(--red); font-size:36px; margin-bottom:24px; }.stage-card p { margin-bottom:13px; }.stage-card ul { margin:10px 0 25px; display:grid; grid-template-columns:1fr 1fr; gap:9px 20px; list-style:none; }.stage-card li { position:relative; padding-left:17px; color:#303034; font-size:9px; line-height:1.55; }.stage-card li::before { content:''; position:absolute; left:0; top:6px; width:5px; height:5px; background:var(--red); }.stage-card .compact-list { grid-template-columns:repeat(3,1fr); }.stage-result { display:block; margin-top:auto; padding:22px 0 0 23px; border-top:1px solid var(--philosophy-line); border-left:3px solid var(--red); color:var(--philosophy-ink); font-size:12px; line-height:1.65; }.measure-example { margin:14px 0 26px; padding:20px; border:1px solid var(--philosophy-line); background:white; }.measure-example span,.measure-example small,.measure-example del,.measure-example b { display:block; }.measure-example span { color:var(--red); font-size:9px; font-weight:800; margin-bottom:13px; }.measure-example small { color:#88888c; font-size:7px; margin:10px 0 5px; text-transform:uppercase; }.measure-example del { color:#777; font-size:9px; }.measure-example b { color:#1e1e21; font-size:9px; line-height:1.65; }

.connected-system { padding:135px 0; }.system-grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(500px,1.25fr); gap:clamp(70px,10vw,160px); align-items:start; }.system-copy h2 { margin:24px 0 30px; }.system-copy p { max-width:470px; margin-bottom:17px; }.system-flow { display:flex; flex-direction:column; align-items:stretch; gap:7px; }.system-flow span { min-height:48px; padding:0 20px; display:grid; place-items:center; border:1px solid #d8d8d4; background:var(--philosophy-paper); color:#202024; font-size:9px; font-weight:800; letter-spacing:1px; text-align:center; transition:background .25s,color .25s,transform .25s; }.system-flow span:hover { background:var(--red); color:white; border-color:var(--red); transform:scale(1.02); }.system-flow i { color:var(--red); text-align:center; font-size:9px; animation:flowPulse 1.8s ease-in-out infinite; }.system-flow .flow-goal { min-height:60px; background:var(--red); color:white; border-color:var(--red); box-shadow:0 16px 35px rgba(230,0,18,.18); }.system-flow i:nth-of-type(2n){animation-delay:.5s}@keyframes flowPulse { 0%,100%{transform:translateY(-2px);opacity:.4} 50%{transform:translateY(3px);opacity:1} }

.dashboard-philosophy { padding:160px 0; }.question-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }.question-card { min-height:260px; padding:30px; grid-column:span 2; border:1px solid var(--philosophy-line); background:white; display:flex; flex-direction:column; transition:transform .35s var(--ease),box-shadow .35s,border-color .35s; }.question-card:nth-child(4) { grid-column:2/span 2; }.question-card:hover { transform:translateY(-7px); border-color:rgba(230,0,18,.45); box-shadow:0 25px 55px rgba(31,31,34,.09); }.question-card>span { color:#d0d0cd; font-size:40px; font-weight:900; letter-spacing:-3px; }.question-card h3 { color:var(--red); font-size:19px; line-height:1.2; margin:auto 0 14px; }.question-card p { font-size:10px; }

.fundamental { padding:40px 0 170px; display:grid; grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr); gap:clamp(60px,9vw,150px); align-items:center; }.fundamental-number { color:rgba(230,0,18,.08); font-size:clamp(220px,24vw,360px); font-weight:900; line-height:.8; letter-spacing:-25px; }.fundamental-content h2 { margin:22px 0 34px; }.fundamental-content p { max-width:700px; margin-bottom:16px; }.fundamental-content blockquote { max-width:760px; margin:31px 0; padding:28px; border:1px solid rgba(230,0,18,.3); background:white; color:var(--red); font-size:clamp(19px,2vw,29px); font-weight:900; line-height:1.35; }

.representation { padding:140px 0; }.representation-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(70px,10vw,160px); }.representation-copy h2 { margin:23px 0 32px; }.representation-copy>strong { display:block; margin-top:28px; color:var(--red); font-size:17px; }.not-list { margin:22px 0; list-style:none; display:flex; flex-wrap:wrap; gap:8px; }.not-list li { padding:10px 13px; border:1px solid #deded9; background:var(--philosophy-paper); color:#333338; font-size:8px; }.connection-statements { align-self:center; border-top:4px solid var(--red); }.connection-statements p,.connection-statements strong { display:block; padding:20px 0; border-bottom:1px solid var(--philosophy-line); font-size:15px; font-weight:700; color:#242427; }.connection-statements strong { color:var(--red); font-size:25px; }

.brand-promise { padding:160px clamp(35px,7vw,100px); margin-block:100px; position:relative; overflow:hidden; border:1px solid rgba(230,0,18,.28); background:white; }.brand-promise::before { content:'PP'; position:absolute; right:-30px; top:-65px; color:rgba(230,0,18,.035); font-size:360px; font-weight:900; letter-spacing:-38px; }.brand-promise>* { position:relative; z-index:1; }.brand-promise h2 { max-width:1120px; margin:25px 0 65px; }.promise-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; }.promise-grid p { margin-bottom:16px; }.promise-grid strong { display:block; margin-top:23px; padding-left:20px; border-left:4px solid var(--red); color:var(--philosophy-ink); font-size:17px; line-height:1.5; }
.philosophy-footer { min-height:190px; display:grid; grid-template-columns:1fr auto 1.4fr; align-items:center; gap:30px; border-top:1px solid var(--philosophy-line); }.philosophy-footer>p { max-width:420px; color:#6d6d72; font-size:9px; text-transform:uppercase; letter-spacing:1px; }.philosophy-footer>div { justify-self:end; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:14px 22px; color:#77777c; font-size:9px; }.philosophy-footer a:hover { color:var(--red); }

@media (max-width:1100px) {
    .philosophy-hero { grid-template-columns:1fr 1fr; }.philosophy-hero h1 { font-size:8.5vw; }.philosophy-hero-media { min-height:600px; }.manifesto { grid-template-columns:120px 1fr; }.why-grid,.system-grid { gap:60px; }.stage-card { padding:34px; }.fundamental { grid-template-columns:190px 1fr; }.fundamental-number { font-size:220px; }
}
@media (max-width:820px) {
    .philosophy-shell { width:min(100% - 40px,680px); }.philosophy-header .main-nav { background:rgba(246,246,243,.98); }.philosophy-header .main-nav a { color:#444448; }.philosophy-header .main-nav .mobile-nav-cta { color:white; }.philosophy-header .language-menu { background:white; border-color:#ddd; }.philosophy-header .language-menu button { color:#222; }.philosophy-hero { min-height:auto; padding:120px 0 80px; grid-template-columns:1fr; }.philosophy-hero h1 { font-size:clamp(62px,17vw,100px); }.philosophy-hero-media { min-height:530px; }.manifesto { padding:100px 0; grid-template-columns:1fr; }.manifesto-index { display:none; }.why { padding:95px 0; }.why-grid,.system-grid,.representation-grid { grid-template-columns:1fr; }.red-check-list { grid-template-columns:1fr; }.stages,.dashboard-philosophy { padding:110px 0; }.stage-grid { grid-template-columns:1fr; }.stage-card { min-height:auto; }.question-grid { grid-template-columns:1fr 1fr; }.question-card,.question-card:nth-child(4) { grid-column:auto; }.question-card:last-child { grid-column:1/-1; }.fundamental { padding-bottom:110px; grid-template-columns:1fr; }.fundamental-number { display:none; }.brand-promise { width:100%; margin-block:60px; padding:90px 28px; }.promise-grid { grid-template-columns:1fr; gap:35px; }.philosophy-footer { padding:50px 0; grid-template-columns:1fr; gap:24px; }.philosophy-footer>div { justify-self:start; flex-wrap:wrap; }
}
@media (max-width:520px) {
    .philosophy-page h2 { font-size:40px; letter-spacing:-2px; }.philosophy-hero h1 { font-size:18vw; letter-spacing:-4px; }.philosophy-hero-media { min-height:410px; border-radius:3px 42px 3px 3px; }.manifesto-quote { padding-left:20px; }.stage-card { padding:27px; }.stage-card ul,.stage-card .compact-list { grid-template-columns:1fr 1fr; }.stage-top { margin-bottom:40px; }.question-grid { grid-template-columns:1fr; }.question-card,.question-card:last-child { grid-column:auto; }.brand-promise h2 { margin-bottom:45px; }.auth-top-actions { gap:7px; }
}
