:root{--ink:#182b36;--muted:#526774;--paper:#f6f4ef;--accent:#215a63;--line:#d9e0dc;--soft:#eaf0eb;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.85 system-ui,'Malgun Gothic',sans-serif}a{color:var(--accent);text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip{position:absolute;left:16px;top:-90px;background:white;padding:12px;z-index:20}.skip:focus{top:12px}.wrap{max-width:1180px;margin:auto;padding:0 28px}.site-header{background:#fffdf9;border-bottom:1px solid var(--line)}.header-row{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:78px}.brand{font-weight:800;font-size:19px;text-decoration:none;letter-spacing:-.04em}.header-row nav{display:flex;flex-wrap:wrap;gap:20px;font-size:14px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;padding-top:52px;padding-bottom:46px;align-items:center}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.14em;color:var(--accent);margin:0 0 18px}.hero h1{font-size:clamp(32px,3.6vw,49px);line-height:1.3;letter-spacing:-.055em;margin:0 0 22px;word-break:keep-all;overflow-wrap:anywhere}.lead{font-size:21px;line-height:1.7;letter-spacing:-.025em}.intro{color:var(--muted);font-size:16px}.button,.call{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;background:var(--accent);color:white;padding:11px 20px;border:1px solid var(--accent);border-radius:10px;text-decoration:none;font-weight:700;cursor:pointer}.button.secondary{background:white;color:var(--accent)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hero figure{margin:0}.hero picture{display:block;border-radius:var(--radius);overflow:hidden;background:#dfe5de}.hero img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.hero figcaption{color:var(--muted);font-size:13px;line-height:1.7;padding:12px 2px}.reader-nav{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;font-size:14px}.reader-nav a{background:white;padding:6px 12px;border:1px solid var(--line);border-radius:100px;text-decoration:none}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:52px;margin:44px 0}.article-section{margin:0 0 38px;padding:0 0 30px;border-bottom:1px solid var(--line)}h2{font-size:clamp(24px,3vw,30px);line-height:1.45;letter-spacing:-.04em;word-break:keep-all}h3{font-size:20px;line-height:1.5}.article-section h2{margin-top:0}.article-section p{margin:16px 0;max-width:76ch}.article-section li{margin:10px 0}.aside-card{position:sticky;top:24px;border:1px solid var(--line);border-radius:var(--radius);background:white;padding:25px;font-size:15px}.aside-card p{color:var(--muted)}.aside-card .call{width:100%;font-size:16px}.tool-panel{border:1px solid var(--line);border-radius:var(--radius);padding:32px;background:white;margin:35px 0 50px;box-shadow:0 14px 32px #1c3b2b06}.tool-panel h2{margin-top:0}.tool-panel .tool-description{color:var(--muted);font-size:15px;max-width:75ch}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:26px 0}.field span{display:block;font-size:14px;font-weight:750;margin-bottom:8px}.field input,.field select{display:block;width:100%;background:#fafbf8;border:1px solid #bdcbc6;border-radius:9px;padding:12px;min-height:50px;color:var(--ink)}.field input::placeholder{color:#73817d;font-size:14px}.result{display:block;white-space:pre-wrap;background:var(--soft);border-radius:12px;padding:23px;min-height:100px;margin:24px 0;font-size:17px;line-height:1.8;border-left:4px solid var(--accent)}.result.empty{color:var(--muted);font-size:15px}.privacy{font-size:13px;color:var(--muted);margin-bottom:0}.copy-status{font-size:14px;margin-left:12px;color:var(--accent)}button:disabled{opacity:.5;cursor:default}.term-grid{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.term-grid button{background:#f6f8f2;color:var(--ink);border:1px solid var(--line);border-radius:40px;padding:10px 18px;cursor:pointer}.term-grid button[aria-pressed=true]{background:var(--accent);color:white}.gallery{padding:30px 0 40px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gallery figure{margin:0;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.gallery picture{display:block}.gallery img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:#e7ebe5}.gallery figcaption{font-size:14px;padding:17px 20px;color:var(--muted)}.map-note{background:var(--soft);padding:26px;border-radius:16px;margin:22px 0 42px}.map-note h3{margin:0 0 8px}.map-note p{font-size:15px;max-width:85ch}.faq{padding:12px 0 40px}.faq details{background:white;border:1px solid var(--line);border-radius:12px;padding:0 22px;margin:12px 0}.faq summary{font-weight:700;cursor:pointer;padding:19px 0;line-height:1.6}.faq details p{padding:0 0 20px;margin:0;color:var(--muted);font-size:16px}.contact{background:var(--accent);color:white;padding:36px;border-radius:var(--radius);margin:15px 0 50px}.contact h2{margin-top:0}.contact .call{background:white;color:var(--accent);border-color:white}.contact p{max-width:75ch}.site-footer{border-top:1px solid var(--line);padding:28px 0 38px;font-size:13px;color:var(--muted)}.site-footer a{margin-right:18px}.review-ribbon{background:#edf1f6;color:#4d5d73;font-size:12px;padding:8px 28px;text-align:center}.review-head{padding:48px 0 30px}.review-head h1{font-size:clamp(32px,4.5vw,50px);line-height:1.35;letter-spacing:-.05em}.review-info{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;margin:20px 0}.review-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-bottom:45px}.review-card{border:1px solid var(--line);background:white;border-radius:18px;overflow:hidden}.review-card img{width:100%;height:210px;object-fit:cover;display:block}.review-card-body{padding:25px}.review-card h2{font-size:23px;margin:10px 0}.review-card p{font-size:15px;color:var(--muted)}.review-card ol{font-size:14px;padding-left:22px}.checks{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.checks span{border:1px solid var(--line);border-radius:10px;padding:8px 15px;background:white;font-size:14px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border:1px solid var(--line);padding:13px;text-align:left;vertical-align:top}th{background:var(--soft)}@media(min-width:1000px){body[data-variant=reverse] .hero-text{order:2}body[data-variant=reverse] .hero figure{order:1}}@media(max-width:860px){.hero{grid-template-columns:1fr;gap:28px;padding-top:32px}.hero-text{max-width:740px}.hero figure{max-width:700px}.hero img{aspect-ratio:16/10}.content-layout{grid-template-columns:1fr;gap:8px}.aside-card{position:static}.content-layout aside{margin:0 0 15px}.review-cards{grid-template-columns:1fr}}@media(max-width:560px){body{font-size:16px}.wrap{padding:0 19px}.header-row{padding-top:15px;padding-bottom:15px;align-items:flex-start;flex-direction:column;gap:8px}.header-row nav{gap:16px}.hero{padding-top:28px;padding-bottom:24px}.hero h1{font-size:33px}.lead{font-size:19px}.hero img{aspect-ratio:4/3}.form-grid,.gallery-grid{grid-template-columns:1fr}.tool-panel{padding:22px}.reader-nav{gap:8px}.reader-nav a{font-size:13px}.contact{padding:25px}.content-layout{margin-top:30px}.article-section{margin-bottom:28px}.review-ribbon{padding:7px 16px}.review-card-body{padding:21px}.button,.call{font-size:15px}.actions>*{flex-grow:1}.map-note{padding:22px}.result{padding:19px}.gallery img{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.result{overflow-wrap:anywhere}

:root{--accent:#386b67}
