/* ACE-PROJECT-CASE-STUDY-MASTER V1.0 | Scope applies only to .ace-case-master */
.ace-unified-case-study-page{background:#fff;color:#193e58;}
.ace-case-master{color:#173f5a;font-family:inherit;line-height:1.7;background:#fff;}
.ace-case-master *{box-sizing:border-box}
.ace-case-shell{width:min(1180px,calc(100% - 56px));margin:0 auto}
.ace-case-skip{position:absolute;top:-100px;left:10px;padding:10px 16px;background:#fff;z-index:4000}
.ace-case-skip:focus{top:8px}
.ace-case-hero{padding:44px 0 72px;background:linear-gradient(128deg,#fafdff,#f0f9ff 65%,#e4f4fc);border-bottom:1px solid #ddecf4}
.ace-case-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:.87rem;color:#658199;margin-bottom:45px}
.ace-case-breadcrumb a{color:#24618d;text-decoration:none}
.ace-case-breadcrumb a:hover{text-decoration:underline}
.ace-hero-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(245px,.6fr);align-items:stretch;gap:35px}
.ace-case-eyebrow,.ace-section-label,.ace-sidenote,.ace-panel-label,.ace-scope-kicker{font-size:.75rem;letter-spacing:.12em;font-weight:760;color:#087ab4;text-transform:uppercase;margin:0 0 18px}
.ace-case-hero h1{font-size:clamp(2.65rem,5.4vw,5rem);letter-spacing:-.057em;line-height:1.075;color:#07334d;margin:0 0 19px;font-weight:800}
.ace-case-headline{font-size:clamp(1.26rem,2.1vw,1.7rem);font-weight:650;line-height:1.4;color:#1a5073;margin:0 0 18px;max-width:850px}
.ace-case-lead{font-size:1.04rem;color:#536f84;margin:0 0 26px;max-width:730px}
.ace-case-hero-tags{display:flex;flex-wrap:wrap;gap:9px}
.ace-case-hero-tags span{background:#fff;border:1px solid #d2e4ef;border-radius:99px;padding:7px 13px;font-size:.78rem;font-weight:650;color:#316181}
.ace-hero-side{border:1px solid #cde4f3;border-radius:24px;background:linear-gradient(150deg,#fff,#e7f5fe);box-shadow:0 18px 52px rgba(15,67,104,.075);display:flex;min-height:310px;overflow:hidden}
.ace-hero-side-inner{padding:30px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.ace-hero-big{font-size:clamp(1.55rem,2.45vw,2.4rem);line-height:1.24;letter-spacing:-.04em;color:#07334d;font-weight:760;margin:0}
.ace-hero-side-rule{width:55px;height:3px;background:#219bcb;margin:24px 0}
.ace-hero-slogan{font-size:.98rem;color:#55758a;font-weight:570;margin:0;line-height:1.65}
.ace-case-section{padding:95px 0}
.ace-case-section h2,.ace-case-gallery-section h2,.ace-case-end h2{font-size:clamp(1.9rem,3.3vw,3.15rem);line-height:1.18;letter-spacing:-.047em;color:#0b3954;margin:0 0 28px;max-width:720px}
.ace-case-section p,.ace-case-gallery-section p{max-width:770px}
.ace-case-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.8fr);gap:70px;align-items:start}
.ace-case-copy>p:not(.ace-section-label){color:#526e82;font-size:1.03rem;line-height:1.84;margin:0 0 18px}
.ace-fact-panel,.ace-value-panel{background:#f5fbff;border:1px solid #dfedf4;padding:30px;border-radius:22px}
.ace-fact-panel h3,.ace-value-panel h3{font-size:1.3rem;letter-spacing:-.025em;color:#0f4768;margin:0 0 22px}
.ace-fact-panel dl{margin:0}.ace-fact-panel dl>div{display:grid;grid-template-columns:115px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid #dcecf5}.ace-fact-panel dl>div:last-child{border:0}
.ace-fact-panel dt{font-weight:660;font-size:.83rem;color:#728fa0}.ace-fact-panel dd{font-size:.9rem;color:#254c65;margin:0;font-weight:600}
.ace-case-scope-bg{background:#f7fbfe;border-top:1px solid #ebf2f6;border-bottom:1px solid #e8f0f6}
.ace-section-intro{font-size:1.05rem;color:#597487;line-height:1.7;margin:0 0 30px}
.ace-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px}
.ace-scope-card{background:#fff;border:1px solid #dce9f0;border-radius:18px;padding:27px 25px;box-shadow:0 8px 24px rgba(24,79,113,.03)}
.ace-scope-card h3{font-size:1.28rem;color:#0d3e5b;line-height:1.35;margin:0 0 18px;letter-spacing:-.025em}
.ace-scope-kicker{font-size:.68rem;letter-spacing:.08em;margin:0 0 10px}
.ace-scope-card ul{padding:0 0 0 19px;margin:0;color:#526e81;font-size:.91rem;line-height:1.8}.ace-scope-card li{padding-left:2px;margin:0 0 5px}.ace-scope-card li::marker{color:#1499c9}
.ace-value-panel{background:linear-gradient(145deg,#103e5a,#1b6188);color:#fff;padding:36px}
.ace-value-panel .ace-panel-label,.ace-value-panel h3{color:#fff}.ace-value-panel p:last-child{color:#e3f2f9;margin:0}
.ace-value-list{list-style:none;margin:0;padding:0}.ace-value-list li{padding:17px 0 17px 38px;position:relative;border-bottom:1px solid #dce9f1;color:#3c617a;font-weight:560}.ace-value-list li:before{content:'✓';color:#0c97ba;position:absolute;left:8px;font-weight:800}
.ace-case-gallery-section{padding:80px 0}.ace-case-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ace-case-gallery-grid figure{margin:0}.ace-case-gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:15px}.ace-case-gallery-grid figcaption{font-size:.82rem;color:#638297;margin-top:9px}
.ace-case-end{background:#e9f6fd;padding:45px 0;border-top:1px solid #d8eaf6}.ace-case-end>.ace-case-shell{display:flex;justify-content:space-between;gap:25px;align-items:center}.ace-case-end h2{margin:0 0 9px}.ace-case-end p:last-child{color:#608096;margin:0}.ace-case-end a{white-space:nowrap;color:#fff;background:#0b537b;padding:13px 22px;border-radius:99px;text-decoration:none;font-weight:670}.ace-case-end a:hover{background:#0a3e5b}
.ace-nav-fallback,.ace-case-footer{width:min(1180px,calc(100% - 56px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:22px;padding:18px 0}
.ace-nav-fallback nav{display:flex;gap:23px;flex-wrap:wrap}.ace-nav-fallback nav a{color:#335b77;text-decoration:none;font-size:.9rem}
.ace-case-brand{font-weight:850;text-decoration:none;color:#083b59;letter-spacing:-.05em;font-size:1.6rem}.ace-case-brand span,.ace-case-footer strong span{color:#0f8cb8}.ace-case-brand small{display:block;font-size:.53rem;letter-spacing:.09em;color:#57849c}
.ace-case-footer{padding:25px 0;color:#6d879a;font-size:.82rem}.ace-case-footer strong{color:#124362;font-size:1.2rem}
@media (max-width:900px){.ace-hero-layout,.ace-case-columns{grid-template-columns:1fr}.ace-hero-side{min-height:200px}.ace-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ace-case-columns{gap:32px}.ace-case-section{padding:65px 0}}
@media (max-width:600px){.ace-case-shell,.ace-nav-fallback,.ace-case-footer{width:min(100% - 34px,1180px)}.ace-case-hero{padding:24px 0 52px}.ace-case-breadcrumb{margin-bottom:30px}.ace-hero-side{min-height:165px}.ace-hero-side-inner{padding:24px}.ace-scope-grid{grid-template-columns:1fr}.ace-case-section{padding:56px 0}.ace-case-end>.ace-case-shell{display:block}.ace-case-end a{display:inline-block;margin-top:20px}.ace-nav-fallback{display:block}.ace-nav-fallback nav{margin-top:10px;gap:12px}.ace-case-gallery-grid{grid-template-columns:1fr 1fr}.ace-fact-panel dl>div{grid-template-columns:99px 1fr}}
@media (prefers-reduced-motion:reduce){.ace-case-master *, .ace-case-master *::before,.ace-case-master *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* V1.0.3 — unified 245-page implementation on original site header and footer */
.ace-unified-case-study-page .ace-case-master{min-height:40vh}
.ace-unified-case-study-page .ace-case-hero{padding-top:46px}
.ace-unified-case-study-page .ace-case-breadcrumb a{font-weight:650}
.ace-unified-case-study-page .ace-case-master .ace-case-copy p:not(.ace-section-label){color:#526e82;font-size:1.03rem;line-height:1.84;margin:0 0 18px}
.ace-unified-case-study-page .ace-case-master .ace-source-scope{color:#45687d;line-height:1.85;font-size:.96rem}
.ace-unified-case-study-page .ace-case-master .ace-source-scope ul{margin:0;padding-left:20px;line-height:1.85}
.ace-unified-case-study-page .ace-case-master .ace-source-scope p{margin:0 0 14px}
.ace-unified-case-study-page .ace-case-master .ace-additional-title{color:#124662;font-size:1.25rem;margin-top:28px}
.ace-unified-case-study-page .ace-case-master .ace-scope-grid:has(>.ace-scope-card:only-child){grid-template-columns:minmax(0,1fr)}
.ace-unified-case-study-page .ace-case-master .ace-scope-grid:has(>.ace-scope-card:only-child) .ace-scope-card{max-width:920px}
.ace-unified-case-study-page .ace-case-master .ace-case-shell :is(h2,h3,p,li,dd){overflow-wrap:anywhere}
.ace-unified-case-study-page .ace-hero-side--photo{margin:0;min-height:290px;background:#e3edf2}
.ace-unified-case-study-page .ace-hero-side--photo img{width:100%;height:100%;min-height:290px;object-fit:cover;object-position:center 42%;display:block}
.ace-unified-case-study-page .ace-case-gallery-grid figure{width:100%;max-width:520px}
.ace-unified-case-study-page .ace-case-gallery-grid img{max-height:460px;object-fit:contain;background:#f2f8fc;border:1px solid #e1ebf2}
.ace-unified-case-study-page .ace-case-master :is(.ace-case-breadcrumb a,.ace-case-gallery-grid a):focus-visible{outline:3px solid #0d93c2;outline-offset:4px}
.ace-unified-case-study-page .ace-fact-panel dt{overflow-wrap:anywhere}
.ace-unified-case-study-page .ace-fact-panel dd{overflow-wrap:anywhere}
.ace-unified-case-study-page .ace-case-master .ace-case-section ul{margin-top:0}
.ace-unified-case-study-page .ace-case-master .ace-hero-side:not(.ace-hero-side--photo){min-height:270px}
@media (max-width:600px){.ace-unified-case-study-page .ace-case-gallery-grid{grid-template-columns:1fr}.ace-unified-case-study-page .ace-case-hero{padding-top:26px}.ace-unified-case-study-page .ace-fact-panel{padding:22px}.ace-unified-case-study-page .ace-hero-side--photo img{max-height:330px;min-height:230px}}
