:root {
  --navy:#0b1f33;
  --blue:#1769e0;
  --blue-dark:#0f4fb4;
  --sky:#edf5ff;
  --ink:#18212b;
  --muted:#66717e;
  --line:#e3e8ee;
  --white:#ffffff;
  --soft:#f7f9fb;
  --success:#167553;
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:16px;letter-spacing:.08em;color:var(--navy)}
.logo-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:white!important;background:linear-gradient(135deg,#1598ef,#1167c7);box-shadow:0 5px 18px rgba(21,152,239,.25);letter-spacing:0}
.logo-word span{color:var(--blue)}
.logo-footer{color:white}
.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;color:#475361}
.nav-links a:hover{color:var(--blue)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;padding:12px 18px;font-weight:700;font-size:14px;border:1px solid transparent;transition:.2s ease}
.btn-primary{background:var(--blue);color:white}.btn-primary:hover{background:var(--blue-dark)}
.btn-secondary{border-color:#cfd8e3;background:white;color:var(--navy)}.btn-secondary:hover{border-color:var(--blue);color:var(--blue)}
.hero{padding:92px 0 78px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}
.eyebrow{margin:0 0 14px;color:var(--blue);font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
h1,h2,h3{color:var(--navy);letter-spacing:-.035em;margin-top:0}
h1{font-size:clamp(46px,6vw,72px);line-height:1.03;margin-bottom:24px;max-width:800px}
h2{font-size:clamp(34px,4vw,48px);line-height:1.08;margin-bottom:18px}
h3{font-size:23px;line-height:1.2;margin-bottom:10px}
.hero-copy>p:not(.eyebrow){font-size:19px;color:var(--muted);max-width:690px;margin-bottom:30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-panel{background:var(--navy);border-radius:13px;padding:34px;color:white;box-shadow:0 26px 65px rgba(11,31,51,.16)}
.hero-panel .small{color:#adc1d8;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.capability-line{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.13);display:flex;justify-content:space-between;align-items:center;gap:18px}
.capability-line:last-child{border-bottom:0}.capability-line strong{font-size:16px}.capability-line span{color:#8fc0ff;font-size:12px}
.trustbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}
.trustbar .container{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-item{padding:20px 22px;border-right:1px solid var(--line)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;color:var(--navy);font-size:15px}.trust-item span{font-size:12px;color:var(--muted)}
.section{padding:92px 0}.section-soft{background:var(--soft)}
.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:end;margin-bottom:48px}.section-head p:last-child{color:var(--muted);max-width:650px;margin:0}
.capabilities{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:11px;overflow:hidden;background:white}
.capability{padding:30px 26px;border-right:1px solid var(--line)}.capability:last-child{border-right:0}.capability .num{color:var(--blue);font-weight:800;font-size:12px}.capability h3{margin-top:28px}.capability p{color:var(--muted);font-size:14px;margin-bottom:0}
.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.case-card{border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden;display:flex;flex-direction:column;transition:.2s ease}.case-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(17,38,66,.08)}
.case-visual{min-height:185px;padding:26px;background:var(--sky);display:flex;align-items:flex-end;justify-content:space-between}.case-visual.optimisation{background:#fff4e8}.case-visual.resilience{background:linear-gradient(135deg,#e9f8ff,#eaf1ff)}.case-visual.aws{background:#eef4fb}.case-visual.marketing{background:#f3f1ff}.case-visual.partner{background:#eef8f4}.case-badge{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--blue)}.case-metric{font-size:32px;line-height:1;font-weight:850;letter-spacing:-.06em;color:var(--navy)}
.case-body{padding:27px;display:flex;flex-direction:column;flex:1}.case-body p{color:var(--muted);font-size:14px}.case-body .text-link{margin-top:auto;padding-top:14px;color:var(--blue);font-weight:750;font-size:14px}
.case-card-featured{border-color:#f0c48e}.case-card-featured .case-visual{background:linear-gradient(135deg,#fff4e8,#eaf7ff)}
.partner-band{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;background:var(--navy);color:white}.partner-band>div{padding:48px}.partner-band h2{color:white}.partner-band p{color:#c2cfdb}.partner-list{display:grid;align-content:center;background:#102a43}.partner-list div{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}.partner-list div:last-child{border:0}.partner-list strong{display:block}.partner-list span{font-size:13px;color:#aebfd0}
.testimonials{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.quote{border:1px solid var(--line);border-radius:10px;padding:34px;background:white}.quote blockquote{margin:0;color:#35414d;font-size:17px;line-height:1.75}.quote .source{margin:22px 0 0;font-size:12px;color:var(--muted);font-weight:700}.quote.featured{background:var(--sky);border-color:#d6e6f8}.quote-placeholder{border-style:dashed;background:#fcfcfc}.quote-placeholder blockquote{color:#8b949e;font-size:14px}.quote-placeholder .source{color:#9aa2aa}
.cta{padding:74px 0;background:var(--blue);color:white}.cta-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:54px}.cta h2{color:white;margin-bottom:10px}.cta p{color:#dceaff;margin:0;max-width:620px}.contact-options{display:grid;gap:10px}.contact-option{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 18px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:rgba(255,255,255,.08);transition:.2s ease}.contact-option:hover{background:white;color:var(--blue);transform:translateY(-1px)}.contact-option span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.contact-option strong{font-size:14px;text-align:right}.contact-option:first-child{background:white;color:var(--blue);box-shadow:0 12px 30px rgba(10,54,120,.2)}
footer{padding:42px 0;background:#071828;color:#9eb0c0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr .9fr;gap:36px}.footer-grid h3{font-size:14px;color:white;letter-spacing:0}.footer-grid a,.footer-grid p{font-size:13px;display:block;margin:7px 0}.footer-bottom{margin-top:32px;padding-top:24px;border-top:1px solid #193149;font-size:12px;display:flex;justify-content:space-between;gap:20px}
.page-hero{padding:72px 0 55px;background:var(--soft);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(40px,5vw,60px);max-width:930px}.page-hero p{color:var(--muted);font-size:18px;max-width:760px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:20px}.breadcrumbs a{color:var(--blue)}
.case-layout{display:grid;grid-template-columns:1.5fr .5fr;gap:62px}.prose h2{font-size:32px;margin-top:48px}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:#4f5b67}.sidebar-card{position:sticky;top:98px;border:1px solid var(--line);border-radius:10px;padding:25px;background:white}.sidebar-card strong{display:block;margin-bottom:6px;color:var(--navy)}.sidebar-card span{display:block;color:var(--muted);font-size:13px;margin-bottom:18px}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.metric-box{padding:22px;background:var(--soft);border-radius:8px}.metric-box strong{display:block;font-size:27px;color:var(--navy);letter-spacing:-.04em}.metric-box span{font-size:12px;color:var(--muted)}
.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:7px 10px;border-radius:999px;background:var(--sky);color:var(--blue-dark);font-size:12px;font-weight:700}
@media(max-width:860px){.nav-links{display:none}.hero-grid,.section-head,.partner-band,.testimonials,.case-layout,.cta-grid{grid-template-columns:1fr}.hero{padding-top:62px}.trustbar .container{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.capabilities{grid-template-columns:1fr 1fr}.capability:nth-child(2){border-right:0}.capability:nth-child(-n+2){border-bottom:1px solid var(--line)}.case-grid{grid-template-columns:1fr}.partner-band>div{padding:34px}.footer-grid{grid-template-columns:1fr 1fr}.sidebar-card{position:static}.metric-row{grid-template-columns:1fr 1fr}.cta-grid{align-items:start}}
@media(max-width:560px){.container{width:min(var(--max),calc(100% - 28px))}.hero{padding:52px 0}.section{padding:70px 0}.trustbar .container,.capabilities,.footer-grid,.metric-row{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.trust-item:last-child{border-bottom:0}.capability{border-right:0;border-bottom:1px solid var(--line)}.capability:last-child{border-bottom:0}.section-head{gap:10px}.hero-actions{align-items:stretch;flex-direction:column}.btn{width:100%}.footer-bottom{flex-direction:column}.contact-option{align-items:flex-start;flex-direction:column;gap:3px}.contact-option strong{text-align:left}}

/* AWS cost optimisation case study */
.aws-case-page{--aws-dark:#061321;--aws-dark2:#0a2034;--aws-cyan:#54caff}.aws-hero{padding:96px 0 70px;background-color:var(--aws-dark);background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:60px 60px;color:white}.aws-hero .breadcrumbs{color:#7890a5}.aws-hero .breadcrumbs a{color:var(--aws-cyan)}.aws-kicker{margin:0 0 14px;color:#1598ef;font:700 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em}.aws-hero h1{color:white;max-width:1040px;font-size:clamp(46px,6vw,76px);margin:20px 0 54px}.aws-hero h1 em{font-style:normal;color:var(--aws-cyan)}.aws-hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}.aws-hero-metrics div{display:flex;flex-direction:column}.aws-hero-metrics strong{font-size:29px;letter-spacing:-.04em}.aws-hero-metrics span{font-size:12px;color:#9db2c3}.aws-story-section{padding:110px 0}.aws-soft{background:#f3f8fc}.aws-dark,.aws-results{background:linear-gradient(145deg,var(--aws-dark),var(--aws-dark2));color:white}.aws-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}.aws-section-title{position:relative}.aws-split>.aws-section-title{position:sticky;top:110px}.aws-section-title>span{display:inline-block;margin-bottom:26px;padding:5px 9px;border:1px solid rgba(21,152,239,.35);border-radius:999px;color:#1598ef;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-section-title h2{font-size:clamp(34px,4vw,51px);max-width:760px}.aws-centred{text-align:center}.aws-centred h2{margin-left:auto;margin-right:auto}.aws-light h2{color:white}.aws-light .aws-kicker{color:var(--aws-cyan)}.aws-light>span{color:var(--aws-cyan);border-color:rgba(84,202,255,.4)}.aws-copy{font-size:17px;line-height:1.82;color:#475663}.aws-dark .aws-copy,.aws-results .aws-copy{color:#aabac7}.aws-copy p{margin:0 0 24px}.aws-copy strong{color:var(--navy)}.aws-dark .aws-copy strong,.aws-results .aws-copy strong{color:white}.aws-copy blockquote{margin:35px 0;padding:27px 0 27px 27px;border-left:4px solid #1598ef;color:var(--navy);font-size:24px;line-height:1.45;font-weight:650;letter-spacing:-.02em}.aws-dark .aws-copy blockquote,.aws-results .aws-copy blockquote{color:white;border-left-color:var(--aws-cyan)}.aws-narrow{max-width:760px;margin:45px auto}.aws-wide{max-width:920px;margin:65px auto 0}.aws-side-stat{display:flex;flex-direction:column;margin-top:45px;padding-top:22px;border-top:1px solid #dde7ee}.aws-side-stat strong{font-size:60px;line-height:1;color:#1598ef;letter-spacing:-.07em}.aws-side-stat small{margin-top:8px;color:#6a7885}.aws-method{display:grid;grid-template-columns:repeat(5,1fr);margin:50px 0;background:white;border:1px solid #dce6ee;border-radius:16px;overflow:hidden}.aws-method div{padding:28px 22px;border-right:1px solid #dce6ee;display:flex;flex-direction:column;gap:8px}.aws-method div:last-child{border:0}.aws-method span{color:#1598ef;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-method strong{font-size:16px}.aws-two-column{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;margin-top:55px}.aws-chart{background:#0b2238;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.4)}.aws-chart-head{display:flex;justify-content:space-between;color:#ddecf7;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.aws-chart-head span:last-child{color:#60d4a8}.aws-chart-area{height:255px;margin-top:24px;position:relative;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.07) 0,rgba(255,255,255,.07) 1px,transparent 1px,transparent 60px)}.aws-chart-area svg{width:100%;height:230px;overflow:visible}.aws-chart-fill{fill:url(#cf)}.aws-chart-line{fill:none;stroke:#35b6ff;stroke-width:3;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px rgba(53,182,255,.55))}.aws-chart circle{fill:white;stroke:#35b6ff;stroke-width:3}.aws-spike-label{position:absolute;left:57%;top:-17px;padding:7px 10px;background:white;color:#071524;border-radius:7px;display:flex;flex-direction:column}.aws-spike-label span{font-size:9px;color:#1598ef}.aws-chart-note{display:flex;align-items:center;gap:12px;padding-top:17px;border-top:1px solid rgba(255,255,255,.12)}.aws-chart-note b{width:26px;height:26px;display:grid;place-items:center;border:1px solid #ffb45d;border-radius:50%;color:#ffb45d}.aws-chart-note p{margin:0;color:#8ea6b8;font-size:12px}.aws-chart-note strong{color:white}.aws-shift{max-width:820px;margin:28px auto 50px;display:grid;grid-template-columns:1fr 70px 1fr;align-items:center}.aws-shift>div{padding:28px;border:1px solid #dce6ee;border-radius:14px;background:white;display:flex;flex-direction:column}.aws-shift>b{text-align:center;color:#1598ef;font-size:28px}.aws-shift span,.aws-architecture span{font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;color:#7c8a96}.aws-shift strong{margin:10px 0;font:650 27px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-shift small{color:#6b7884}.aws-shift .after{background:#ecf8ff;border-color:#68bff4}.aws-shift .after span,.aws-shift .after strong{color:#0876bb}.aws-architecture{max-width:900px;margin:50px auto 35px;display:grid;grid-template-columns:1fr 70px 1.3fr;align-items:center;padding:34px;background:#071421;border:1px solid rgba(255,255,255,.14);border-radius:18px}.aws-architecture>div{min-height:150px;padding:24px;border:1px solid rgba(255,255,255,.15);border-radius:11px;display:flex;flex-direction:column;gap:12px;justify-content:center;text-align:center}.aws-architecture>b{text-align:center;color:var(--aws-cyan);font-size:28px}.aws-architecture strong{font-size:18px}.aws-architecture small{color:#86a0b3}.aws-architecture .after{border-color:rgba(21,152,239,.65);background:rgba(21,152,239,.09)}.aws-zones{display:grid;grid-template-columns:1fr 1fr;gap:8px}.aws-zones small{padding:12px;border:1px solid rgba(53,214,159,.35);border-radius:7px}.aws-feature-list,.aws-wins{max-width:860px;margin:35px auto 55px;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px}.aws-feature-list li,.aws-wins li{padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(255,255,255,.06);color:#c8d7e2;font-size:13px}.aws-schedule,.aws-commit{margin-top:45px;padding:22px;border:1px solid #dce6ee;border-radius:13px;background:#f5faff;display:flex;flex-direction:column}.aws-schedule div{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:20px}.aws-schedule b{height:30px;display:grid;place-items:center;background:#1598ef;color:white;border-radius:5px;font-size:10px}.aws-schedule b.off{background:#d9e5ec;color:#8295a3}.aws-schedule strong{font:650 23px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-schedule small,.aws-commit small{color:#6a7a87}.aws-cleanup{max-width:820px;margin:50px auto;display:grid;grid-template-columns:repeat(3,1fr);background:white;border:1px solid #dce6ee;border-radius:15px;overflow:hidden}.aws-cleanup div{padding:28px;text-align:center;border-right:1px solid #dce6ee;display:flex;flex-direction:column}.aws-cleanup div:last-child{border:0}.aws-cleanup strong{font-size:38px;color:#1598ef}.aws-cleanup span{font-size:12px;color:#697783}.aws-commit{border-color:rgba(21,152,239,.55);background:rgba(21,152,239,.1)}.aws-commit span{color:var(--aws-cyan);font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-commit strong{margin:8px 0;color:white}.aws-commit small{color:#83a0b5}.aws-results{background:#05111e}.aws-result-number{text-align:center;margin:50px auto 65px;display:flex;flex-direction:column;align-items:center}.aws-result-number>span{font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--aws-cyan);letter-spacing:.2em}.aws-result-number strong{font-size:clamp(105px,17vw,185px);line-height:.9;color:white;letter-spacing:-.085em;text-shadow:0 0 60px rgba(21,152,239,.38)}.aws-result-number p{max-width:480px;color:#a6b8c7}.aws-testimonial{background:#eef8ff;border:1px solid rgba(21,152,239,.35)!important;border-left:4px solid #1598ef!important;border-radius:14px;padding:35px!important}.aws-framework{max-width:850px;margin:55px auto 75px;padding:0;list-style:none;border-top:1px solid #cfdae2}.aws-framework li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid #cfdae2}.aws-framework>li>span{color:#1598ef;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.aws-framework strong{font-size:18px}.aws-framework p{margin:5px 0 0;color:#61717e;font-size:14px}.aws-closing{max-width:950px;margin:auto;padding:65px 55px;text-align:center;background:var(--aws-dark);color:white;border-radius:20px}.aws-closing p{color:#88a0b4}.aws-closing strong{display:block;font-size:clamp(28px,4vw,44px);line-height:1.25;letter-spacing:-.04em}.aws-closing em{color:var(--aws-cyan);font-style:normal}.aws-closing .btn{margin-top:30px;background:white;color:#1769e0}
@media(max-width:860px){.aws-split,.aws-two-column{grid-template-columns:1fr;gap:45px}.aws-split>.aws-section-title{position:static}.aws-method{grid-template-columns:1fr}.aws-method div{border-right:0;border-bottom:1px solid #dce6ee}.aws-hero-metrics{grid-template-columns:1fr 1fr}.aws-architecture{grid-template-columns:1fr;gap:18px}.aws-architecture>b{transform:rotate(90deg)}.aws-feature-list,.aws-wins{grid-template-columns:1fr}}
@media(max-width:560px){.aws-hero{padding:70px 0 50px}.aws-hero h1{font-size:42px}.aws-story-section{padding:75px 0}.aws-section-title h2{font-size:35px}.aws-copy{font-size:16px}.aws-copy blockquote{font-size:21px}.aws-shift{grid-template-columns:1fr;gap:10px}.aws-shift>b{transform:rotate(90deg)}.aws-cleanup{grid-template-columns:1fr}.aws-cleanup div{border-right:0;border-bottom:1px solid #dce6ee}.aws-zones{grid-template-columns:1fr}.aws-closing{padding:45px 23px}.aws-framework li{grid-template-columns:38px 1fr}.aws-result-number strong{font-size:105px}}

/* AWS resilient multi-AZ architecture case study */
.resilience-case-page .aws-hero{background-image:radial-gradient(circle at 82% 18%,rgba(84,202,255,.13),transparent 25%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)}
.res-before-after{max-width:1080px;margin:60px auto 5px;display:grid;grid-template-columns:.78fr 54px 1.22fr;align-items:center}
.res-architecture-panel{min-height:540px;padding:28px;border:1px solid #d8e4ed;border-radius:18px;background:white;box-shadow:0 22px 55px rgba(11,31,51,.06);display:flex;flex-direction:column;justify-content:center}
.res-after{border-color:#65bcec;background:linear-gradient(160deg,#fff 0%,#f0f9ff 100%);box-shadow:0 24px 65px rgba(21,152,239,.13)}
.res-panel-head{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #dfe8ef;display:flex;flex-direction:column}
.res-panel-head span,.res-option-label,.res-capacity-head,.res-decision span{color:#1598ef;font:700 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em}
.res-panel-head strong{margin-top:5px;color:var(--navy);font-size:15px}
.res-node{padding:13px 16px;border:1px solid #cbd9e4;border-radius:8px;background:white;color:var(--navy);text-align:center;font-size:13px}
.res-node b,.res-node small{display:block}.res-node small{margin-top:3px;color:#718291;font-size:10px}
.res-user{background:#eef4f8}.res-ec2{border-color:#f0a052;background:#fff7ef}.res-alb{border-color:#4cb7ef;background:#eaf8ff}.res-target{border-color:#7cb5dc;background:#f6fbff}.res-data{border-color:#8b75e3;background:#f5f2ff}
.res-arrow{height:31px;display:grid;place-items:center;color:#1598ef;font-weight:800}.res-split-arrow{font-size:18px;letter-spacing:20px;padding-left:20px}
.res-zone{padding:12px;border:1px dashed #9db5c7;border-radius:10px;background:rgba(255,255,255,.55)}
.res-zone>span{display:block;margin-bottom:9px;color:#71889a;text-align:center;font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}
.res-zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.res-cert{align-self:flex-end;margin:0 0 -10px;padding:5px 9px;border-radius:999px;background:#eafaf3;color:#147452;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace;z-index:1}
.res-scale-note{margin-top:13px;padding:8px 10px;border-radius:7px;background:#dff3ff;color:#17668e;text-align:center;font-size:10px;font-weight:750}
.res-change{text-align:center;color:#1598ef;font-size:30px;font-weight:800}
.res-replacement{max-width:1000px;margin:55px auto;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.14);border-radius:15px;overflow:hidden;background:rgba(255,255,255,.035)}
.res-replacement div{position:relative;padding:28px 25px;border-right:1px solid rgba(255,255,255,.12)}.res-replacement div:last-child{border:0}
.res-replacement div:not(:last-child)::after{content:'›';position:absolute;right:-8px;top:50%;width:16px;height:28px;margin-top:-14px;background:#0a1d30;color:var(--aws-cyan);font-size:24px;line-height:25px;text-align:center;z-index:1}
.res-replacement span{color:var(--aws-cyan);font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.res-replacement b,.res-replacement small{display:block}.res-replacement b{margin:16px 0 6px;color:white;font-size:18px}.res-replacement small{color:#9db1c0;line-height:1.6}
.res-session-options{max-width:1020px;margin:55px auto 30px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.res-session-card{padding:34px;border:1px solid #d4e0e8;border-radius:16px;background:white;box-shadow:0 18px 45px rgba(11,31,51,.05)}
.res-session-card h3{margin:9px 0 25px;font-size:27px}.res-session-card p{color:#566674;font-size:14px}.res-session-card ul{margin:25px 0 0;padding:20px 0 0;list-style:none;border-top:1px solid #e0e8ee}.res-session-card li{margin:8px 0;color:#546674;font-size:12px}.res-session-card li::before{content:'✓';margin-right:8px;color:#1598ef;font-weight:900}
.res-session-card.res-preferred{border-color:#54bbed;background:linear-gradient(155deg,#fff,#edf9ff)}
.res-mini-flow{min-height:88px;padding:17px;border-radius:11px;background:#071828;display:flex;align-items:center;justify-content:center;gap:10px;color:#6fcfff}.res-mini-flow span{padding:9px 11px;border:1px solid rgba(255,255,255,.18);border-radius:6px;color:#c7d9e7;font-size:11px}.res-mini-flow span.active{border-color:#54caff;background:rgba(84,202,255,.15);color:white}.res-mini-flow b{font-size:15px}.res-redis-flow span.active{border-color:#60d4a8;background:rgba(96,212,168,.15)}
.res-decision{max-width:910px;margin:35px auto 0;display:grid;grid-template-columns:1fr 50px 1fr;align-items:center}.res-decision>div{padding:20px;border:1px solid #d2dfe8;border-radius:11px;background:white;display:flex;flex-direction:column}.res-decision>div:last-child{border-color:#59bcec;background:#eaf8ff}.res-decision>b{text-align:center;color:#1598ef;font-size:23px}.res-decision strong{margin-top:4px;color:var(--navy);font-size:14px}
.res-capacity{max-width:930px;margin:55px auto;padding:27px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:#0b2238;box-shadow:0 24px 70px rgba(0,0,0,.25)}
.res-capacity-head{display:flex;justify-content:space-between;color:#74d2ff}.res-capacity-head span:last-child{color:#60d4a8}
.res-capacity-bars{height:170px;margin-top:28px;display:grid;grid-template-columns:1fr 2.3fr 1fr;align-items:end;gap:5px;border-bottom:1px solid rgba(255,255,255,.18);background:repeating-linear-gradient(to bottom,rgba(255,255,255,.06) 0,rgba(255,255,255,.06) 1px,transparent 1px,transparent 42px)}
.res-capacity-segment{height:60px;padding:12px;border-radius:8px 8px 0 0;background:#31506a;color:white;display:flex;flex-direction:column;text-align:center;justify-content:center}.res-capacity-segment.business{height:108px;background:linear-gradient(180deg,#1598ef,#1167c7);box-shadow:0 0 28px rgba(21,152,239,.3)}.res-capacity-segment b{font-size:14px}.res-capacity-segment small{color:#c0d0dd;font-size:9px}.res-capacity-segment.business small{color:#e1f4ff}.res-capacity-segment i{margin-top:8px;color:#9de1ff;font-size:9px;font-style:normal}
.res-capacity-axis{display:flex;justify-content:space-between;margin-top:10px;color:#708da3;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace}
.res-considerations{max-width:1050px;margin:55px auto 0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dce6ee;border-radius:16px;overflow:hidden}
.res-considerations article{padding:30px;border-right:1px solid #dce6ee;border-bottom:1px solid #dce6ee;background:white}.res-considerations article:nth-child(3n){border-right:0}.res-considerations article:nth-last-child(-n+3){border-bottom:0}
.res-considerations span{color:#1598ef;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.res-considerations h3{margin:20px 0 9px;font-size:20px}.res-considerations p{margin:0;color:#667683;font-size:13px;line-height:1.7}
.res-results-grid{max-width:1000px;margin:55px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.res-results-grid div{min-height:170px;padding:25px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(255,255,255,.055)}.res-results-grid strong,.res-results-grid span{display:block}.res-results-grid strong{margin-bottom:13px;color:white;font-size:17px}.res-results-grid span{color:#9eb3c2;font-size:12px;line-height:1.65}.res-results-grid div::before{content:'✓';display:grid;place-items:center;width:25px;height:25px;margin-bottom:22px;border:1px solid rgba(84,202,255,.5);border-radius:50%;color:var(--aws-cyan);font-size:11px}
@media(max-width:900px){.res-before-after{grid-template-columns:1fr;gap:18px}.res-change{transform:rotate(90deg)}.res-architecture-panel{min-height:auto}.res-replacement{grid-template-columns:1fr 1fr}.res-replacement div:nth-child(2){border-right:0}.res-replacement div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}.res-replacement div::after{display:none}.res-session-options{grid-template-columns:1fr}.res-considerations{grid-template-columns:1fr 1fr}.res-considerations article:nth-child(3n){border-right:1px solid #dce6ee}.res-considerations article:nth-child(2n){border-right:0}.res-considerations article:nth-last-child(-n+3){border-bottom:1px solid #dce6ee}.res-considerations article:nth-last-child(-n+2){border-bottom:0}.res-results-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.res-zone-grid{grid-template-columns:1fr}.res-session-card{padding:24px}.res-decision{grid-template-columns:1fr;gap:8px}.res-decision>b{transform:rotate(90deg)}.res-capacity{padding:18px}.res-capacity-head{flex-direction:column;gap:5px}.res-capacity-bars{grid-template-columns:.85fr 1.5fr .85fr}.res-capacity-segment{padding:8px}.res-capacity-segment b{font-size:11px}.res-capacity-segment i{display:none}.res-replacement,.res-considerations,.res-results-grid{grid-template-columns:1fr}.res-replacement div,.res-replacement div:nth-child(2),.res-considerations article,.res-considerations article:nth-child(3n),.res-considerations article:nth-last-child(-n+3){border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.res-considerations article,.res-considerations article:nth-child(3n),.res-considerations article:nth-last-child(-n+3){border-bottom-color:#dce6ee}.res-replacement div:last-child,.res-considerations article:last-child{border-bottom:0}.res-results-grid div{min-height:auto}}
