/* Shared editorial system for EPIC's inner pages. */
:root{--ink:#f2efec;--navy:#141416;--paper:#141416;--cream:#141416;--purple:#bca5b7;--pink:#cbb8c7;--muted:#aaa5ad;--line:#c9b9c526;color-scheme:dark}
body{background:#141416;color:var(--ink);line-height:1.65}
::selection{background:#bca5b7;color:#141416}
.wrap{width:min(1280px,calc(100% - 96px))}
header,.header{background:#141416;border-bottom:1px solid var(--line);color:var(--ink)}
header{min-height:100px}.header{padding:0}.navrow{height:100px}
header nav,.nav{font-size:13px;letter-spacing:.025em}
header .button,.nav .contact{background:transparent;border:1px solid #cbb8c752;color:var(--ink);box-shadow:none;border-radius:0;padding:13px 23px}
.logo{width:130px}.menu,.menu-toggle{border-color:#cbb8c752;color:var(--ink);border-radius:0}
h1,h2,h3{font-weight:400!important;letter-spacing:-.035em}
h1 em,h2 em{color:var(--pink);font-style:italic!important}
.eyebrow,.kicker,.sectionno{color:var(--purple);font-size:10px;letter-spacing:.19em}
.button,.pill{background:#cbb8c7;color:#201c22;border:1px solid #cbb8c7;border-radius:0;box-shadow:none;padding:18px 25px;font-weight:400;transition:background .25s,color .25s,transform .25s}
.button:hover,.pill:hover{background:#e2d7df;color:#201c22;box-shadow:none;transform:translateY(-2px)}
.page-intro,.ix-hero,.hero{position:relative;background:radial-gradient(ellipse at 90% 10%,#67536230,transparent 58%),#18171b;color:var(--ink);border-bottom:1px solid var(--line)}
.page-intro{padding:64px 0 100px;overflow:hidden}
.page-intro:after{content:'';position:absolute;right:-170px;top:-290px;width:700px;height:700px;border:1px solid #bca5b715;border-radius:50%;pointer-events:none}
.page-intro h1{font-size:clamp(54px,6.6vw,94px);line-height:1.05;max-width:1000px}
.page-intro .eyebrow,.ix-hero .eyebrow,.hero .kicker{color:var(--purple)}
.page-intro h1 em{color:var(--pink)}
.page-intro p:not(.eyebrow),.ix-lead,.lead{color:#b6afb9;font-size:17px;line-height:1.85}
.page-crumb,.ix-crumb,.crumb{color:#a49aa8;font-size:11px;letter-spacing:.035em;margin-bottom:45px}
.page-crumb span,.ix-crumb span,.crumb span{color:#d0c0cc}
.section{padding:90px 0}
/* Industry index: uniform image-led editorial cards. */
.industries{background:#141416}
.industries .section-heading{align-items:end;margin-bottom:45px}
.industries .section-heading h2{font-size:44px}
.section-heading>p{color:var(--muted)}
.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 32px}
.sector,.sector:nth-child(-n+2){display:block;grid-column:auto;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow:hidden;color:var(--ink);transform:none}
.sector:hover{transform:none;box-shadow:none}
.sector>img,.sector:nth-child(-n+2)>img{width:100%;height:285px;object-fit:cover;filter:saturate(.55);transition:filter .5s;transform:none!important;border-radius:0}
.sector:hover>img{filter:saturate(.85)}
.sector-body{padding:25px 0 30px;position:relative}
.sector-number{color:#bca5b7;font-size:11px;letter-spacing:.12em}
.sector h3{font-size:31px;margin:12px 0;color:var(--ink)}
.sector p,.sector:nth-child(-n+2) p{color:#aaa5ad;font-size:15px;max-width:480px}
.sector a,.sector:nth-child(-n+2) a{color:#d1becb;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:24px;font-size:13px}
/* Sector detail pages. */
.ix-hero{padding:55px 0 85px}
.ix-grid{grid-template-columns:1fr 1fr;gap:70px}
.ix-hero h1{font-size:clamp(45px,4.8vw,72px);line-height:1.07}
.ix-detail-photo{padding:0;overflow:hidden;background:#28222b}
.ix-detail-photo:before{display:none}
.ix-detail-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#664f6426,transparent 65%);pointer-events:none}
.ix-detail-photo img{height:470px;border:0;border-radius:0;box-shadow:none;transform:none;filter:saturate(.58)}
.ix-jump{color:#d0bdca;border-color:#cbb8c750;margin-top:30px}
.ix-capabilities{padding:105px 0;gap:95px;grid-template-columns:.9fr 1.1fr}
.ix-summary h2{font-size:43px}.ix-summary p{color:#aaa5ad;font-size:16px;line-height:1.95}
.ix-service-list{grid-template-columns:1fr;gap:0;counter-reset:services}
.ix-service-list li{padding:23px 0;border-color:var(--line);font-size:21px;gap:25px}
.ix-service-list li:last-child{border-bottom:1px solid var(--line)}
.ix-service-list li span{color:#bca5b7;font-size:10px}
.ix-cta,.route-cta,.cta-section{padding:80px 0;background:linear-gradient(120deg,#342a35,#211e25);color:var(--ink);border-block:1px solid var(--line)}
.ix-cta h2,.route-cta h2,.cta-section h2{font-size:clamp(34px,4vw,55px);max-width:780px}
.ix-cta p,.route-cta p{color:#b7aeba}
.ix-related{padding:80px 0;background:#171619}
.ix-related-head{margin-bottom:35px}.ix-related-head a{color:#c9b3c3}
.ix-related-grid{gap:32px}
.ix-related-card{display:block;background:transparent;border:0;border-radius:0;padding:0;overflow:hidden}
.ix-related-card:hover{transform:none}
.ix-related-card img{width:100%;height:250px;filter:saturate(.6);transition:filter .4s}
.ix-related-card:hover img{filter:saturate(.9)}
.ix-related-card>div{padding:24px 0;border-bottom:1px solid var(--line)}
.ix-related-card h3{font-size:28px}.ix-related-card small{color:#bca5b7}
/* About: confident photography, no floating 3D decoration. */
.hero{padding:50px 0 90px}.herogrid{gap:65px;grid-template-columns:1fr 1fr}
.hero h1{font-size:clamp(48px,5.4vw,78px)}
.heroimage.dimensional-photo{height:490px;width:100%;margin:0;perspective:none}
.photo-tilt{transform:none!important}.photo-frame{inset:0;width:100%;height:100%;border:0;border-radius:0;transform:none;box-shadow:none}
.photo-frame img{height:100%;filter:saturate(.5)}
.photo-frame:after{background:linear-gradient(0deg,#171419d9,transparent 65%),linear-gradient(180deg,#51404f44,transparent 50%)}
.photo-glow,.photo-orbit,.backplate,.founding-badge,.connection-chip,.scene-spark{display:none}
.imagecaption{left:28px;bottom:32px;transform:none;background:none;border:0;border-left:1px solid #c9b3c366;border-radius:0;box-shadow:none;padding:0 0 0 20px;backdrop-filter:none;width:auto}
.imagecaption small{color:#c9b3c3}.imagecaption p{font-size:25px}.frame-label{display:none}
.stats{margin-top:0;background:transparent;border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;padding:40px 0}
.stat{border-color:var(--line)}.stat strong{font-size:40px;color:#dfd3dc}.stat small{color:var(--muted)}
.story{padding:105px 0;gap:85px}.storybody p{color:var(--muted)}.storybody .first{color:var(--ink)}
.purpose{background:#211e25;border:1px solid var(--line);border-radius:0;box-shadow:none;grid-template-columns:1fr 1fr}
.purposephoto img{filter:saturate(.5)}.purposecopy{padding:55px}.purposecopy p{color:#b6aebb}.purposecopy article+article{border-color:var(--line)}
.values{padding:100px 0;background:transparent}.cards{gap:0;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.card{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:32px;box-shadow:none}
.card:hover{background:#211d24;transform:none;box-shadow:none}.card:after{display:none}.card h3{font-size:25px}.card p{color:var(--muted)}.card .num span{background:none;box-shadow:none;border-color:var(--line)}
/* Contact keeps its existing validation and submission flow. */
.contact{background:#141416}.contact-grid{gap:80px;grid-template-columns:.85fr 1.15fr}
.contact-grid>div>p:not(.eyebrow),.contact-details p{color:#aaa5ad}
.contact-details a{font-size:clamp(17px,1.8vw,24px);overflow-wrap:anywhere}.contact-details>span{color:#bca5b7}
.contact form{background:#211e25;color:var(--ink);padding:45px;border:1px solid var(--line);border-radius:0;box-shadow:none}
.contact form h3{font-size:30px;margin-top:0}.contact-notice{color:#b8aeba;border-color:#bca5b7;font-size:12px}
label{font-size:12px;font-weight:400;color:#d6cad3}
input,select,textarea{background:#19171d;color:#f2efec;border:1px solid #baa6b536;border-radius:0;padding:14px;font-size:15px}
input::placeholder,textarea::placeholder{color:#918895}
input:focus,select:focus,textarea:focus{border-color:#baa6b5}
.contact .button{margin-top:10px}.contact form .button:disabled{opacity:.55}
footer,.footer{background:#111113;color:#aaa3ae;border-top:1px solid var(--line);padding:48px 0 25px}
.footer-top{padding-bottom:40px}.footer-top p{color:#cec2cc}.footer-bottom{border-color:var(--line);color:#aaa3ae}
.footer .wrap{font-size:12px}.footer nav{font-size:12px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #d8bfd0;outline-offset:5px}
.skip{color:#171419}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.ix-grid,.herogrid{gap:35px}.ix-detail-photo img{height:400px}.ix-capabilities{gap:45px}.contact-grid{gap:35px}.purposecopy{padding:35px}.heroimage.dimensional-photo{height:430px}}
@media(max-width:800px){.herogrid,.ix-grid{grid-template-columns:1fr}.hero h1{max-width:700px}.heroimage.dimensional-photo{height:440px;max-width:none}.ix-detail-photo img{height:400px}.ix-capabilities{grid-template-columns:1fr;gap:40px}.contact-grid{grid-template-columns:1fr}.contact-grid>div>p:not(.eyebrow){max-width:550px}.sector>img,.sector:nth-child(-n+2)>img{height:230px}.sector h3{font-size:27px}.cards{grid-template-columns:repeat(2,1fr)}.purpose{grid-template-columns:1fr}.purposephoto{min-height:380px}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}header{min-height:80px}.navrow{height:auto;min-height:80px}.page-intro{padding:35px 0 60px}.page-intro h1{font-size:clamp(42px,10vw,62px)}.page-intro p:not(.eyebrow){font-size:16px}.section{padding:60px 0}.sector-grid{grid-template-columns:1fr;gap:35px}.sector>img,.sector:nth-child(-n+2)>img{height:240px}.industries .section-heading h2{font-size:34px}.ix-hero{padding:32px 0 50px}.ix-hero h1{font-size:43px}.ix-detail-photo img{height:300px}.ix-capabilities{padding:60px 0}.ix-service-list li{font-size:19px}.ix-summary h2{font-size:36px}.ix-related{padding:55px 0}.ix-related-card img{height:230px}.ix-cta,.route-cta,.cta-section{padding:55px 0}.hero{padding:30px 0 55px}.hero h1{font-size:49px}.heroimage.dimensional-photo{height:350px}.photo-frame{inset:0;width:100%;height:100%;transform:none;border-radius:0}.imagecaption{left:22px;bottom:25px}.stats{padding:30px 0}.stat{padding:0 12px}.stat strong{font-size:25px}.stat small{font-size:10px}.story{padding:65px 0;gap:30px}.purposephoto{min-height:300px}.purposecopy{padding:30px 24px}.values{padding:65px 0}.card{padding:25px 20px}.card h3{font-size:22px}.contact form{padding:28px 22px}.contact-grid{gap:40px}.footer-top{gap:25px}.footer .wrap{align-items:flex-start}.page-crumb,.ix-crumb,.crumb{margin-bottom:30px}}
@media(max-width:380px){.cards{grid-template-columns:1fr}.stat strong{font-size:21px}.hero h1{font-size:43px}.ix-hero h1{font-size:38px}.contact form{padding:25px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
