:root {
  --navy: #062a43;
  --navy-deep: #031d30;
  --blue: #0d5f89;
  --cyan: #79c9e8;
  --gold: #fbbf24;
  --cream: #f6f3ec;
  --paper: #fbfaf7;
  --ink: #0d2130;
  --muted: #5d6a73;
  --line: rgba(13, 33, 48, .14);
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--cream); color: var(--ink); margin: 0; min-height: 100vh; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }

.site-header {
  align-items: center;
  background: rgba(246, 243, 236, .96);
  border-bottom: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  min-height: 82px;
  padding: 0 clamp(22px, 5vw, 74px);
  position: relative;
  z-index: 20;
}
.brand { align-items: center; display: inline-flex; gap: 8px; justify-self: start; }
.brand-mark { height: 46px; overflow: hidden; position: relative; width: 46px; }
.brand-mark img { height: 100%; object-fit: contain; transform: scale(1.2); width: 100%; }
.brand-name { color: var(--navy); font-size: 19px; font-weight: 760; letter-spacing: -.045em; white-space: nowrap; }
.brand-name > span { color: #d99c00; }
.brand-name small { color: var(--blue); font-size: 10px; font-weight: 700; letter-spacing: .12em; margin-left: 7px; text-transform: uppercase; }
.site-header nav { align-items: center; display: flex; gap: clamp(24px, 3vw, 45px); justify-content: center; }
.site-header nav a { color: #35505f; font-size: 13px; font-weight: 580; }
.site-header nav a:hover, .site-header nav a[aria-current="page"] { color: var(--blue); }
.corporate-link { align-items: center; background: var(--navy); border-radius: 999px; color: white; display: inline-flex; font-size: 13px; font-weight: 700; gap: 10px; justify-self: end; padding: 13px 19px; }

.hero { color: white; min-height: calc(100svh - 82px); overflow: hidden; padding: clamp(78px, 11vh, 124px) clamp(22px, 7vw, 112px) 92px; position: relative; }
.hero-grid { background-image: linear-gradient(rgba(121, 201, 232, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(121, 201, 232, .08) 1px, transparent 1px); background-size: 54px 54px; inset: 0; mask-image: linear-gradient(to right, black, transparent 70%); opacity: .5; position: absolute; z-index: 2; }
.hero-art, .hero-art img { height: 100%; inset: 0; position: absolute; width: 100%; }
.hero-art { margin: 0; }
.hero-art img { object-fit: cover; object-position: center; }
.hero-shade { background: linear-gradient(90deg, rgba(3, 29, 48, .98) 0%, rgba(3, 29, 48, .92) 32%, rgba(3, 29, 48, .35) 67%, rgba(3, 29, 48, .08) 100%), linear-gradient(0deg, rgba(3, 29, 48, .72), transparent 45%); inset: 0; position: absolute; z-index: 1; }
.hero-copy { max-width: min(56vw, 790px); position: relative; z-index: 3; }
.eyebrow, .section-kicker { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow { align-items: center; color: #a9d9ec; display: flex; margin: 0 0 28px; }
.eyebrow span { background: var(--gold); border-radius: 50%; box-shadow: 0 0 18px rgba(251,191,36,.72); height: 8px; margin-right: 12px; width: 8px; }
.hero h1 { font-size: clamp(58px, 7.2vw, 108px); font-weight: 570; letter-spacing: -.08em; line-height: .9; margin: 0; }
.hero h1 em { color: var(--gold); display: block; font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.055em; }
.hero-lead { color: #c4d6e0; font-size: clamp(17px, 1.45vw, 21px); line-height: 1.62; margin: 34px 0 0; max-width: 690px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 39px; }
.button { align-items: center; border-radius: 999px; display: inline-flex; font-size: 14px; font-weight: 700; gap: 13px; justify-content: center; min-height: 52px; padding: 0 24px; }
.button-primary { background: var(--gold); color: #17200a; }
.button-ghost { border: 1px solid rgba(255,255,255,.38); color: white; }
.hero-foot { align-items: center; border-top: 1px solid rgba(255,255,255,.16); bottom: 0; color: #99b5c4; display: flex; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; justify-content: space-between; left: clamp(22px, 7vw, 112px); letter-spacing: .06em; padding: 22px 0; position: absolute; right: clamp(22px, 7vw, 112px); text-transform: uppercase; z-index: 3; }

.section-shell { padding-left: clamp(22px, 7vw, 112px); padding-right: clamp(22px, 7vw, 112px); }
.section-kicker { color: var(--blue); margin: 0 0 22px; }
.section-kicker::before { content: "//"; margin-right: 8px; }
.section-kicker.light { color: #8fd1ea; }
.signal-strip { align-items: center; background: #ebe8df; display: flex; gap: 22px; justify-content: space-around; min-height: 72px; padding: 16px clamp(22px, 7vw, 112px); }
.signal-strip span { color: #61707a; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.signal-strip i { background: #aeb9bd; border-radius: 50%; height: 3px; width: 3px; }

.intro { align-items: start; display: grid; gap: clamp(60px, 8vw, 140px); grid-template-columns: 1.05fr .95fr; padding-bottom: 138px; padding-top: 142px; }
.intro h2, .permissions h2, .control h2 { color: var(--navy); font-size: clamp(43px, 5.3vw, 78px); font-weight: 560; letter-spacing: -.068em; line-height: .97; margin: 0; }
.intro-copy { border-left: 1px solid #c9c7bf; padding-left: clamp(28px, 5vw, 70px); }
.intro-copy p, .permissions-copy > p, .control p { color: var(--muted); font-size: 18px; line-height: 1.75; margin: 0; }
.intro-copy p + p { color: var(--navy); font-weight: 620; margin-top: 27px; }

.workflow { background: var(--navy-deep); color: white; padding-bottom: 130px; padding-top: 126px; }
.section-heading { align-items: end; display: grid; gap: 70px; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); }
.section-heading h2 { font-size: clamp(43px, 5.3vw, 78px); font-weight: 560; letter-spacing: -.068em; line-height: .96; margin: 0; }
.section-heading h2 em { color: var(--gold); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.section-heading > p { color: #a6bbc7; font-size: 17px; line-height: 1.72; margin: 0; max-width: 520px; }
.workflow-grid { border-bottom: 1px solid rgba(255,255,255,.16); border-top: 1px solid rgba(255,255,255,.16); display: grid; grid-template-columns: repeat(4,1fr); margin-top: 78px; }
.workflow-grid article { border-right: 1px solid rgba(255,255,255,.16); min-height: 350px; overflow: hidden; padding: 28px; position: relative; }
.workflow-grid article:last-child { border-right: 0; }
.workflow-grid article > span { color: #7e9aa9; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11px; }
.workflow-grid h3 { font-size: 27px; letter-spacing: -.04em; margin: 90px 0 14px; }
.workflow-grid p { color: #a9bdc8; font-size: 15px; line-height: 1.65; margin: 0; }
.wave { align-items: center; display: flex; gap: 3px; height: 46px; left: 28px; position: absolute; right: 28px; top: 74px; }
.wave::before { background: repeating-linear-gradient(90deg,var(--cyan) 0 2px,transparent 2px 7px); clip-path: polygon(0 40%,5% 36%,10% 55%,15% 20%,20% 72%,25% 46%,30% 5%,35% 79%,40% 34%,45% 60%,50% 12%,55% 85%,60% 42%,65% 63%,70% 25%,75% 70%,80% 36%,85% 55%,90% 17%,95% 61%,100% 43%,100% 57%,95% 72%,90% 30%,85% 68%,80% 50%,75% 84%,70% 39%,65% 76%,60% 55%,55% 96%,50% 28%,45% 73%,40% 48%,35% 91%,30% 20%,25% 61%,20% 86%,15% 33%,10% 67%,5% 51%,0 58%); content:""; height:100%; opacity:.8; width:100%; }
.wave-two::before { transform: scaleY(.65); }.wave-three::before { transform: scaleY(1.15); }.wave-four::before { transform: scaleY(.48); }

.permissions { align-items: center; display: grid; gap: clamp(70px,9vw,150px); grid-template-columns: 1fr 1fr; padding-bottom: 145px; padding-top: 145px; }
.permissions-copy > p { margin-top: 30px; max-width: 620px; }
.pill-row { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; }
.pill-row span { border: 1px solid #ccd2d3; border-radius: 999px; color: #53646d; font-size: 11px; font-weight: 700; letter-spacing: .06em; padding: 10px 13px; text-transform: uppercase; }
.scope-stack { border-top: 1px solid var(--line); }
.scope-stack article { align-items: start; border-bottom: 1px solid var(--line); display: grid; gap: 24px; grid-template-columns: 42px 1fr; padding: 34px 0; }
.scope-index { align-items: center; border: 1px solid #ccd2d3; border-radius: 50%; color: var(--blue); display: flex; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11px; height: 38px; justify-content: center; width: 38px; }
.scope-stack code { color: var(--blue); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; font-weight: 700; overflow-wrap: anywhere; }
.scope-stack p { color: var(--muted); font-size: 15px; line-height: 1.6; margin: 13px 0 0; }

.actions { background: var(--navy-deep); color: white; padding-bottom: 132px; padding-top: 126px; }
.actions-heading { align-items: end; display: grid; gap: 70px; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); }
.actions-heading h2 { font-size: clamp(43px,5.3vw,78px); font-weight: 560; letter-spacing: -.068em; line-height: .96; margin: 0; }
.actions-heading h2 em { color: var(--gold); font-family: Georgia,"Times New Roman",serif; font-weight: 400; }
.actions-heading > p { color: #a6bbc7; font-size: 17px; line-height: 1.72; margin: 0; max-width: 520px; }
.action-grid { border-left: 1px solid rgba(255,255,255,.16); border-top: 1px solid rgba(255,255,255,.16); display: grid; grid-template-columns: repeat(4,1fr); margin-top: 76px; }
.action-grid article { border-bottom: 1px solid rgba(255,255,255,.16); border-right: 1px solid rgba(255,255,255,.16); min-height: 250px; padding: 27px 25px 30px; transition: background-color .2s ease,transform .2s ease; }
.action-grid article:hover { background: rgba(121,201,232,.07); transform: translateY(-3px); }
.action-grid article > span { color: var(--gold); font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 11px; letter-spacing: .12em; }
.action-grid h3 { font-size: 22px; letter-spacing: -.035em; line-height: 1.1; margin: 58px 0 13px; }
.action-grid p { color: #a9bdc8; font-size: 14px; line-height: 1.65; margin: 0; }
.actions-note { border-left: 2px solid var(--gold); color: #a9bdc8; font-size: 14px; line-height: 1.7; margin: 42px 0 0; max-width: 920px; padding: 4px 0 4px 20px; }
.actions-note strong { color: white; }

.control { align-items: center; background: linear-gradient(130deg,#073450,var(--navy)); color: white; display: grid; gap: clamp(60px,8vw,130px); grid-template-columns: .8fr 1.2fr; padding-bottom: 118px; padding-top: 118px; }
.control h2 { color: white; }
.control p { color: #bad0db; margin-top: 28px; max-width: 620px; }
.control-mark { align-items: center; aspect-ratio: 1; border: 1px solid rgba(121,201,232,.24); border-radius: 50%; display: flex; gap: clamp(5px,1vw,12px); justify-content: center; justify-self: center; max-width: 330px; padding: 18%; width: 100%; }
.control-mark span { animation: pulse 2.8s ease-in-out infinite; background: linear-gradient(var(--cyan),var(--gold)); border-radius: 999px; height: 35%; width: 7px; }
.control-mark span:nth-child(2), .control-mark span:nth-child(4) { animation-delay: -.55s; height: 66%; }.control-mark span:nth-child(3) { animation-delay: -1.1s; height: 94%; }
.text-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 35px; }
.text-links a { border: 1px solid rgba(255,255,255,.28); border-radius: 999px; color: white; font-size: 13px; font-weight: 700; padding: 12px 16px; }
.text-links.dark a { border-color: var(--line); color: var(--navy); }

.english-summary { align-items: start; display: grid; gap: 30px 70px; grid-template-columns: .35fr 1fr; padding-bottom: 104px; padding-top: 104px; }
.english-summary > p:not(.section-kicker) { color: var(--muted); font-size: 18px; line-height: 1.72; margin: 0; max-width: 850px; }
.english-summary .text-links { grid-column: 2; margin: 0; }
.footer { align-items: center; background: var(--navy-deep); color: white; display: grid; gap: 24px; grid-template-columns: 1fr auto 1fr; min-height: 126px; padding: 28px clamp(22px,7vw,112px); }
.footer-brand .brand-name { color: white; }.footer p { color: #94afbd; font-size: 12px; margin: 0; }.footer > a:last-child { color: white; font-size: 13px; justify-self: end; }

/* Legal pages */
.legal-page { background: var(--paper); }
.legal-hero { background: radial-gradient(circle at 82% 16%,rgba(121,201,232,.22),transparent 30%), linear-gradient(135deg,var(--navy-deep),var(--navy)); color: white; overflow: hidden; padding: clamp(76px,10vw,130px) clamp(22px,7vw,112px) clamp(64px,8vw,100px); position: relative; }
.legal-hero::after { background-image: linear-gradient(rgba(121,201,232,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(121,201,232,.08) 1px,transparent 1px); background-size: 54px 54px; content:""; inset:0; mask-image:linear-gradient(to left,black,transparent 60%); position:absolute; }
.legal-hero > * { max-width: 920px; position: relative; z-index: 1; }
.legal-hero h1 { font-size: clamp(50px,7vw,96px); font-weight: 560; letter-spacing: -.075em; line-height: .94; margin: 0; }
.legal-hero .lead { color: #bfd2dc; font-size: clamp(18px,2vw,22px); line-height: 1.65; margin: 30px 0 0; max-width: 760px; }
.legal-content { background: white; border: 1px solid var(--line); box-shadow: 0 32px 90px rgba(8,38,58,.07); margin: clamp(38px,6vw,76px) auto 96px; max-width: 1080px; padding: clamp(34px,6vw,80px); }
.legal-content section + section { border-top: 1px solid var(--line); margin-top: 54px; padding-top: 54px; }
.legal-content h2 { color: var(--navy); font-size: clamp(28px,3.5vw,44px); font-weight: 590; letter-spacing: -.05em; line-height: 1.08; margin: 0 0 22px; }
.legal-content p,.legal-content li { color: var(--muted); font-size: 16px; line-height: 1.78; }.legal-content p { margin: 0 0 18px; }.legal-content ul { margin:0;padding-left:22px; }.legal-content li+li{margin-top:10px}.legal-content a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.meta{color:#71828c!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px!important;letter-spacing:.05em;text-transform:uppercase}.english{background:#f2f6f7;border-left:3px solid var(--cyan);padding:clamp(24px,4vw,42px)}

@keyframes pulse { 0%,100%{transform:scaleY(.75);opacity:.65}50%{transform:scaleY(1.05);opacity:1} }
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.control-mark span{animation:none} }

@media (max-width: 900px) {
  .site-header { grid-template-columns: 1fr auto; padding-bottom: 12px; padding-top: 12px; }
  .site-header nav { border-top: 1px solid var(--line); grid-column: 1 / -1; justify-content: flex-start; margin-top: 10px; overflow-x: auto; padding-top: 12px; }
  .hero-copy { max-width: 720px; }
  .hero-art img { object-position: 61% center; }
  .hero-shade { background:linear-gradient(90deg,rgba(3,29,48,.97),rgba(3,29,48,.66) 74%,rgba(3,29,48,.3)),linear-gradient(0deg,rgba(3,29,48,.78),transparent 55%); }
  .intro,.permissions,.control,.section-heading,.actions-heading,.english-summary { grid-template-columns: 1fr; }
  .intro { gap:55px; }.intro-copy{max-width:760px}.workflow-grid{grid-template-columns:repeat(2,1fr)}.workflow-grid article:nth-child(2){border-right:0}.workflow-grid article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}.control-mark{max-width:240px}.english-summary .text-links{grid-column:1}.footer{grid-template-columns:1fr auto}.footer p{display:none}
  .action-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 620px) {
  .site-header { min-height:72px;padding:10px 20px 12px }.brand-mark{height:40px;width:40px}.brand-name{font-size:17px}.brand-name small{display:none}.corporate-link{font-size:0;padding:12px 14px}.corporate-link span{font-size:16px}.site-header nav{gap:24px;white-space:nowrap}
  .hero{min-height:calc(100svh - 72px);padding:72px 22px 98px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(54px,17vw,78px)}.hero-lead{font-size:17px}.hero-art img{object-position:67% center}.hero-shade{background:linear-gradient(90deg,rgba(3,29,48,.96),rgba(3,29,48,.7)),linear-gradient(0deg,rgba(3,29,48,.92),transparent)}.hero-foot{align-items:flex-start;flex-direction:column;gap:7px;left:22px;right:22px}.signal-strip{gap:10px;justify-content:flex-start;overflow:hidden}.signal-strip span:nth-of-type(n+4),.signal-strip i:nth-of-type(n+4){display:none}
  .intro{padding-bottom:90px;padding-top:94px}.intro-copy{border-left:0;border-top:1px solid #c9c7bf;padding-left:0;padding-top:34px}.workflow{padding-bottom:90px;padding-top:90px}.workflow-grid{grid-template-columns:1fr;margin-top:50px}.workflow-grid article{border-bottom:1px solid rgba(255,255,255,.16);border-right:0;min-height:310px}.permissions{gap:60px;padding-bottom:95px;padding-top:95px}.actions{padding-bottom:92px;padding-top:90px}.action-grid{grid-template-columns:1fr;margin-top:48px}.action-grid article{min-height:220px}.action-grid h3{margin-top:45px}.control{padding-bottom:90px;padding-top:90px}.control-mark{max-width:190px}.english-summary{padding-bottom:80px;padding-top:80px}.footer{grid-template-columns:1fr}.footer>a:last-child{justify-self:start}.legal-hero{padding-left:22px;padding-right:22px}.legal-content{border-left:0;border-right:0;margin-bottom:0;padding:36px 22px}.legal-content .english{margin-left:-8px;margin-right:-8px}
}
