
    :root {
      color-scheme: dark;
      --bg: #05050b;
      --surface: #090a12;
      --surface-2: #0d0d18;
      --line: rgba(170, 174, 255, .17);
      --text: #f7f7ff;
      --muted: #b4b5ca;
      --blue: #579bff;
      --cyan: #55e5f5;
      --violet: #a879ff;
      --pink: #ff63c8;
      --green: #54f4c4;
      --shell: 1240px;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; background: var(--bg); }
    body { margin: 0; min-width: 320px; padding-bottom: 92px; background: var(--bg); color: var(--text); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.55; }
    body::before { content: ""; position: fixed; z-index: -1; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 4% 18%, rgba(26, 69, 200, .15), transparent 35%), radial-gradient(ellipse at 95% 36%, rgba(122, 26, 183, .12), transparent 33%), #05050b; }
    a { color: inherit; }
    a:focus-visible { outline: 2px solid var(--cyan); outline-offset: 5px; border-radius: 4px; }
    .shell { width: min(var(--shell), calc(100% - 56px)); margin: auto; }
    .announce { position: relative; overflow: hidden; min-height: 37px; display: flex; align-items: center; justify-content: center; padding: 6px 18px; background: linear-gradient(100deg, #114bdf 0%, #08bfe2 46%, #5b40d6 100%); color: #fff; text-align: center; font-size: .82rem; font-weight: 650; letter-spacing: .01em; }
    .announce::after { content: ""; position: absolute; inset: 0 auto 0 -35%; width: 30%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent); transform: skewX(-25deg); animation: announce-glint 8s ease-in-out infinite; }
    @keyframes announce-glint { 0%, 68%, 100% { left: -35%; } 82% { left: 115%; } }
    .site-header { position: relative; z-index: 3; border-bottom: 1px solid rgba(195, 190, 255, .12); background: rgba(5,5,11,.82); backdrop-filter: blur(18px); }
    .header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
    .brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; font-size: 1.28rem; font-weight: 760; letter-spacing: -.055em; white-space: nowrap; }
    .brand > span:last-child span { color: var(--cyan); }
    .mark { display: flex; align-items: end; gap: 4px; height: 25px; }
    .mark i { display: block; width: 6px; border-radius: 8px; background: var(--blue); }
    .mark i:nth-child(1) { height: 6px; background: #1765ff; }
    .mark i:nth-child(2) { height: 13px; background: #40baff; }
    .mark i:nth-child(3) { height: 19px; background: #72e9f4; }
    .mark i:nth-child(4) { height: 25px; background: #cba5ff; }
    nav { display: flex; align-items: center; gap: 30px; }
    nav a { text-decoration: none; font-size: .9rem; font-weight: 570; color: #d0cee1; transition: color .2s ease; }
    nav a:hover { color: #fff; }
    nav .nav-cta { color: #fff; border: 1px solid rgba(110,209,255,.52); background: linear-gradient(110deg, rgba(30,102,255,.2), rgba(157,72,242,.2)); border-radius: 100px; padding: 10px 17px; box-shadow: 0 0 25px rgba(39,128,255,.12); }
    .hero { position: relative; isolation: isolate; overflow: hidden; padding: 84px 0 90px; }
    .hero::before,.hero::after { content: ""; position: absolute; z-index: -1; pointer-events: none; border-radius: 50%; filter: blur(5px); }
    .hero::before { width: 760px; height: 760px; right: -300px; top: -310px; background: radial-gradient(circle, rgba(44,91,255,.27), rgba(106,39,203,.15) 42%, transparent 70%); animation: drift 18s ease-in-out infinite alternate; }
    .hero::after { width: 660px; height: 400px; left: 22%; bottom: -300px; background: radial-gradient(ellipse, rgba(11,199,233,.21), rgba(64,86,255,.08) 45%, transparent 72%); animation: drift 21s ease-in-out infinite alternate-reverse; }
    @keyframes drift { from { transform: translate3d(-16px, 8px, 0) scale(.96); } to { transform: translate3d(22px, -20px, 0) scale(1.06); } }
    .hero-grid { display: grid; grid-template-columns: .93fr 1.07fr; align-items: center; gap: 48px; position: relative; }
    .eyebrow { display: flex; align-items: center; gap: 10px; color: #83dffa; font-size: .76rem; font-weight: 760; letter-spacing: .17em; text-transform: uppercase; margin: 0 0 22px; }
    .eyebrow::before { content: ""; width: 22px; height: 1px; background: linear-gradient(90deg, var(--blue), var(--cyan), var(--pink)); box-shadow: 0 0 12px var(--cyan); }
    h1,h2,h3,p { margin-top: 0; }
    h1 { max-width: 680px; font-size: clamp(3.5rem, 6.2vw, 6.35rem); line-height: .99; letter-spacing: -.078em; font-weight: 760; margin-bottom: 25px; }
    h1 em { font-style: normal; color: transparent; background: linear-gradient(100deg, #8bc4ff 4%, #66e8f2 37%, #b68bff 67%, #ff77cf 100%); background-clip: text; -webkit-background-clip: text; }
    .hero-copy { color: #c2c1d2; font-size: 1.1rem; max-width: 560px; line-height: 1.75; margin-bottom: 29px; }
    .button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 14px 22px; border: 1px solid rgba(157,225,255,.45); border-radius: 100px; background: linear-gradient(105deg, #1769f3 0%, #168ee9 47%, #7953e7 100%); color: #fff; text-decoration: none; font-weight: 720; font-size: .94rem; box-shadow: 0 0 28px rgba(41,119,255,.28), inset 0 1px 0 rgba(255,255,255,.25); transition: filter .2s ease, transform .2s ease, box-shadow .2s ease; }
    .button:hover { filter: brightness(1.12); transform: translateY(-2px); box-shadow: 0 0 38px rgba(66,137,255,.42); }
    .button svg { width: 17px; height: 17px; }
    .hero-note { margin: 15px 0 0; color: #9999b1; font-size: .83rem; }
    .visual { position: relative; min-height: 438px; display: flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid rgba(166,148,255,.31); border-radius: 30px; isolation: isolate; background: linear-gradient(140deg, rgba(7,8,18,.98) 20%, rgba(13,8,28,.92) 100%); box-shadow: 0 35px 110px rgba(0,0,0,.4), inset 0 0 65px rgba(75,69,192,.12); }
    .visual::before { content: ""; position: absolute; z-index: -1; inset: -20%; background: radial-gradient(ellipse at 22% 20%, rgba(21,90,255,.34), transparent 35%), radial-gradient(ellipse at 78% 33%, rgba(174,52,255,.28), transparent 38%), radial-gradient(ellipse at 55% 100%, rgba(27,202,231,.35), transparent 43%); filter: blur(18px); animation: glow-shift 16s ease-in-out infinite alternate; }
    .visual::after { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .24; background-image: linear-gradient(rgba(146,168,255,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(146,168,255,.13) 1px, transparent 1px); background-size: 36px 36px; mask-image: linear-gradient(to bottom, transparent, #000 35%, #000 75%, transparent); }
    @keyframes glow-shift { from { transform: rotate(-8deg) scale(.94); } to { transform: rotate(8deg) scale(1.08); } }
    .visual img { position: relative; z-index: 1; display: block; width: 112%; max-width: none; height: auto; filter: drop-shadow(0 15px 42px rgba(46,110,255,.2)); }
    .signal-card { position: absolute; z-index: 2; display: flex; align-items: center; gap: 10px; max-width: 200px; padding: 11px 14px; border: 1px solid rgba(202,195,255,.23); border-radius: 13px; background: rgba(9,9,20,.79); box-shadow: 0 12px 35px rgba(0,0,0,.28); backdrop-filter: blur(14px); color: #e9e8f6; font-size: .78rem; font-weight: 650; }
    .signal-card::before { content: ""; width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 13px currentColor; }
    .signal-card.one { top: 11%; left: 5%; color: var(--cyan); }
    .signal-card.two { right: 5%; top: 36%; color: var(--pink); }
    .signal-card.two::before { background: var(--pink); }
    .signal-card.three { left: 11%; bottom: 10%; color: var(--violet); }
    .signal-card.three::before { background: var(--violet); }
    .section-line { position: relative; border-top: 1px solid rgba(178,168,255,.16); }
    .section-line::before { content: ""; position: absolute; top: -1px; left: 8%; width: 44%; height: 1px; background: linear-gradient(90deg, transparent, #437fff, #bc71ff, transparent); opacity: .8; }
    .section-intro { max-width: 790px; }
    .section-intro h2 { font-size: clamp(2.5rem, 4.4vw, 4.25rem); line-height: 1.04; letter-spacing: -.07em; margin-bottom: 19px; }
    .section-intro p:last-child { color: var(--muted); font-size: 1.04rem; line-height: 1.75; }
    .services { padding: 104px 0 118px; }
    .service-grid { margin-top: 52px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
    .service { position: relative; min-height: 244px; padding: 34px 34px 36px; overflow: hidden; isolation: isolate; border: 1px solid rgba(161,151,245,.26); border-radius: 26px; background: #070710; box-shadow: inset 0 1px 0 rgba(255,255,255,.035); transition: transform .3s ease, border-color .3s ease; }
    .service:hover { transform: translateY(-4px); border-color: rgba(118,188,255,.6); }
    .service::before { content: ""; position: absolute; z-index: -1; width: 125%; height: 145%; left: -10%; bottom: -97%; background: radial-gradient(ellipse at 20% 50%, var(--glow-a), transparent 43%), radial-gradient(ellipse at 75% 45%, var(--glow-b), transparent 49%); filter: blur(10px); transition: transform .55s ease; }
    .service:hover::before { transform: translateY(-30%); }
    .service::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(145deg, rgba(9,9,19,.05), rgba(5,5,10,.38)); }
    .service:nth-child(1) { --glow-a: rgba(30,100,255,.82); --glow-b: rgba(21,209,240,.55); }
    .service:nth-child(2) { --glow-a: rgba(98,69,250,.78); --glow-b: rgba(220,69,255,.52); }
    .service:nth-child(3) { --glow-a: rgba(10,175,220,.72); --glow-b: rgba(73,103,255,.67); }
    .service:nth-child(4) { --glow-a: rgba(192,57,255,.69); --glow-b: rgba(42,114,244,.7); }
    .service .number { display: inline-flex; align-items: center; gap: 9px; color: #d4ccff; font-size: .76rem; font-weight: 760; letter-spacing: .14em; text-transform: uppercase; }
    .service .number::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: linear-gradient(135deg, var(--cyan), var(--pink)); box-shadow: 0 0 12px rgba(111,163,255,.8); }
    .service h3 { max-width: 420px; margin: 38px 0 11px; font-size: clamp(1.35rem, 2.3vw, 1.8rem); letter-spacing: -.045em; line-height: 1.2; }
    .service p { max-width: 480px; color: #c2c1d5; margin: 0; font-size: .96rem; line-height: 1.68; }
    .capabilities { padding: 104px 0 112px; background: radial-gradient(ellipse at 50% 45%, rgba(36,23,95,.18), transparent 56%), #07070e; }
    .capability-layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 9%; }
    .capability-copy h2 { font-size: clamp(2.55rem, 4.1vw, 4rem); line-height: 1.04; letter-spacing: -.07em; margin-bottom: 19px; }
    .capability-copy > p:last-child { color: var(--muted); line-height: 1.75; }
    .discipline-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 11px; }
    .discipline { min-height: 94px; display: flex; align-items: end; padding: 15px; border: 1px solid rgba(165,151,255,.22); border-radius: 15px; background: linear-gradient(145deg, rgba(14,16,31,.8), rgba(8,8,16,.96)); position: relative; overflow: hidden; font-size: .85rem; font-weight: 700; color: #eeedfb; }
    .discipline::before { content: ""; position: absolute; width: 95px; height: 95px; right: -40px; top: -54px; border-radius: 50%; background: var(--discipline-glow); filter: blur(22px); }
    .discipline:nth-child(4n+1) { --discipline-glow: rgba(33,116,255,.92); }
    .discipline:nth-child(4n+2) { --discipline-glow: rgba(25,207,231,.75); }
    .discipline:nth-child(4n+3) { --discipline-glow: rgba(162,91,255,.85); }
    .discipline:nth-child(4n) { --discipline-glow: rgba(239,81,204,.78); }
    .process { padding: 110px 0 118px; }
    .process-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 12%; }
    .process-list { border-top: 1px solid rgba(181,173,255,.22); }
    .step { display: grid; grid-template-columns: 58px 1fr; gap: 20px; padding: 27px 0; border-bottom: 1px solid rgba(181,173,255,.2); }
    .step strong { color: #89dfff; font-size: .84rem; letter-spacing: .08em; }
    .step h3 { font-size: 1.29rem; letter-spacing: -.035em; margin: 0 0 7px; }
    .step p { color: var(--muted); margin: 0; line-height: 1.7; }
    .care { padding: 40px 0 108px; }
    .care-panel { position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: 1fr .72fr; align-items: end; gap: 48px; border: 1px solid rgba(162,148,255,.35); border-radius: 30px; padding: clamp(34px, 6vw, 72px); background: #080811; box-shadow: inset 0 0 65px rgba(90,58,180,.11); }
    .care-panel::before { content: ""; position: absolute; z-index: -1; inset: -50%; background: radial-gradient(ellipse at 15% 30%, rgba(29,93,255,.38), transparent 35%), radial-gradient(ellipse at 70% 70%, rgba(166,51,246,.3), transparent 38%), radial-gradient(ellipse at 95% 20%, rgba(30,208,231,.22), transparent 30%); filter: blur(18px); }
    .care-panel h2 { max-width: 760px; margin-bottom: 0; font-size: clamp(2.55rem, 4.6vw, 4.75rem); line-height: 1.03; letter-spacing: -.07em; }
    .care-panel p:last-child { max-width: 450px; margin-bottom: 0; color: #d1cfe2; font-size: 1.03rem; line-height: 1.75; }
    .care-panel .eyebrow { color: var(--cyan); }
    footer { padding: 30px 0 39px; border-top: 1px solid rgba(178,168,255,.15); color: #9998af; font-size: .88rem; background: #05050b; }
    .footer-inner { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
    footer .footer-brand { color: #e7e6f3; font-weight: 720; }
    .sticky-cta { position: fixed; z-index: 10; inset: auto 0 0; min-height: 76px; display: flex; align-items: center; justify-content: center; border-top: 1px solid rgba(125,151,255,.24); background: rgba(5,5,11,.89); backdrop-filter: blur(20px); box-shadow: 0 -12px 42px rgba(0,0,0,.24); }
    .sticky-inner { width: min(var(--shell), calc(100% - 56px)); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .sticky-copy { display: flex; align-items: center; gap: 13px; color: #d7d5e7; font-size: .91rem; }
    .sticky-pill { padding: 5px 10px; border: 1px solid rgba(85,229,245,.43); border-radius: 99px; color: var(--cyan); font-size: .74rem; font-weight: 700; white-space: nowrap; }
    .sticky-inner .button { min-height: 46px; padding: 11px 20px; font-size: .88rem; white-space: nowrap; }
    @media(max-width:1000px) { .hero-grid { grid-template-columns: 1fr; gap: 40px; } .hero { padding-top: 74px; } .hero-copy { max-width: 700px; } .visual { min-height: 390px; } .capability-layout { grid-template-columns: 1fr; gap: 32px; } .process-layout { gap: 7%; } }
    @media(max-width:700px) {
      body { padding-bottom: 86px; }
      .shell { width: min(100% - 36px, 540px); }
      .announce { font-size: .72rem; min-height: 34px; }
      .header-inner { min-height: 70px; }
      nav { gap: 12px; }
      nav a:not(.nav-cta) { display: none; }
      nav .nav-cta { padding: 9px 13px; font-size: .81rem; }
      .brand { font-size: 1.14rem; }
      .hero { padding: 68px 0 76px; }
      h1 { max-width: 540px; font-size: clamp(3.3rem, 13vw, 4.9rem); }
      .hero-copy { font-size: 1rem; }
      .visual { min-height: 280px; border-radius: 22px; }
      .visual img { width: 126%; }
      .signal-card { max-width: 160px; padding: 9px 10px; font-size: .68rem; }
      .services,.capabilities,.process { padding: 78px 0; }
      .section-intro h2,.capability-copy h2 { font-size: clamp(2.4rem, 10vw, 3.25rem); }
      .service-grid { margin-top: 34px; grid-template-columns: 1fr; gap: 13px; }
      .service { min-height: 210px; padding: 27px 25px 29px; border-radius: 22px; }
      .service h3 { margin-top: 30px; }
      .discipline-grid { grid-template-columns: repeat(2, 1fr); }
      .discipline { min-height: 76px; }
      .process-layout,.care-panel { grid-template-columns: 1fr; gap: 30px; }
      .process-list { margin-top: 5px; }
      .step { grid-template-columns: 38px 1fr; gap: 14px; padding: 23px 0; }
      .care { padding: 12px 0 76px; }
      .care-panel { border-radius: 23px; }
      .sticky-cta { min-height: 72px; }
      .sticky-inner { width: calc(100% - 28px); gap: 12px; }
      .sticky-copy { gap: 8px; font-size: .77rem; }
      .sticky-pill { display: none; }
      .sticky-inner .button { min-height: 44px; padding: 10px 14px; font-size: .78rem; }
    }
    @media(prefers-reduced-motion:reduce) {
      *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
      .button:hover,.service:hover { transform: none; }
    }
  

[hidden]{display:none!important}
.page-main{width:min(1100px,calc(100% - 56px));max-width:1100px;margin:0 auto;padding:72px 0 90px}
.page-main h1{max-width:1000px;font-size:clamp(2.8rem,5.6vw,5rem);line-height:1.04;margin-bottom:24px}
.page-main h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.04em;margin:0 0 18px}
.page-main h3{font-size:1.22rem;line-height:1.3;letter-spacing:-.02em}
.page-main :is(h1,h2,h3,strong,dt){color:var(--text)!important}
.page-main :is(p,li,dd,td){color:var(--muted)}
.page-main a:not(.button):not(.btn-primary){color:#83dffa}
.page-lede{font-size:1.17rem;max-width:800px;line-height:1.8;margin-bottom:48px}
.editorial-section{padding:44px 0;border-top:1px solid var(--line)}
.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.editorial-card{padding:28px;background:var(--surface-2);border:1px solid var(--line);border-radius:22px}
.editorial-card p:last-child{margin-bottom:0}
.editorial-note{padding:24px 28px;border-left:3px solid var(--cyan);background:var(--surface);border-radius:0 16px 16px 0}
.editorial-table-wrap{overflow-x:auto}
.editorial-table{width:100%;border-collapse:collapse;font-size:.95rem}
.editorial-table th,.editorial-table td{text-align:left;vertical-align:top;padding:18px 14px;border-bottom:1px solid var(--line);min-width:150px}
.editorial-table th{color:var(--text)}
.editorial-step{display:grid;grid-template-columns:56px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}
.editorial-step>span{font-size:1.5rem;color:var(--cyan)}
.editorial-next{padding:36px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(125deg,#0c1830,#1a0f29)}
.editorial-next p{max-width:700px}
.skip-link,.skip{position:absolute;top:-100px;left:16px;z-index:10001;background:var(--text);color:var(--bg);padding:12px}
.skip-link:focus,.skip:focus{top:12px}
.free-check{padding:80px 0;background:var(--surface);scroll-margin-top:20px}
.free-check h2{font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.1;letter-spacing:-.05em}
.free-check .section-description{max-width:760px;color:var(--muted)}
.free-check-controls button{font:inherit}
.footer-links{padding-top:24px}
.footer-links nav{flex-wrap:wrap;gap:16px 24px}
.footer-links p{margin:20px 0 0}
.plan-card,.diy-price,.card{background:var(--surface-2)!important;border-color:var(--line)!important;color:var(--text);border-radius:22px!important}
.plan-card--recommended{background:#101c34!important;border-color:var(--cyan)!important;box-shadow:0 0 0 1px var(--cyan)}
.plan-card .plan-price{color:var(--cyan)!important}
.policy table,.policy td,.policy th{border-color:var(--line)!important}
.policy th{background:var(--surface-2)!important}
.diy-error{color:#ffb4b4!important}
.url-prefix{background:var(--surface-2)!important;color:var(--muted)!important}
.page-main .diy-intro{gap:32px}
.page-main .diy-intro h1{font-size:clamp(2.5rem,5vw,4rem)}
.page-main .callout{background:var(--surface-2);border-color:var(--line)}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;gap:16px;padding-top:16px;padding-bottom:16px}.header-inner nav{flex-wrap:wrap;gap:12px 18px}}
@media(max-width:700px){.page-main{width:calc(100% - 36px);padding:50px 0 60px}.editorial-grid{grid-template-columns:1fr}.editorial-card,.editorial-next{padding:24px}.editorial-step{gap:12px;grid-template-columns:36px 1fr}.footer-links nav a{display:inline-flex;align-items:center;min-height:44px}.free-check{padding:60px 0}.sticky-copy{max-width:45%}}

.registered-address{max-width:1240px;margin:24px auto 0;padding:0 28px;font-size:14px;color:var(--muted)}

/* Direct navigation to the existing pages; native details handles the mobile menu. */
.desktop-nav{gap:20px}
.desktop-nav a[aria-current="page"],.mobile-menu a[aria-current="page"]{color:var(--cyan);text-decoration:underline;text-underline-offset:6px}
.mobile-menu{display:none;position:relative}
.mobile-menu summary{display:flex;align-items:center;gap:12px;min-height:44px;padding:9px 14px;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--surface-2);font-weight:650}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.mobile-menu[open] summary{border-color:var(--cyan)}
.mobile-menu nav{position:absolute;right:0;top:calc(100% + 12px);z-index:20;display:flex;flex-direction:column;align-items:stretch;gap:3px;width:300px;max-width:calc(100vw - 36px);max-height:70vh;max-height:calc(100dvh - 130px);overflow-y:auto;padding:12px;background:#090a12;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #0009}
.mobile-menu nav a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:8px;color:var(--text);font-size:.94rem}
.mobile-menu nav a:hover{background:var(--surface-2)}
.menu-policy-links{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
@media(max-width:1100px){.header-inner .desktop-nav{display:none}.mobile-menu{display:block}.header-inner{flex-wrap:nowrap}}

.mobile-menu:not([open]) nav{display:none}

.service[href]{color:inherit;text-decoration:none}
.service[href]:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}
.setup-faq{border-bottom:1px solid var(--line);padding:18px 0}
.setup-faq summary{cursor:pointer;min-height:44px;font-weight:650;color:var(--text)}
.setup-faq p{margin:12px 0 0}
.plan-choice{margin:26px 0 34px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.plan-choice h2{font-size:1.5rem}

/* Homepage: reserve a separate row for the signals so they cannot cover the logo. */
.home-hero .hero-grid > .visual {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: auto 1fr;
  align-items: center;
  justify-items: center;
  gap: 20px 10px;
  padding: 24px 20px;
}
.home-hero .hero-grid > .visual > img { grid-column: 1 / -1; grid-row: 2; width: 100%; }
.home-hero .hero-grid > .visual > .signal-card {
  position: static;
  grid-row: 1;
  align-self: stretch;
  justify-content: center;
  width: 100%;
  min-width: 0;
  max-width: none;
  padding: 11px 8px;
  gap: 6px;
  font-size: .75rem;
  line-height: 1.4;
  text-align: center;
}
.home-hero .hero-grid > .visual > .one { grid-column: 1; }
.home-hero .hero-grid > .visual > .two { grid-column: 2; }
.home-hero .hero-grid > .visual > .three { grid-column: 3; }
.home-hero .announce {
  min-height: 52px;
  padding: 12px 20px;
  font-size: 1rem;
  font-weight: 750;
  line-height: 1.5;
  background: linear-gradient(100deg, #174fc4 0%, #006487 46%, #6338c5 100%);
}
.home-hero .announce::after { opacity: .45; }
.home-hero .hero .trial-inline {
  min-height: 64px;
  padding: 18px 28px;
  font-size: 1.12rem;
  background: linear-gradient(105deg, #1756ca 0%, #0067ac 47%, #7142d0 100%);
  box-shadow: 0 0 36px rgba(41,119,255,.4), inset 0 1px 0 rgba(255,255,255,.25);
}
@media (max-width: 700px) {
  .home-hero .hero-grid > .visual { gap: 16px 6px; padding: 18px 12px; }
  .home-hero .hero-grid > .visual > .signal-card { padding: 9px 4px; gap: 4px; font-size: .6875rem; }
  .home-hero .hero-grid > .visual > .signal-card::before { width: 6px; height: 6px; flex-basis: 6px; }
  .home-hero .hero .trial-inline { display: flex; width: 100%; font-size: 1.06rem; }
}

/* Give every gradient text fragment room for glyph ink beyond its advance width. */
.home-hero #hero-title em {
  padding-inline-end: .1em;
  margin-inline-end: -.1em;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
