.studio-grid{display:grid;grid-template-columns:280px minmax(0,1fr) 250px;border:1px solid var(--line);background:var(--white)}.tool-controls,.tool-output{padding:24px;min-width:0}.tool-controls{border-right:1px solid var(--line)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font:23px var(--serif);margin-bottom:20px}.tool-controls label:not(.check){margin-bottom:14px}.tool-controls .fields{margin:0}.tool-controls .help{font-size:11px}.studio-preview{background:#edf0e6;padding:24px;min-width:0}.preview-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px}.preview-heading h2{font-size:19px}.preview-heading span{font-size:10px;color:var(--muted)}.scene-preview{min-height:280px;display:flex;justify-content:center;align-items:center;background-image:radial-gradient(#c7d0be .7px,transparent .7px);background-size:13px 13px;padding:16px}.scene-preview svg,.scene-preview canvas,.scene-preview img{display:block;max-width:100%;max-height:520px;object-fit:contain;width:auto;height:auto;box-shadow:0 5px 20px #20302220}.tool-output{border-left:1px solid var(--line)}.tool-output button{display:block;width:100%;margin-top:10px}.tool-output dl{margin:0 0 24px}.tool-output dl div{padding:12px 0;border-bottom:1px solid var(--line)}dt{font-size:10px;color:var(--muted)}dd{margin:4px 0 0;font-size:15px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.tool-nav{gap:6px;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--line)}.tool-nav a{padding:8px 12px;border-radius:3px;font-size:11px}.tool-nav [aria-current]{background:var(--green);color:white}.tool-hero{padding:36px 0}.tool-hero h1{font-size:clamp(34px,3.4vw,50px)}.tool-hero>p:last-child{color:var(--muted);max-width:700px}.method{padding:44px 0;max-width:850px}.method p{line-height:1.85;color:var(--muted)}.method h2{margin:0 0 15px}.notice{font-size:12px;overflow-wrap:anywhere}progress{width:100%;margin-top:18px;accent-color:var(--green)}#page-nav{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:16px;font-size:11px}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:25px}.hero-actions a{text-decoration:none}.benefits{display:flex;gap:30px;border-block:1px solid var(--line);padding:18px 0;color:var(--muted);font-size:11px}.directory{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:50px 0}.directory h2{font-size:40px}.directory-intro p:last-child{color:var(--muted);max-width:260px}.tool-link{display:flex;align-items:center;gap:22px;text-decoration:none;padding:25px 12px;border-bottom:1px solid var(--line)}.tool-link:first-child{border-top:1px solid var(--line)}.tool-link:hover{background:#e9eddf}.tool-link h3{font:25px var(--serif);margin:0 0 8px}.tool-link p{margin:0;color:var(--muted);font-size:12px}.tool-number{font:11px monospace;align-self:flex-start;padding-top:6px}.tool-link>span:last-child{margin-left:auto;font-size:25px}.review-row{border-top:1px solid #c9d2be;padding:18px 0;display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px}.review-row img{max-width:80px;max-height:110px}.review-row p{margin:0;font-size:11px;overflow-wrap:anywhere}.review-row .check{margin:8px 0}.review-row select{height:36px}#crop-stage{position:relative;max-width:100%;width:fit-content;margin:0 auto 24px;touch-action:none;line-height:0}#crop-source{display:block;max-width:100%;max-height:340px;width:auto;height:auto}#crop-box{position:absolute;border:2px solid white;box-shadow:0 0 0 1px #294f42,inset 0 0 0 1px #294f42;cursor:move;touch-action:none}#crop-handle{position:absolute;right:-7px;bottom:-7px;width:20px;height:20px;background:var(--green);border:2px solid white;cursor:nwse-resize;touch-action:none}.studio input,.studio select{font-size:14px}.studio .check{min-height:30px}.studio #copy-text{width:100%;height:180px}.print-leaf{break-after:page}.print-leaf:last-child{break-after:auto}@media(max-width:1100px){.studio-grid{grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr)}.tool-output{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12px 30px}.tool-output dl{grid-row:2/9}.tool-output>.eyebrow{grid-column:1/-1}.tool-output button{margin:0}.tool-output .help{grid-column:1/-1}}@media(max-width:700px){.studio-grid{display:block}.tool-controls{border-right:0}.studio-preview{border-block:1px solid var(--line);padding:20px}.tool-output{display:block}.tool-output button{margin-top:10px}.tool-nav{gap:0}.tool-nav a{padding:8px}.directory{display:block;padding:35px 0}.directory-intro{margin-bottom:30px}.directory h2{font-size:33px}.directory-intro p:last-child{max-width:100%}.benefits{flex-wrap:wrap;gap:8px 20px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.tool-link{gap:14px}.tool-link h3{font-size:22px}.site-header{gap:12px}.brand{font-size:18px}.site-header nav{gap:12px}.preview-heading{display:block}.preview-heading span{display:block;margin-top:6px}.scene-preview{padding:8px}.tool-hero{padding:28px 0}.tool-hero h1{letter-spacing:-1px}.method{padding:32px 0}#page-nav{gap:6px}#page-nav button{padding:8px;font-size:10px}}
/* Policy pages use ordinary links and remain readable without JavaScript. */
.policy{max-width:880px;overflow-wrap:anywhere}.policy-date{color:var(--muted)}.policy-note{padding:16px 20px;background:#e9eddf;border-left:3px solid var(--green)}.policy .policy-toc{display:block;padding:22px 0;border-block:1px solid var(--line);margin:30px 0}.policy-toc h2{margin:0;font-size:23px}.policy-toc ol{columns:2;column-gap:40px;padding-left:24px;margin-bottom:0}.policy-toc li{break-inside:avoid;padding:4px 0}.policy-toc a{font-size:14px;text-decoration:underline}.policy section{scroll-margin-top:24px}.policy-details{margin:20px 0}.policy-details>div{padding:15px 0;border-bottom:1px solid var(--line)}.policy-details dt{font-size:14px;font-weight:700;color:var(--ink)}.policy-details dd{font-size:15px;line-height:1.8;margin-top:6px}footer>div{flex-wrap:wrap}@media(max-width:700px){.policy-toc ol{columns:1}.policy h1{font-size:36px}.policy-note{padding:14px}}

@media screen and (max-width:1100px),screen and (pointer:coarse){
 .studio input,.studio select,.studio textarea{font-size:16px}
 .studio select,.review-row select{height:auto;min-height:44px}
 .studio .check,.tool-nav a{min-height:44px}
 .tool-nav a{display:flex;align-items:center;font-size:13px}
 .tool-controls .help,.notice{font-size:12px}
 #crop-handle{width:28px;height:28px;right:-10px;bottom:-10px}
 #crop-handle::after{content:'';position:absolute;inset:-8px}
}
@media screen and (max-width:700px){
 .tool-controls,.tool-output,.studio-preview{padding:20px 16px}
 .tool-output{border-top:0}
 .tool-link>div{min-width:0}.tool-link h3{overflow-wrap:anywhere}
 .review-row{grid-template-columns:56px minmax(0,1fr);gap:12px}
 .review-row img{max-width:56px}
 .policy-toc a{display:block;min-height:44px;padding:8px 0}
 #page-nav{flex-wrap:wrap}#page-nav button{font-size:12px}
}

.contact-page{max-width:800px}.contact-page form{margin-top:28px;padding:24px;border:1px solid var(--line);background:var(--white)}
.contact-page label{margin-top:18px}.contact-page .fields{margin:0}.contact-page .fields label{margin:0}
.contact-page input,.contact-page select,.contact-page textarea{font-size:16px;min-height:44px}
.contact-page textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #cbd2c5;border-radius:4px;resize:vertical}
.contact-page button{min-height:44px;margin-top:10px}.contact-page .help{font-size:12px}
.contact-trap{display:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#contact-status{overflow-wrap:anywhere;scroll-margin:24px}#contact-status:empty{display:none}
@media(max-width:700px){.contact-page form{padding:18px}.contact-page .fields.two{grid-template-columns:1fr}.contact-page button{width:100%}}
