:root{--bg-canvas:#eef7f2;--bg-surface:#fff;--bg-surface-hover:#f7fbf8;--text-primary:#1f2937;--text-muted:#4b6255;--accent-primary:#14532d;--accent-secondary:#9cbba4;--border-subtle:#d9e6dd;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(28,58,38,.12);--glow-accent:0 0 24px -4px rgba(20,83,45,.12);--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:17px/1.8 "Trebuchet MS","Segoe UI",sans-serif;overflow-wrap:anywhere;hyphens:auto}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #9a580d;outline-offset:5px}img{display:block;max-width:100%;height:auto;border-radius:4px}h1,h2,h3{line-height:1.18;letter-spacing:-.035em;overflow-wrap:anywhere}h1{font-size:clamp(2.4rem,5.1vw,4.7rem);font-weight:600;margin:.35em 0 .55em}h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:600}h3{font-size:1.3rem}p{margin:0 0 1.15em}.wrap{width:min(1100px,calc(100% - 48px));margin:0 auto}.skip{position:absolute;top:-100px;left:16px;background:#fff;padding:10px;z-index:30}.skip:focus{top:12px}.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:transparent;transition:background .3s}.site-header.scrolled{background:var(--bg-surface)}.brand{display:flex;align-items:center;gap:10px;color:var(--accent-primary);font-size:1rem;font-weight:700;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--accent-secondary);border-radius:4px;font-size:20px}.site-nav{display:flex;gap:22px;align-items:center}.site-nav a{font-size:.87rem;text-decoration:none;color:var(--text-primary)}.site-nav a[aria-current=page]{color:var(--accent-primary);text-decoration:underline}.menu-toggle{display:none;border:0;background:transparent;color:var(--accent-primary);font-size:32px;line-height:1;padding:8px 14px;cursor:pointer}.band{padding:80px 0}.white{background:var(--bg-surface)}.dots{background-image:radial-gradient(#b9cebf 1px,transparent 1px);background-size:23px 23px}.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.17em;color:var(--accent-primary);font-weight:700}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;min-height:610px;padding-top:45px;padding-bottom:75px}.hero p{max-width:49ch}.hero-objects{position:relative;min-height:415px;isolation:isolate}.hero-objects:before{content:"";position:absolute;inset:35px;background:radial-gradient(ellipse,#c9e3cf,transparent 70%);animation:breathe 9s ease-in-out infinite}.hero-objects img{position:absolute;object-fit:cover;box-shadow:var(--shadow-elevation);background:#fff;width:59%;aspect-ratio:1;transition:transform .6s var(--ease-kinetic)}.hero-objects .binoculars-render{left:0;top:12px;transform:rotate(-7deg);z-index:2}.hero-objects .camera-render{right:0;top:105px;transform:rotate(7deg);z-index:3}.hero-objects .notebook-render{left:40px;bottom:0;width:47%;transform:rotate(-3deg);z-index:4}.hero-objects:hover .camera-render{transform:translateY(-8px) rotate(4deg)}.caption,.meta{font-size:.82rem;color:var(--text-muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent-primary);color:#fff;border:0;border-radius:999px;padding:12px 23px;text-decoration:none;font-weight:700;cursor:pointer;transition:transform .35s var(--ease-kinetic),box-shadow .35s}.button:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.button.secondary{background:#e2eee6;color:var(--accent-primary)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.section-heading{max-width:720px;margin-bottom:32px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:25px}.panel{background:var(--bg-surface);border-radius:4px;padding:30px;box-shadow:var(--shadow-elevation);transition:transform .4s var(--ease-kinetic),box-shadow .4s}.panel:hover{transform:translateY(-5px);box-shadow:var(--shadow-elevation),var(--glow-accent)}.white .panel{background:var(--bg-canvas)}.panel h3{margin-top:0}.panel p:last-child{margin-bottom:0}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}.media-frame{aspect-ratio:4/3;object-fit:cover;width:100%;background:#fff;box-shadow:var(--shadow-elevation)}.ribbon{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin:30px 0;background:#c8dccc;border-radius:4px;overflow:hidden}.ribbon div{background:#f6fbf7;padding:22px}.ribbon strong{display:block;color:var(--accent-primary)}.warning{border-left:4px solid #9a580d;padding:18px 22px;background:#fff7e7;border-radius:4px;color:#4f391c}.comparison{display:grid;grid-template-columns:1fr 2fr;gap:18px;padding:17px 0;border-bottom:1px solid var(--border-subtle)}.comparison strong{color:var(--accent-primary)}.page-intro{padding:65px 0 50px}.page-intro h1{max-width:900px}.page-intro p{max-width:68ch}.article-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:60px;align-items:start}.prose{max-width:70ch;margin:0 auto;min-width:0}.prose h2{font-size:1.9rem;margin-top:1.7em}.prose h2:first-child{margin-top:0}.prose li{margin-bottom:.7em}.side-note{position:sticky;top:24px}.side-note a{display:block;margin:10px 0}.wide-image{width:100%;aspect-ratio:16/9;object-fit:cover;background:#fff}.image-note{margin:10px 0 30px;font-size:.82rem;color:var(--text-muted)}details{background:#fff;box-shadow:var(--shadow-elevation);border-radius:4px;margin:15px 0;padding:20px 24px}summary{cursor:pointer;color:var(--accent-primary);font-weight:700}details p{margin-top:16px}details p:last-child{margin-bottom:0}label{display:block;font-weight:700;margin:18px 0 6px}input,textarea{width:100%;border:1px solid #a7beae;border-radius:4px;background:#fff;color:var(--text-primary);padding:12px 14px}textarea{resize:vertical;min-height:170px}.output{white-space:pre-wrap;background:#f4f8f5;padding:20px;border-radius:4px;min-height:120px;font:inherit}.status{min-height:1.8em;color:var(--accent-primary);font-weight:700}.site-footer{padding:42px 0;background:#e1eee5;font-size:.9rem}.footer-row{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.footer-links{display:flex;gap:12px 22px;flex-wrap:wrap;max-width:500px}.site-footer p{margin:.5em 0}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal-visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@keyframes breathe{50%{transform:scale(1.08);opacity:.6}}
@media(min-width:1025px){.hero h1{font-size:4.2rem}}
@media(min-width:769px) and (max-width:1024px){.site-header{padding:20px;gap:15px}.site-nav{gap:13px}.site-nav a{font-size:.78rem}.brand{font-size:.87rem}.hero{gap:30px}.article-layout{gap:32px}.hero-objects{min-height:350px}}
@media(max-width:768px){.site-header{padding:18px 24px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:16px;right:16px;background:rgba(255,255,255,.97);backdrop-filter:var(--glass-backdrop);box-shadow:var(--shadow-elevation);padding:18px;border-radius:4px;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex;animation:menuIn .25s var(--ease-kinetic)}.site-nav a{padding:10px 15px;font-size:1rem}.hero{grid-template-columns:1fr;padding-top:25px;gap:28px;min-height:auto}.hero-objects{min-height:400px;max-width:460px;width:100%;margin:auto}.split,.article-layout{grid-template-columns:1fr;gap:30px}.side-note{position:static}.band{padding:52px 0}.ribbon{grid-template-columns:repeat(2,1fr)}.footer-row{flex-direction:column}.page-intro{padding:38px 0}.hero h1{max-width:15ch}@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:480px){.wrap{width:calc(100% - 36px)}.site-header{padding:16px 18px}.brand{font-size:.78rem;gap:7px}.brand-mark{width:25px;height:25px}.hero-objects{min-height:310px}.panel{padding:24px}.ribbon div{padding:17px}.comparison{grid-template-columns:1fr;gap:4px}.actions .button{width:100%}.band{padding:44px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.button:hover,.panel:hover{transform:none}}