.cf-reference .site-header .nav { height:auto; padding-block:18px; flex-wrap:wrap; }
.cf-reference .site-header .brand, .cf-reference .site-footer .brand { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.cf-reference .brand-mark { white-space:nowrap; overflow-wrap:normal; flex-shrink:0; width:1.85em; height:1.85em; }
.cf-reference .nav-links.open { top:100%; max-height:max(44px,calc(100dvh - var(--cf-header-height,94px) - 12px)); overflow-y:auto; overscroll-behavior:contain; }
.cf-reference .site-footer .brand { flex-wrap:wrap; }
.cf-reference .site-footer .footer-top > *, .cf-reference .site-footer .footer-links { min-width:0; }
.cf-reference .site-footer a { overflow-wrap:anywhere; max-width:100%; }
.cf-reference .site-footer .release-pill { max-width:100%; }
.cf-reference :is(h1,h2,h3,p,li) { overflow-wrap:break-word; }
.cf-reference .page-hero h1 { overflow-wrap:anywhere; }
.free-page { --free-green:#285f43; }
.free-page [hidden] { display:none !important; }
.free-page .eyebrow { font-size:11px; font-weight:600; letter-spacing:.12em; margin:0 0 17px; }
.free-page :is(h1,h2,h3) { text-wrap:balance; }
.free-page .container { width:min(1160px,calc(100% - 80px)); }
.free-page .free-small { font-size:13px; line-height:1.65; color:var(--muted); }
.free-hero { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr); gap:72px; align-items:center; padding-block:66px 60px; }
.free-hero h1 { font-size:clamp(44px,4.7vw,66px); line-height:1.08; letter-spacing:-.052em; margin:0 0 24px; overflow-wrap:anywhere; }
.free-hero h1 span { color:var(--free-green); }
.free-intro { font-size:18px; line-height:1.65; color:var(--muted); max-width:47ch; }
.free-hero .actions { margin:25px 0 14px; gap:12px; }
.free-hero .btn { font-size:15px; padding-inline:18px; gap:12px; }
.free-assurance { font-size:14px; font-weight:600; margin-bottom:12px; }
.free-requirements { font-size:12px; color:var(--muted); line-height:1.9; margin:0; }
.free-requirements a { text-decoration-thickness:1px; }
.free-hero-result { margin:0; background:white; border:1px solid #c6d6c4; border-radius:16px; overflow:hidden; box-shadow:0 18px 55px #173e2610; }
.free-image-heading { padding:18px 22px; background:#edf5e8; display:flex; flex-wrap:wrap; align-items:center; gap:10px; border-bottom:1px solid var(--line); font-size:12px; }
.free-badge { display:inline-block; background:#e5f0df; color:#28573a; font:600 10px/1.5 var(--mono); letter-spacing:.045em; padding:5px 7px; border-radius:4px; }
.free-image-link { display:block; background:white; }
.free-image-link:focus-visible { outline-offset:-4px; }
.free-image-link img { display:block; width:100%; height:auto; }
.free-hero-result .free-image-link { max-width:356px; margin:20px auto; }
.free-hero-result figcaption { padding:13px 20px; border-top:1px solid var(--line); font-size:11px; color:var(--muted); }
.free-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:32px; }
.free-heading > * { min-width:0; }
.free-heading h2, .free-next h2, .free-faq h2, .free-final h2 { font-size:clamp(30px,3.5vw,44px); line-height:1.13; letter-spacing:-.045em; margin:0; }
.free-heading > p { max-width:36ch; margin:0; font-size:15px; color:var(--muted); }
.free-example-section { background:#edf3e9; border-block:1px solid var(--line); padding-block:54px 26px; }
.free-example-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:22px; }
.free-example-nav a { display:flex; align-items:center; gap:12px; padding:16px 18px; min-height:58px; background:#f8faf7; border:1px solid #bdcfb7; border-radius:7px; text-decoration:none; font-size:15px; font-weight:600; }
.free-example-nav a:hover, .free-example-nav a[aria-selected="true"] { background:#173a2b; border-color:#173a2b; color:white; }
.free-example-nav a > span:last-child { margin-left:auto; }
.step-number { font:12px/1.5 var(--mono); color:#536b4e; }
.free-example-nav a:is(:hover,[aria-selected="true"]) .step-number { color:#d8edcb; }
.free-example-panel { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:44px; align-items:center; padding:25px 0 14px; }
.free-example-panel + .free-example-panel { border-top:1px solid #cbd9c4; margin-top:24px; }
.free-example-copy h3 { font-size:29px; line-height:1.15; margin:19px 0; }
.free-example-copy p { font-size:15px; color:var(--muted); }
.free-example-copy .free-small { font-size:13px; }
.free-shot { margin:0; border:1px solid #bdcfb7; background:white; border-radius:12px; overflow:hidden; min-width:0; }
.free-shot figcaption { border-top:1px solid var(--line); padding:12px 16px; font-size:11px; color:var(--muted); display:flex; flex-wrap:wrap; gap:7px 12px; justify-content:space-between; }
.free-project-values { margin:22px 0 0; font-size:13px; }
.free-project-values > div { display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; border-top:1px solid #c3d2bb; padding:10px 0; }
.free-project-values dt { color:var(--muted); }
.free-project-values dd { margin:0; font-weight:600; }
.free-example-note { font-size:12px; color:var(--muted); margin:24px 0 0; }
.free-example-note a { display:inline-block; margin-left:8px; }
.free-included { padding-block:65px; }
.free-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 50px; }
.free-tool-grid article { border-top:1px solid #bacdb5; padding-top:22px; }
.free-tool-number { font:11px/1.5 var(--mono); color:#42633e; }
.free-tool-grid h3 { font-size:23px; line-height:1.2; margin:14px 0; }
.free-tool-grid p { font-size:15px; color:var(--muted); margin:0; max-width:53ch; }
.free-field-list, .free-developer { border:1px solid #ccd9c7; border-radius:9px; margin-top:30px; padding:0 22px; background:white; }
.free-field-list summary, .free-developer summary { padding:18px 0; font-size:15px; font-weight:600; cursor:pointer; }
.free-summary-note { display:inline-block; font-size:12px; font-weight:400; color:var(--muted); margin-left:16px; }
.free-type-groups { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; border-top:1px solid var(--line); padding-top:24px; }
.free-type-groups h3 { font-size:17px; line-height:1.3; margin:0 0 15px; }
.free-type-groups ul { list-style:none; padding:0; margin:0 0 20px; font-size:14px; line-height:2; color:var(--muted); }
.free-developer { background:transparent; margin-top:12px; border-color:var(--line); }
.free-developer p { font-size:14px; color:var(--muted); max-width:90ch; }
.free-install-section { background:#15352a; color:#f7fbf3; padding-block:55px 32px; }
.free-install-section .eyebrow { color:#cee9c1; }
.free-install-section .free-heading > p { color:#c5d8cc; }
.free-install-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:0; gap:35px; margin:38px 0 30px; }
.free-install-steps li { border-top:1px solid #557563; padding-top:22px; }
.free-install-steps .step-number { color:#c7e6b8; }
.free-install-steps h3 { font-size:23px; line-height:1.2; margin:18px 0; }
.free-install-steps p { color:#d4e1d9; font-size:14px; }
.free-install-steps strong { color:#f7fbf3; font-weight:500; }
.free-install-steps a { font-size:14px; font-weight:600; color:#e4f9da; }
.free-install-steps .free-small { color:#c5d8cc; font-size:12px; }
.free-install-help { border-top:1px solid #557563; padding-top:20px; display:flex; gap:40px; justify-content:space-between; }
.free-install-help p { color:#c5d8cc; font-size:12px; max-width:74ch; margin-bottom:0; }
.free-install-help a { color:#e4f9da; }
.free-next { padding-block:65px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; }
.free-next-intro { font-size:16px; color:var(--muted); margin:23px 0 0; max-width:40ch; }
.free-next .actions { align-items:center; gap:20px; }
.free-next .btn { font-size:14px; }
.free-text-link { font-size:14px; font-weight:600; }
.free-next > div > .free-small { max-width:52ch; }
.free-next-list article { border-top:1px solid var(--line); padding-top:18px; }
.free-next-list h3 { font-size:23px; margin:0 0 12px; }
.free-next-list p { font-size:14px; color:var(--muted); }
.free-next-list > .free-small { font-size:12px; }
.free-faq { border-top:1px solid var(--line); padding-block:52px; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:70px; }
.free-faq > div > p:not(.eyebrow) { color:var(--muted); font-size:14px; margin:22px 0 0; }
.free-faq-items { border-top:1px solid var(--line); }
.free-faq-items details { padding:18px 0; }
.free-faq-items summary { font-size:15px; font-weight:600; line-height:1.5; }
.free-faq-items p { font-size:14px; color:var(--muted); margin:15px 0 0; }
.free-final { border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:40px; padding-block:44px 55px; }
.free-final > div { min-width:0; }
.free-final p:not(.eyebrow) { font-size:15px; color:var(--muted); margin:20px 0 0; max-width:47ch; }
.free-final-actions { display:flex; flex-direction:column; align-items:center; gap:12px; }
.free-final-actions .free-small { font-size:11px; text-align:center; }
.free-page .site-footer { margin-top:0; }
.free-image-viewer { border:1px solid #bdcdb7; border-radius:12px; background:var(--paper); color:var(--ink); padding:0; width:min(1500px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); }
.free-image-viewer::backdrop { background:#061b16d9; }
.free-viewer-top { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 20px; border-bottom:1px solid var(--line); position:sticky; top:0; background:var(--paper); }
.free-viewer-top p { margin:0; font-size:14px; min-width:0; }
.free-viewer-top button { flex-shrink:0; }
.free-viewer-image { overflow:auto; max-height:calc(100dvh - 180px); background:white; }
.free-viewer-image img { display:block; width:auto; max-width:none; height:auto; }
.free-viewer-hint { font-size:12px; padding:12px 20px; margin:0; color:var(--muted); }
@media(max-width:1050px) { .free-hero { gap:40px; } .free-hero h1 { font-size:52px; } .free-hero .btn { font-size:14px; } .free-next { gap:40px; } .free-example-panel { gap:30px; } }
@media(max-width:820px) { .free-page .container { width:calc(100% - 48px); } .free-hero { grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:28px; padding-block:45px; } .free-hero h1 { font-size:42px; } .free-intro { font-size:16px; } .free-hero .actions { gap:9px; } .free-hero .btn { padding-inline:12px; gap:8px; } .free-heading { gap:30px; } .free-heading > p { max-width:31ch; font-size:14px; } .free-example-nav a { font-size:13px; padding:13px 11px; gap:8px; } .free-example-panel { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:24px; } .free-example-copy h3 { font-size:25px; } .free-type-groups { grid-template-columns:repeat(2,minmax(0,1fr)); } .free-install-steps { gap:23px; } .free-install-steps h3 { font-size:21px; } .free-faq { grid-template-columns:minmax(0,1fr); gap:25px; } }
@media(max-width:650px) {
  .cf-reference .site-footer .footer-top { grid-template-columns:repeat(auto-fit,minmax(min(100%,9em),1fr)); }
  .cf-reference .site-footer .footer-links:last-child { grid-template-columns:repeat(auto-fit,minmax(min(100%,9em),1fr)); }
  .free-page .container { width:calc(100% - 32px); }
  .free-hero { grid-template-columns:minmax(0,1fr); padding-block:35px; gap:28px; }
  .free-hero h1 { font-size:clamp(36px,10.2vw,48px); margin-bottom:20px; }
  .free-page .eyebrow { font-size:10px; margin-bottom:14px; }
  .free-hero .actions { gap:10px; margin-top:22px; }
  .free-hero .actions .btn { flex:1; font-size:13px; padding:13px 10px; }
  .free-assurance { font-size:13px; }
  .free-requirements { font-size:11px; }
  .free-image-heading { padding:13px 16px; font-size:11px; }
  .free-hero-result .free-image-link { margin:10px auto; }
  .free-hero-result figcaption { font-size:10px; padding:11px 15px; }
  .free-heading { display:block; margin-bottom:25px; }
  .free-heading > p { margin-top:19px; max-width:none; }
  .free-example-section { padding-block:35px 23px; }
  .free-example-nav { gap:7px; }
  .free-example-nav a { padding:12px 9px; flex-direction:column; align-items:start; gap:7px; font-size:12px; }
  .free-example-nav a > span:last-child { display:none; }
  .free-example-nav .step-number { font-size:10px; }
  .free-example-panel { grid-template-columns:minmax(0,1fr); padding-top:5px; gap:16px; }
  .free-example-copy h3 { margin:15px 0; font-size:26px; }
  .free-example-copy p { margin-bottom:14px; }
  .free-shot figcaption { font-size:10px; padding:11px 13px; }
  .free-example-note { font-size:11px; margin-top:18px; }
  .free-example-note a { margin-left:0; margin-top:8px; }
  .free-project-values { margin-top:15px; }
  .free-included { padding-block:40px; }
  .free-tool-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .free-tool-grid h3 { font-size:22px; }
  .free-tool-grid p { font-size:14px; }
  .free-field-list, .free-developer { padding-inline:16px; }
  .free-summary-note { display:block; margin-left:0; margin-top:6px; }
  .free-type-groups { gap:15px; }
  .free-type-groups h3 { font-size:16px; }
  .free-type-groups ul { font-size:13px; }
  .free-install-section { padding-block:38px 27px; }
  .free-install-steps { grid-template-columns:minmax(0,1fr); gap:25px; margin-top:25px; }
  .free-install-steps li { padding-top:18px; }
  .free-install-steps h3 { font-size:23px; margin:12px 0; }
  .free-install-help { flex-direction:column; gap:16px; }
  .free-next { grid-template-columns:minmax(0,1fr); gap:28px; padding-block:42px; }
  .free-next-intro { font-size:15px; max-width:none; }
  .free-next .actions { margin:22px 0 15px; }
  .free-next .free-small { font-size:12px; }
  .free-faq { padding-block:38px; }
  .free-final { flex-direction:column; align-items:start; padding-block:35px 40px; gap:23px; }
  .free-final-actions { width:100%; align-items:stretch; }
  .free-viewer-top { gap:10px; padding:12px; align-items:start; }
  .free-viewer-top p { font-size:12px; }
  .free-viewer-top button { min-height:44px; padding:9px; font-size:12px; }
  .free-viewer-hint { font-size:11px; padding:11px 13px; }
}
@media(max-width:360px) { .free-hero .actions .btn { flex-basis:100%; } .free-type-groups { grid-template-columns:minmax(0,1fr); } }
@media(prefers-reduced-motion:reduce) { html:has(.free-page) { scroll-behavior:auto; } }
