/* Philosophy: original copy with an editorial layout and shared palette. */
.philosophy-page h1{white-space:normal;margin:22px 0 0;line-height:1;letter-spacing:0;font-weight:500}
.philosophy-hero{padding-bottom:50px}
.philosophy-intro{margin:64px 0 42px}
.philosophy-intro>.eyebrow{color:#929aaa}
.philosophy-en{display:block;font:500 clamp(80px,10.3vw,148px)/1 Arial,sans-serif;letter-spacing:-.065em;color:#d4dae3}
.philosophy-intro-note{font-size:24px;line-height:1.8;color:#c3cbd8;margin-top:36px}
.philosophy-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 34px}
.philosophy-jump a{display:flex;align-items:center;gap:18px;border-bottom:1px solid #505b6c;padding:14px 0;min-height:50px;font-size:14px}
.philosophy-jump a>span:first-child{font:12px Arial,sans-serif;color:#98a3b4}
.philosophy-jump a>span:last-child{margin-left:auto}
.philosophy-motion{display:flex;justify-content:flex-end;margin-top:28px}
.philosophy-section{background:#090a0c;padding-block:112px 126px}
.philosophy-grid{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.8fr);gap:80px}
.philosophy-label .eyebrow{color:#929aaa;margin-bottom:22px}
.philosophy-label h2{font-size:26px;line-height:1.65;font-weight:500;letter-spacing:.02em}
.philosophy-statement{font-size:clamp(36px,4.1vw,56px);font-weight:500;line-height:1.7;letter-spacing:-.05em;text-wrap:balance}
.philosophy-prose{font-size:16px;line-height:2.2;color:#aeb6c1;max-width:700px;margin-top:36px;text-wrap:pretty}
.philosophy-prose p+p{margin-top:24px}
.philosophy-purpose:before{content:"";position:absolute;top:0;left:28%;width:1px;height:100%;background:linear-gradient(transparent,#6f7b9244,transparent);transform:rotate(17deg)}
.philosophy-light{background:linear-gradient(120deg,#eef0f1,#c4cad3 65%,#e2e5e9);color:#101318;border:0;--watermark-color:#17202d0a}
.philosophy-light .philosophy-label .eyebrow{color:#505866}
.philosophy-light .philosophy-prose{color:#414b5a}
.philosophy-vision{background:#060709}
.vision-phrase{display:inline-block;white-space:nowrap}
.vision-promises{list-style:none;padding:0;margin:38px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.vision-promises li{border-bottom:1px solid #333944;padding:20px 0;font-size:20px;line-height:1.8;color:#cdd4df;text-wrap:balance}
.philosophy-value{background:#0c0e12}
.philosophy-value .philosophy-grid{display:block}
.philosophy-value .philosophy-label{margin-bottom:48px}
.value-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;padding:0;margin:0;border-top:1px solid #333944}
.value-list>.wp-block-group{padding:35px 28px 38px;border-bottom:1px solid #333944}
.value-list>.wp-block-group:nth-child(3n+1){padding-left:0}
.value-list>.wp-block-group:not(:nth-child(3n+1)){border-left:1px solid #333944}
.value-number{display:block;font:400 58px/1 Arial,sans-serif;letter-spacing:-.075em;color:#596575;margin-bottom:22px}
.value-list h3{font-size:23px;line-height:1.7;font-weight:500;margin-bottom:16px;text-wrap:balance}
.value-list p{font-size:15px;line-height:2.1;color:#aeb6c1;text-wrap:pretty}
.philosophy-story{background:#090a0c}
.philosophy-story:before{content:"";position:absolute;left:14%;top:22%;width:320px;height:320px;border:1px solid #8c98aa12;border-radius:50%;pointer-events:none}
.story-title{font-size:clamp(28px,3.1vw,43px);line-height:1.7;font-weight:500;letter-spacing:-.025em;text-wrap:balance}
.story-prose p:first-child{color:#cdd4df}
.philosophy-slogan .philosophy-label{margin-bottom:45px}
.slogan-content h3{font-size:clamp(52px,6.5vw,94px);font-weight:500;line-height:1.45;letter-spacing:-.055em}
.slogan-company{font-size:15px;line-height:1.8;margin-top:34px;color:#414b5a}
.slogan-note{font-size:24px;line-height:1.8;margin-top:8px;color:#414b5a}
.slogan-content .actions{margin-top:36px;animation:none;gap:16px}
.slogan-service{background:#152033;color:#f0f4fa;border-color:#152033}
.slogan-contact{background:transparent;color:#152033;border-color:#657084}
.slogan-service:hover{background:#38485f}
.slogan-contact:hover{background:#152033;color:#f0f4fa}
@media(max-width:1100px){
.philosophy-grid{grid-template-columns:210px minmax(0,1fr);gap:44px}
.philosophy-statement{font-size:clamp(32px,4.1vw,46px)}
.value-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.value-list>.wp-block-group,.value-list>.wp-block-group:nth-child(3n+1){padding:32px 28px}
.value-list>.wp-block-group:not(:nth-child(3n+1)){border-left:0}
.value-list>.wp-block-group:nth-child(2n+1){padding-left:0;border-left:0}
.value-list>.wp-block-group:nth-child(2n){border-left:1px solid #333944}
}
@media(max-width:700px){
.philosophy-hero{padding-bottom:56px}
.philosophy-intro{margin:40px 0 30px}
.philosophy-page h1{margin-top:20px}
.philosophy-en{font-size:clamp(46px,11.8vw,80px)}
.philosophy-intro-note{font-size:20px;margin-top:28px}
.philosophy-jump{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.philosophy-jump a{font-size:12px;gap:10px;line-height:1.8}
.philosophy-jump a>span:first-child{font-size:11px}
.philosophy-motion{margin-top:26px}
.philosophy-section{padding-block:72px 90px}
.philosophy-grid{grid-template-columns:1fr;gap:34px}
.philosophy-label .eyebrow{margin-bottom:13px}
.philosophy-label h2{font-size:24px}
.philosophy-statement{font-size:32px;line-height:1.75}
.philosophy-prose{font-size:15px;line-height:2.05;margin-top:25px}
.philosophy-prose p+p{margin-top:22px}
.philosophy-purpose:before{left:24%}
.vision-promises{grid-template-columns:1fr;margin-top:25px}
.vision-promises li{padding:16px 0;font-size:19px}
.philosophy-value .philosophy-label{margin-bottom:30px}
.value-list{grid-template-columns:1fr}
.value-list>.wp-block-group,.value-list>.wp-block-group:nth-child(3n+1),.value-list>.wp-block-group:nth-child(2n){padding:29px 0 32px;border-left:0}
.value-number{font-size:48px;margin-bottom:18px}
.value-list h3{font-size:21px;margin-bottom:13px}
.value-list p{font-size:15px;line-height:2.05}
.story-title{font-size:28px;line-height:1.7}
.philosophy-story:before{width:250px;height:250px;left:-80px;top:10%}
.philosophy-slogan .philosophy-label{margin-bottom:34px}
.slogan-content h3{font-size:clamp(34px,9.5vw,62px);line-height:1.55}
.slogan-company{font-size:14px;margin-top:27px}
.slogan-note{font-size:20px;line-height:1.85}
.slogan-content .actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:29px}
.slogan-content .button{font-size:13px;min-width:205px;min-height:48px}
}
@media(max-width:359px){
.philosophy-en{font-size:39px}
.philosophy-jump{gap:0 14px}
.philosophy-jump a{gap:8px;font-size:11px}
.philosophy-jump a>span:first-child{font-size:10px}
.philosophy-statement{font-size:29px}
.story-title{font-size:24px}
}
