body.is-fde-world{background:#102f28;color:#fff}
body.is-fde-world > main{padding:0}
.fde-page{position:relative;isolation:isolate;min-height:100svh;display:flex;flex-direction:column;font-family:var(--font-sans);overflow:hidden;background:#102f28}
.fde-page :is(a,button):focus-visible{outline:2px solid #fff;outline-offset:4px}
.fde-dialog :is(button,input):focus-visible{outline:2px solid #197458;outline-offset:4px}
.fde-skip{position:absolute;left:18px;top:-80px;z-index:20;padding:10px 14px;background:#fff;color:#19362c}
.fde-skip:focus{top:12px}
.fde-header,.fde-footer{position:relative;z-index:2;width:min(1120px,calc(100% - 56px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.fde-header{height:76px;border-bottom:1px solid rgba(255,255,255,.36)}
.fde-brand{display:inline-flex;align-items:center;gap:7px;line-height:0;transition:opacity .2s ease}
.fde-brand:hover{opacity:.62}
.fde-brand img:first-child{width:30px;height:24px;object-fit:contain}
.fde-brand img:last-child{width:72px;height:auto}
.fde-nav{display:flex;align-items:center;gap:25px;color:rgba(255,255,255,.91);font-size:12px}
.fde-nav a,.fde-nav button{min-height:44px;display:inline-flex;align-items:center;gap:10px;border:0;border-bottom:1px solid transparent;background:transparent;color:inherit;font:inherit;cursor:pointer}
.fde-nav :is(a,button):hover{color:#fff;border-color:currentColor}
.fde-nav button{border-color:rgba(255,255,255,.55)}
.fde-main{z-index:1;flex:1;display:flex;align-items:flex-end;width:min(1120px,calc(100% - 56px));margin:0 auto;padding:65px 0 46px}
.fde-hero{display:block;width:100%;max-width:none;margin:0;padding:0}
.fde-art-frame{position:absolute;z-index:0;inset:0;overflow:hidden;background:#102f28}
.fde-art{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:46% 50%;animation:fde-art-drift 20s ease-in-out infinite alternate}
.fde-art-frame:before{content:"";position:absolute;z-index:1;inset:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-mask-image:radial-gradient(ellipse 56% 49% at 24% 61%,#000 9%,rgba(0,0,0,.55) 48%,transparent 88%);mask-image:radial-gradient(ellipse 56% 49% at 24% 61%,#000 9%,rgba(0,0,0,.55) 48%,transparent 88%);pointer-events:none}
.fde-art-frame:after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(5,24,20,.25),transparent 29%),linear-gradient(90deg,rgba(5,25,21,.57),rgba(5,25,21,.35) 30%,rgba(5,25,21,.07) 62%,transparent 79%),radial-gradient(ellipse 36% 33% at 83% 78%,rgba(4,24,20,.29),transparent 90%),linear-gradient(0deg,rgba(5,27,23,.86),rgba(5,27,23,.43) 28%,rgba(5,27,23,.02) 66%);pointer-events:none}
.fde-art-caption{position:absolute;z-index:1;right:max(28px,calc((100% - 1120px)/2));top:101px;color:#fff;font-size:10px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.fde-story{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,310px);grid-template-areas:"eyebrow tools" "title tools" "lede tools" "action tools";column-gap:clamp(45px,8vw,95px);align-items:end;min-width:0;padding:0;border:0;background:transparent}
.fde-eyebrow{grid-area:eyebrow;display:flex;align-items:center;gap:9px;color:rgba(230,255,241,.9);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.fde-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#50bb8b;box-shadow:0 0 0 4px rgba(80,187,139,.12);animation:fde-pulse 3s ease-in-out infinite}
.fde-story h1{grid-area:title;max-width:11ch;margin:18px 0 18px;color:#fff;font-size:clamp(59px,6.1vw,80px);font-weight:400;line-height:.99;letter-spacing:-.067em;text-wrap:balance;text-shadow:0 4px 23px rgba(0,0,0,.24)}
.fde-lede{grid-area:lede;max-width:49ch;color:rgba(250,255,251,.96);font-size:15px;line-height:1.57;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.fde-world-tools{position:relative;z-index:1;grid-area:tools;align-self:end;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;row-gap:20px;margin:0 0 6px;padding-top:20px;border-top:1px solid rgba(255,255,255,.53)}
.fde-world-tools:after{content:"";position:absolute;top:-1px;left:0;width:68px;height:1px;background:linear-gradient(90deg,#b7f7d1,transparent);box-shadow:0 0 13px rgba(183,247,209,.5);animation:fde-line-glow 6s ease-in-out infinite alternate;pointer-events:none}
.fde-tool{min-width:0;min-height:35px;display:flex;align-items:center;gap:9px;color:#c2f6d7}
.fde-tool svg{flex:0 0 31px;width:31px;height:31px;transition:transform .25s ease,color .25s ease}
.fde-tool:hover svg{color:#fff;transform:translateY(-2px)}
.fde-tool span{min-width:0;color:#fff;font-size:13px;font-weight:500;line-height:1.24;text-shadow:0 1px 7px rgba(0,0,0,.35)}
.fde-action-row{grid-area:action;display:flex;align-items:center;gap:20px;margin-top:25px}
.fde-primary,.fde-submit{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:49px;padding:12px 16px;border:0;border-radius:0;background:#1d5d47;color:#fff;font:500 12px var(--font-sans);cursor:pointer;transition:background .2s ease,transform .2s ease}
.fde-primary{min-width:181px;border:1px solid rgba(255,255,255,.84);background:rgba(248,255,251,.95);color:#123c2e;box-shadow:0 12px 34px rgba(0,0,0,.16),inset 0 -1px 0 rgba(18,60,46,.07);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:600}
.fde-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 17px 40px rgba(0,0,0,.22)}
.fde-primary span{transition:transform .25s ease}
.fde-primary:hover span{transform:translate(2px,-2px)}
.fde-submit:hover:not(:disabled){background:#144a38;transform:translateY(-2px)}
.fde-primary span,.fde-submit span{font-size:17px;line-height:1}
.fde-action-row p{max-width:19ch;color:rgba(247,255,249,.88);font-size:11px;line-height:1.4;text-shadow:0 1px 8px rgba(0,0,0,.33)}
.fde-footer{min-height:61px;padding:13px 0;border-top:1px solid rgba(255,255,255,.35);color:rgba(234,249,239,.7);font-size:10px;letter-spacing:.03em}
.fde-footer a{color:#fff}
.fde-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.fde-dialog{width:min(470px,calc(100% - 28px));max-height:calc(100dvh - 28px);margin:auto;padding:28px 30px 30px;border:1px solid #bfd7cf;border-radius:0;background:#f2f8f7;color:#19362c;box-shadow:0 24px 80px rgba(4,33,22,.2);overflow:auto;font-family:var(--font-sans)}
.fde-dialog::backdrop{background:rgba(12,34,25,.54);backdrop-filter:blur(5px)}
.fde-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#51806b;font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}
.fde-dialog-close{width:36px;height:36px;border:1px solid #c6dad1;background:transparent;color:#2a5944;font:400 25px/1 var(--font-sans);cursor:pointer}
.fde-dialog h2{margin:19px 0 9px;color:#193e2f;font-size:34px;font-weight:400;line-height:1.08;letter-spacing:-.055em}
.fde-dialog-intro{max-width:38ch;margin-bottom:16px;color:#607a6d;font-size:13px;line-height:1.5}
.fde-dialog form>label{display:block;margin:13px 0 6px;color:#34584f;font-size:11px;font-weight:500}
.fde-dialog input[type=text],.fde-dialog input[type=email],.fde-dialog input[type=file]{display:block;width:100%;min-height:46px;padding:11px 12px;border:1px solid #bcd2cf;border-radius:0;background:#fff;color:#19382e;font:400 13px/1.3 var(--font-sans)}
.fde-dialog input::placeholder{color:#92aaa0}
.fde-dialog input[type=file]{padding:7px;font-size:11px;cursor:pointer}
.fde-dialog input[type=file]::file-selector-button{margin-right:12px;padding:7px 11px;border:1px solid #a9c8bb;border-radius:0;background:#f0f8f3;color:#245942;font:500 11px var(--font-sans);cursor:pointer}
.fde-file-help{margin-top:5px;color:#77918a;font-size:10px}
.fde-submit{width:100%;margin-top:19px}
.fde-submit:disabled{cursor:wait;opacity:.65}
.fde-form-note,.fde-form-status{margin-top:10px;color:#759087;font-size:10px;line-height:1.45}
.fde-form-status:not(:empty){color:#9f3f3f}
.fde-pending[hidden],.fde-verify[hidden],.fde-success[hidden]{display:none}
.fde-pending,.fde-verify,.fde-success{min-height:300px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.fde-success-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #75aa91;border-radius:50%;color:#1d5d47;font-size:18px}
.fde-pending h2,.fde-verify h2,.fde-success h2{margin-top:22px}
.fde-pending p,.fde-verify p,.fde-success p{max-width:35ch;color:#60766a;font-size:13px;line-height:1.6}
.fde-pending strong{color:#193e2f;font-weight:500;overflow-wrap:anywhere}
.fde-pending button,.fde-success button{margin-top:27px;padding:7px 0;border:0;border-bottom:1px solid #8dac9a;background:transparent;color:#1d5d47;font:500 12px var(--font-sans);cursor:pointer}
.fde-verify .fde-submit{margin-top:24px}
@keyframes fde-art-drift{from{transform:scale(1.02) translate3d(-.5%,0,0)}to{transform:scale(1.07) translate3d(.5%,0,0)}}
@keyframes fde-line-glow{from{opacity:.35;transform:translateX(0)}to{opacity:.85;transform:translateX(54px)}}
@keyframes fde-pulse{50%{box-shadow:0 0 0 7px rgba(80,187,139,.06)}}
@media(max-width:950px){.fde-story{grid-template-columns:minmax(0,1fr) minmax(0,250px);column-gap:30px}.fde-story h1{font-size:clamp(55px,7vw,69px)}.fde-world-tools{column-gap:10px}.fde-tool{gap:6px}.fde-tool span{font-size:11px}.fde-action-row{align-items:flex-start;flex-direction:column;gap:9px}.fde-action-row p{max-width:none}}
@media(max-width:700px){
  .fde-header,.fde-main,.fde-footer{width:calc(100% - 40px)}
  .fde-header{height:66px}
  .fde-nav{gap:17px;font-size:11px}
  .fde-nav button{display:none}
  .fde-art{height:min(62svh,530px);object-position:50% 33%}
  .fde-art-frame:before{display:none}
  .fde-art-frame:after{background:linear-gradient(180deg,rgba(5,25,21,.22),rgba(5,27,23,.02) 17%,rgba(5,27,23,.9) 52%,#102f28 70%)}
  .fde-art-caption{right:20px;top:89px;font-size:9px}
  .fde-main{display:block;padding:clamp(260px,42svh,390px) 0 33px}
  .fde-story{display:flex;flex-direction:column;align-items:stretch}
  .fde-story h1{max-width:11ch;margin:15px 0 17px;font-size:clamp(43px,10.9vw,53px)}
  .fde-lede{max-width:46ch;font-size:13.5px}
  .fde-world-tools{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:14px;margin:21px 0 0;padding-top:17px}
  .fde-tool{min-height:33px;gap:8px}
  .fde-tool svg{flex:0 0 28px;width:28px;height:28px}
  .fde-tool span{font-size:11px}
  .fde-action-row{align-self:flex-start;margin-top:23px}
  .fde-footer{flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:9px}
  .fde-footer span{order:3;width:100%}
}
@media(max-width:360px){.fde-story h1{font-size:40px}.fde-dialog{padding:22px 20px}.fde-tool span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.fde-art,.fde-pulse,.fde-world-tools:after{animation:none}.fde-primary,.fde-primary span,.fde-submit,.fde-tool{transition:none}}
