/*
Theme Name: Eclipse Web Solutions
Author: Eclipse Web Solutions
Description: Native editable WordPress block theme with animated eclipse artwork.
Version: 2.3.2
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: eclipse-web-solutions
*/
:root{--violet:#c63cff;--blue:#14a8ff;--black:#020204;--muted:#babac4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#fff;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}
.topbar{position:relative;z-index:20;min-height:104px;padding:24px clamp(20px,3.1vw,44px);background:#000}.topbar .wp-block-navigation__container{gap:clamp(18px,3vw,36px)}.topbar .wp-block-navigation a{font-size:.78rem}.brand-link{display:block}.exact-header-logo{display:block;width:285px;max-width:42vw;height:72px;background:url('assets/images/eclipse-header-logo.png') center/contain no-repeat}
.eclipse-editor-page,.eclipse-editor-page>.wp-block-group{margin-block-start:0}.hero{position:relative;overflow:hidden;min-height:970px;padding:0 20px 34px!important;background:radial-gradient(circle at 50% 32%,#11051b 0,transparent 28%),#010103;display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start!important}.stars,.stars:before,.stars:after{position:absolute;inset:0;content:"";pointer-events:none}.stars{z-index:0;background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(220,235,255,.68) 0 .8px,transparent 1.7px);background-size:255px 218px,386px 334px;background-position:9px 17px,61px 42px;filter:drop-shadow(0 0 2px rgba(255,255,255,.65));opacity:.58}.stars:before{background-image:radial-gradient(circle,rgba(255,255,255,.96) 0 1.5px,transparent 3px),radial-gradient(circle,rgba(210,230,255,.82) 0 1px,transparent 2.5px);background-size:562px 446px,298px 394px;background-position:80px 31px,21px 92px;animation:twinkleBright 5.8s ease-in-out infinite alternate}.stars:after{background:radial-gradient(circle at 14% 28%,rgba(255,255,255,.95) 0 1px,transparent 4px),radial-gradient(circle at 76% 63%,rgba(255,255,255,.85) 0 1px,transparent 4px),radial-gradient(circle at 45% 82%,rgba(255,255,255,.75) 0 1px,transparent 4px);animation:oddTwinkle 7.4s ease-in-out infinite}
.eclipse-wrap{position:relative;flex:0 0 auto;width:660px;max-width:none;height:570px;margin-top:0;transform-origin:top center}.spark-canvas{position:absolute;inset:0;width:660px;height:570px;z-index:2;pointer-events:none;filter:contrast(1.25) saturate(1.25)}.eclipse{position:absolute;left:87px;top:45px;width:455px;height:455px;border-radius:50%;background:#000;box-shadow:-14px -6px 11px #c63cff,12px 8px 13px #116dff,0 0 24px #882cff,inset 0 0 35px #05000a}.eclipse:before{content:"";position:absolute;inset:-3px;border-radius:50%;border:3px solid transparent;border-top-color:#eea4ff;border-left-color:#c238ff;border-right-color:#168fff;border-bottom-color:#5143ff;filter:drop-shadow(0 0 9px #c539ff) drop-shadow(4px 5px 10px #086fff)}.flare{position:absolute;width:15px;height:15px;border-radius:50%;right:31px;top:84px;background:#fff;box-shadow:0 0 8px 4px #fff,0 0 22px 13px #cf39ff,0 0 50px 28px #7b16b8;animation:flare 2.5s ease-in-out infinite}.exact-ew-logo{position:absolute;left:50%;top:50%;width:330px;height:170px;transform:translate(-50%,-50%);background:url('assets/images/eclipse-ew-logo.png') center/contain no-repeat;z-index:3}
.hero-copy{position:relative;z-index:4;width:min(719px,92vw);margin-top:-26px!important;gap:0!important}.editor-wordmark,.editor-solutions{margin-left:auto!important;margin-right:auto!important}.editor-wordmark{width:100%!important;max-width:719px!important;margin-top:0!important;margin-bottom:0!important}.editor-solutions{width:100%!important;max-width:719px!important;margin-top:18px!important;margin-bottom:0!important}.editor-wordmark img,.editor-solutions img{display:block;width:100%;height:auto}.trinity{width:min(530px,100%)!important;margin:34px auto 32px!important;font-size:1rem;letter-spacing:.42em;white-space:nowrap}.trinity em{font-style:normal;margin:0 16px}.editor-cta-row{margin:0!important}.editor-cta-row .cta{position:relative;isolation:isolate;overflow:hidden;width:min(414px,85vw);padding:0;border:1px solid transparent;border-radius:999px;background:linear-gradient(#020204,#020204) padding-box,linear-gradient(90deg,var(--violet),var(--blue)) border-box!important;box-shadow:0 0 12px #8d2cff44}.editor-cta-row .cta:after{content:"";position:absolute;z-index:2;top:-45%;bottom:-45%;left:-38%;width:24%;pointer-events:none;transform:skewX(-24deg) translateX(-420%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),rgba(101,192,255,.78),transparent);filter:blur(1px);animation:ctaFlash 3.2s ease-in-out infinite}.editor-cta-row .cta .wp-block-button__link{position:relative;z-index:1;display:grid;place-items:center;min-height:56px;padding:0 24px;background:transparent;color:#fff;font-size:.95rem;letter-spacing:.09em}.down{margin:32px 0 0!important;font-size:2rem;line-height:1;color:#cc39ff;text-shadow:0 0 12px #b92cff;animation:bounce 2s infinite}
.services{position:relative;overflow:hidden;min-height:590px;margin:0!important;padding:52px 5% 90px!important;background:#020204;text-align:center}.section-head{position:relative;z-index:2}.section-head>p:first-child{margin:0}.section-head>p:first-child span{color:var(--violet);letter-spacing:.18em;font-size:.8rem}.section-head h1{font-size:2.35rem;line-height:1.12;font-weight:350;margin:13px 0 24px}.section-head h1 strong{font-weight:350;background:linear-gradient(90deg,var(--violet),var(--blue));color:transparent;background-clip:text}.section-head>p:last-child{color:var(--muted);line-height:1.6;font-size:.95rem;margin:0}.cards{position:relative;z-index:2;max-width:800px;margin:34px auto 0!important;gap:26px!important}.card{position:relative;background:linear-gradient(145deg,#0e0f13,#050609);border:1px solid #292a30;border-radius:13px;padding:27px 20px 24px;min-height:245px;box-shadow:0 20px 30px #000;transition:.3s}.card:after{content:"";position:absolute;left:20%;right:20%;bottom:-2px;height:2px;background:linear-gradient(90deg,transparent,var(--violet),var(--blue),transparent);filter:drop-shadow(0 0 7px #7a2cff)}.card:hover{transform:translateY(-8px);border-color:#64358a}.card .icon{height:82px;margin:0!important;display:grid;place-items:center;font-family:monospace;font-size:3.4rem;color:#ae3cff;text-shadow:0 0 15px #5622ff}.card h2{font-size:1rem;margin:9px}.card p:last-child{font-size:.79rem;line-height:1.7;color:#c1c1c8}.wave{position:absolute;top:-20px;width:35%;height:150px;background-image:radial-gradient(#a52cff 1px,transparent 1.5px);background-size:9px 9px;mask-image:linear-gradient(to bottom,#000,transparent);opacity:.55;animation:wave 5s ease-in-out infinite}.wave.left{left:-8%;transform:skewY(8deg)}.wave.right{right:-8%;background-image:radial-gradient(#1489ff 1px,transparent 1.5px);transform:skewY(-8deg)}.anchor-section{min-height:35vh;display:grid;place-items:center;border-top:1px solid #111}.contact{text-align:center;padding:110px 20px 130px;border-top:1px solid #15151b}
@keyframes flare{50%{transform:scale(1.4);opacity:.8}}@keyframes twinkleBright{from{opacity:.12}to{opacity:.72}}@keyframes oddTwinkle{0%,18%,46%,72%,100%{opacity:.12}9%,34%,61%,86%{opacity:.9}}@keyframes bounce{50%{transform:translateY(8px)}}@keyframes wave{50%{translate:0 8px}}@keyframes ctaFlash{0%,68%{transform:skewX(-24deg) translateX(-420%);opacity:0}72%{opacity:1}88%{transform:skewX(-24deg) translateX(690%);opacity:.9}89%,100%{transform:skewX(-24deg) translateX(690%);opacity:0}}
@media(max-width:820px){.topbar .wp-block-navigation{display:none}.topbar{min-height:82px}.exact-header-logo{width:242px;height:61px}.hero{min-height:860px}.eclipse-wrap{transform:scale(.78);margin-bottom:-125px}.hero-copy{margin-top:0!important}.cards{max-width:600px}.trinity{font-size:.8rem;letter-spacing:.3em}.trinity em{margin:0 8px}}
@media(max-width:520px){.topbar{min-height:72px;padding:12px 18px}.exact-header-logo{width:205px;height:52px}.hero{min-height:700px;padding-bottom:28px!important}.eclipse-wrap{transform:scale(.58);margin-bottom:-235px}.hero-copy{width:94vw;margin-top:0!important}.editor-solutions{margin-top:10px!important}.trinity{width:82vw!important;margin:22px auto 22px!important;font-size:.62rem;letter-spacing:.2em}.trinity em{margin:0 4px}.editor-cta-row .cta{width:72vw}.editor-cta-row .cta .wp-block-button__link{min-height:44px;font-size:.7rem;padding:0 12px}.down{margin-top:22px!important;font-size:1.7rem}.services{padding:42px 5% 70px!important}.section-head h1{font-size:1.9rem}.section-head>p:last-child br{display:none}.cards{display:flex!important;flex-direction:column;max-width:360px}.card{min-height:230px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
.editor-styles-wrapper{background:#020204;color:#fff}.editor-styles-wrapper .hero{min-height:900px}.editor-styles-wrapper .eclipse-wrap{pointer-events:none}.editor-styles-wrapper .wp-block-navigation{color:#fff}

/* Final sparse sky and flowing service waves. Hide stale saved shooting-star markup too. */
.shooting-star,.shooting-star:before,.shooting-star:after{display:none!important;visibility:hidden!important;animation:none!important}
.stars{background-image:radial-gradient(circle,rgba(255,255,255,.86) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(220,235,255,.6) 0 .8px,transparent 1.7px);background-size:360px 308px,546px 472px;background-position:18px 34px,122px 84px;opacity:.5;filter:drop-shadow(0 0 1.5px rgba(255,255,255,.55))}
.stars:before{background-image:radial-gradient(circle,rgba(255,255,255,.94) 0 1.4px,transparent 3px);background-size:794px 630px;background-position:160px 62px;animation:rareTwinkleOne 8.7s ease-in-out infinite}
.stars:after{background:radial-gradient(circle at 14% 28%,rgba(255,255,255,.95) 0 1px,transparent 4px),radial-gradient(circle at 76% 63%,rgba(255,255,255,.82) 0 1px,transparent 4px);animation:rareTwinkleTwo 11.3s ease-in-out 2.1s infinite}
.services{margin-top:-24px!important;padding-top:42px!important}
.wave{top:-46px;width:48%;height:210px;border-radius:50% 50% 42% 58%/68% 62% 38% 32%;background-size:10px 10px;mask-image:radial-gradient(ellipse 78% 52% at 50% 48%,#000 15%,rgba(0,0,0,.92) 46%,transparent 75%);transform-origin:center;opacity:.62}
.wave.left{left:-15%;transform:rotate(7deg) skewY(4deg);animation:waveLeft 6.8s ease-in-out infinite}
.wave.right{right:-15%;transform:rotate(-7deg) skewY(-4deg);animation:waveRight 7.6s ease-in-out infinite}
@keyframes rareTwinkleOne{0%,30%,48%,76%,100%{opacity:.08}38%{opacity:.7}84%{opacity:.42}}
@keyframes rareTwinkleTwo{0%,24%,54%,79%,100%{opacity:.08}33%{opacity:.8}66%{opacity:.48}88%{opacity:.72}}
@keyframes waveLeft{0%,100%{translate:0 0;rotate:-1deg;scale:1 .9}50%{translate:12px 14px;rotate:3deg;scale:1.08 1.04}}
@keyframes waveRight{0%,100%{translate:0 0;rotate:1deg;scale:1 .92}50%{translate:-12px 16px;rotate:-3deg;scale:1.08 1.05}}
@media(max-width:520px){.services{margin-top:-16px!important;padding-top:34px!important}.wave{top:-28px;height:130px;width:62%}}

/* Click-to-flip About Eclipse panel. */
.about-flip{width:min(860px,90vw);height:330px;min-height:0;margin:70px auto!important;padding:0!important;border:0;perspective:1400px;cursor:pointer;outline:none}.about-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.72,.25,1)}.about-flip.is-flipped .about-flip-inner{transform:rotateY(180deg)}.about-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:46px clamp(24px,6vw,76px)!important;border:1px solid #292a36;border-radius:24px;overflow:hidden;backface-visibility:hidden;background:radial-gradient(circle at 50% 20%,rgba(126,42,255,.2),transparent 48%),linear-gradient(145deg,#0d0e14,#040509);box-shadow:0 24px 60px rgba(0,0,0,.55),inset 0 0 36px rgba(130,50,255,.07)}.about-face:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(120deg,var(--violet),transparent 42%,var(--blue));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none}.about-face h2{position:relative;margin:0 0 18px;font-size:clamp(1.8rem,4vw,3rem);font-weight:350}.about-face p{position:relative;max-width:650px;margin:0;color:#c9c9d2;font-size:1rem;line-height:1.7}.about-front h2{background:linear-gradient(90deg,#fff 12%,#d958ff 56%,#22aaff);color:transparent;background-clip:text}.about-back{transform:rotateY(180deg)}.about-back h2{color:#fff}.about-back .flip-hint{margin-top:22px;color:#b74bff;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase}.about-flip:hover .about-flip-inner{filter:drop-shadow(0 0 16px rgba(121,50,255,.28))}.about-flip:focus-visible{outline:2px solid var(--blue);outline-offset:6px;border-radius:24px}
.editor-styles-wrapper .about-flip{height:auto;cursor:default}.editor-styles-wrapper .about-flip-inner{height:auto;display:grid;gap:20px;transform:none!important}.editor-styles-wrapper .about-face{position:relative;min-height:260px;transform:none}.editor-styles-wrapper .about-back{transform:none}
@media(max-width:520px){.about-flip{height:300px;margin:45px auto!important}.about-face{padding:32px 22px!important}.about-face h2{font-size:1.65rem}.about-face p{font-size:.88rem}}
.portfolio-front{background:radial-gradient(circle at 50% 18%,rgba(20,168,255,.2),transparent 48%),linear-gradient(145deg,#0d0e14,#040509)}.portfolio-back{background:radial-gradient(circle at 50% 18%,rgba(198,60,255,.2),transparent 48%),linear-gradient(145deg,#0d0e14,#040509)}.portfolio-front h2{background:linear-gradient(90deg,#fff 12%,#7f7cff 54%,#22aaff);color:transparent;background-clip:text}

/* Prevent mirrored face content from bleeding through during a flip. */
.about-flip-inner{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform}
.about-face{-webkit-backface-visibility:hidden!important;backface-visibility:hidden!important;transform-style:preserve-3d;will-change:transform,opacity;transition:opacity .12s linear .34s}
.about-front{transform:rotateY(0deg) translateZ(1px);opacity:1}
.about-back{transform:rotateY(180deg) translateZ(1px);opacity:0}
.about-flip.is-flipped .about-front{opacity:0}
.about-flip.is-flipped .about-back{opacity:1}
.about-face>*{-webkit-backface-visibility:hidden;backface-visibility:hidden}
.editor-styles-wrapper .about-front,.editor-styles-wrapper .about-back{transform:none;opacity:1;transition:none}

/* Face visibility follows click state only; hover never changes the shown side. */
.about-flip:hover .about-flip-inner{filter:none!important}
.about-flip:hover .about-face{box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 24px rgba(125,55,255,.25),inset 0 0 36px rgba(130,50,255,.07)}
.about-flip .about-front{opacity:1!important;visibility:visible!important;pointer-events:auto}
.about-flip .about-back{opacity:0!important;visibility:hidden!important;pointer-events:none}
.about-flip.is-flipped .about-front{opacity:0!important;visibility:hidden!important;pointer-events:none}
.about-flip.is-flipped .about-back{opacity:1!important;visibility:visible!important;pointer-events:auto}
.editor-styles-wrapper .about-front,.editor-styles-wrapper .about-back{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.about-flip{touch-action:manipulation}

/* Responsive stage: anchor the fixed 660px artwork by its true center before scaling. */
@media(max-width:820px){
  .eclipse-wrap{align-self:flex-start;left:50%;margin-left:-330px;transform:scale(.78);margin-bottom:-125px}
  .hero-copy{max-width:94vw}
  .cards{width:min(600px,92vw)}
}
@media(max-width:700px){
  .eclipse-wrap{transform:scale(.70);margin-bottom:-170px}
  .cards{display:flex!important;flex-direction:column;max-width:380px}
  .card{width:100%;min-height:230px}
  .about-face p,.section-head p{overflow-wrap:anywhere}
}
@media(max-width:520px){
  .hero{padding-left:14px!important;padding-right:14px!important}
  .eclipse-wrap{transform:scale(.58);margin-bottom:-235px}
  .hero-copy{width:calc(100vw - 28px);max-width:none}
  .editor-wordmark,.editor-solutions{max-width:100%!important}
  .trinity{max-width:100%;white-space:normal;line-height:1.8}
  .about-flip{width:calc(100vw - 28px);height:310px}
}
@media(max-width:390px){
  .eclipse-wrap{transform:scale(.52);margin-bottom:-275px}
  .editor-cta-row .cta{width:82vw}
  .about-flip{height:325px}
}
@media(max-width:350px){
  .eclipse-wrap{transform:scale(.46);margin-bottom:-310px}
  .trinity{font-size:.56rem;letter-spacing:.15em}
  .about-face{padding:26px 18px!important}
}
@media(min-width:521px) and (max-width:820px) and (orientation:landscape){
  .eclipse-wrap{transform:scale(.68);margin-bottom:-180px}
}

/* A viewport-sized stage prevents the fixed artwork from widening or offsetting the flex layout. */
.eclipse-stage{position:relative;z-index:1;flex:0 0 auto;width:100%;height:570px;overflow:visible}
.eclipse-stage>.eclipse-wrap{position:absolute;top:0;left:50%;width:660px;max-width:none;margin:0 0 0 -330px!important;align-self:auto;transform:scale(1);transform-origin:top center}
@media(max-width:820px){.eclipse-stage{height:445px}.eclipse-stage>.eclipse-wrap{transform:scale(.78);margin-left:-330px!important;margin-bottom:0!important}}
@media(max-width:700px){.eclipse-stage{height:399px}.eclipse-stage>.eclipse-wrap{transform:scale(.70);margin-bottom:0!important}}
@media(max-width:520px){.eclipse-stage{height:331px}.eclipse-stage>.eclipse-wrap{transform:scale(.58);margin-bottom:0!important}}
@media(max-width:390px){.eclipse-stage{height:296px}.eclipse-stage>.eclipse-wrap{transform:scale(.52);margin-bottom:0!important}}
@media(max-width:350px){.eclipse-stage{height:262px}.eclipse-stage>.eclipse-wrap{transform:scale(.46);margin-bottom:0!important}}
@media(min-width:521px) and (max-width:820px) and (orientation:landscape){.eclipse-stage{height:388px}.eclipse-stage>.eclipse-wrap{transform:scale(.68);margin-bottom:0!important}}

/*
 * Responsive layout authority (2.3.0)
 *
 * The artwork is intentionally drawn on a fixed 660 x 570 canvas. On narrow
 * screens, size the stage from one fluid scale value and centre that canvas
 * inside it. This replaces the older accumulated pixel offsets above and also
 * supports a previously saved front-page template until particles.js adds the
 * stage wrapper.
 */
@media (max-width: 820px) {
  html,
  body,
  .wp-site-blocks,
  .eclipse-editor-page {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  .topbar {
    width: 100%;
    min-height: 72px;
    padding: 12px 18px;
  }

  .brand-link,
  .exact-header-logo {
    max-width: calc(100vw - 36px);
  }

  .hero {
    --eclipse-mobile-width: min(514.8px, calc(100vw - 20px));
    --eclipse-mobile-height: min(444.6px, calc(86.3636vw - 17.27px));
    box-sizing: border-box;
    width: 100%;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 14px 30px !important;
    overflow: hidden;
    justify-content: flex-start !important;
  }

  .hero > * {
    margin-block-start: 0 !important;
  }

  .eclipse-stage {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    height: var(--eclipse-mobile-height);
    margin: 0 !important;
    overflow: visible;
  }

  .eclipse-stage > .eclipse-wrap {
    position: relative;
    top: auto;
    left: auto;
    width: var(--eclipse-mobile-width);
    height: var(--eclipse-mobile-height);
    margin: 0 auto !important;
    transform: none !important;
  }

  /* Compatibility with an older template cached in WordPress. */
  .hero > .eclipse-wrap {
    position: relative;
    left: auto;
    flex: 0 0 var(--eclipse-mobile-height);
    width: var(--eclipse-mobile-width);
    height: var(--eclipse-mobile-height);
    margin: 0 auto !important;
    transform: none !important;
    align-self: center;
  }

  .eclipse-wrap .spark-canvas {
    width: 100%;
    height: 100%;
    filter: saturate(1.15);
  }

  .eclipse-wrap .eclipse {
    left: 13.1818%;
    top: 7.8947%;
    width: 68.9394%;
    height: auto;
    aspect-ratio: 1;
  }

  .eclipse-wrap .exact-ew-logo {
    width: 72.5275%;
    height: 37.3626%;
  }

  /* Keep the rim flare proportional to the fluid eclipse on small screens. */
  .eclipse-wrap .flare {
    z-index: 4;
    width: 2.4%;
    height: auto;
    aspect-ratio: 1;
    right: 1.5%;
    top: 18%;
    background: #fff;
    border: 0;
    box-shadow: 0 0 3px 1px #fff, 0 0 9px 5px #cf39ff, 0 0 22px 11px #7b16b8;
    overflow: visible;
  }

  .eclipse-wrap .flare::before,
  .eclipse-wrap .flare::after {
    content: none !important;
    display: none !important;
  }

  .hero-copy {
    position: relative;
    z-index: 4;
    flex: 0 0 auto;
    width: min(719px, calc(100vw - 28px));
    max-width: calc(100vw - 28px);
    margin: 0 auto !important;
  }

  .editor-wordmark,
  .editor-solutions {
    width: 100% !important;
    max-width: 100% !important;
  }

  .trinity {
    width: 100% !important;
    max-width: 100%;
    white-space: normal;
    line-height: 1.8;
  }

  .services,
  .about-flip,
  .contact {
    width: 100%;
    max-width: 100%;
  }

  /* Avoid expensive full-layer filters while a mobile browser is scrolling. */
  .stars {
    filter: none;
  }
}

/* Performance: avoid filtering two large animated layers during page scroll. */
.spark-canvas {
  filter: saturate(1.15);
}

.stars {
  filter: none;
}

.wave,
.flare,
.editor-cta-row .cta::after {
  will-change: transform, opacity;
}

@media (max-width: 520px) {
  .hero {
    --eclipse-mobile-width: min(409.2px, calc(100vw - 12px));
    --eclipse-mobile-height: min(353.4px, calc(86.3636vw - 10.36px));
  }

  .hero-copy {
    width: calc(100vw - 28px);
  }

  .trinity {
    margin: 20px auto !important;
    font-size: clamp(.56rem, 2.4vw, .68rem);
    letter-spacing: .18em;
  }

  .editor-cta-row .cta {
    width: min(82vw, 330px);
  }

  .about-flip {
    width: calc(100vw - 28px);
  }
}
