:root{color-scheme:light;--forest:#171d18;--dark:#202920;--moss:#dce6b6;--paper:#f6f3eb;--line:#dcd8c9;--muted:#535b50;font:16px/1.5 system-ui,-apple-system,sans-serif;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--forest)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #80a051;outline-offset:4px}h1,h2,h3,p,figure{margin:0}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.05em}.top{min-height:75px;padding:15px clamp(19px,5vw,79px);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--forest);color:var(--paper);border-bottom:1px solid #394239}.wordmark{font-weight:780;letter-spacing:.18em;font-size:13px;white-space:nowrap}.mark{color:var(--moss);font-size:19px;vertical-align:middle;margin-right:6px}.top nav{display:flex;gap:clamp(12px,3vw,36px);font-size:14px;color:#e0e4d7}.top a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.social{font-size:13px}
.hero{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:clamp(20px,5vw,86px);background:var(--forest);color:var(--paper);padding:clamp(30px,5vw,74px) clamp(20px,7vw,112px) clamp(37px,6vw,85px)}.hero-copy{padding:10px 0 20px}.label{font-size:11px;font-weight:750;letter-spacing:.19em}.label>span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#799057;margin-right:7px}.hero .label{color:var(--moss)}.hero .label>span{background:var(--moss)}h1{font-size:clamp(67px,9.6vw,146px);line-height:.86;margin:26px 0 23px}h1 em{font-weight:400;color:var(--moss)}.intro{max-width:375px;color:#dde2d4;margin-bottom:27px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:11px 16px;border:1px solid transparent;font-weight:700;font-size:14px;text-align:center;min-height:45px}.light{background:var(--moss);color:var(--forest)}.light:hover{background:#eff5d6}.dark{background:var(--forest);color:#fff}.dark:hover{background:#354536}.outline{background:transparent;border-color:#677566;color:var(--forest)}.outline:hover{background:#e7ebdc}.hero-image{max-width:490px;width:100%;justify-self:end}.hero-image img{width:100%;max-height:540px;object-fit:contain;background:#252e26}.hero-image figcaption{display:flex;justify-content:space-between;gap:8px;margin-top:11px;font-size:12px;color:#d9dfd0}.hero-image figcaption span:first-child{letter-spacing:.11em;font-size:10px}
.section{padding:clamp(36px,7vw,97px) clamp(20px,7vw,112px);scroll-margin-top:12px}.section h2{font-size:clamp(41px,6vw,83px);line-height:.96}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:12px 0 27px}.section-head p,.order-section p,.about p{max-width:370px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:clamp(13px,3vw,39px)}.product{display:flex;flex-direction:column;border:1px solid var(--line);background:#fbf8f1}.image-button{display:grid;place-items:center;border:0;padding:0;background:#e8e7dc;width:100%;aspect-ratio:1.25}.image-button img{width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain}.image-button:hover{background:#d9ddca}.product-info{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:clamp(14px,2.4vw,31px)}.product-info>.button{margin-top:auto;align-self:stretch}.product-info .label{color:#54614d}.product h3{font-size:clamp(26px,3.1vw,44px);line-height:1.08;margin:7px 0}.product-info>p:not(.label){color:var(--muted);margin:0 0 17px}.order-section{background:#e9eddf;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(20px,6vw,85px);align-items:center}.order-section h2{margin:12px 0 17px}.order-box{border-top:1px solid #bac3b0}.order-box ol{list-style:none;padding:0;margin:0 0 18px;counter-reset:steps}.order-box li{counter-increment:steps;display:grid;grid-template-columns:38px 1fr;gap:2px 9px;padding:12px 0;border-bottom:1px solid #bac3b0}.order-box li::before{content:'0' counter(steps);grid-row:span 2;color:#4d604b;font-size:13px}.order-box li span{font-size:14px;color:var(--muted)}.about{display:grid;grid-template-columns:.6fr 1.4fr;gap:10px}.about p:not(.label){margin:13px 0;max-width:500px}.text-link{font-weight:700}footer{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:var(--forest);color:var(--paper);padding:20px clamp(20px,7vw,112px);font-size:12px}
dialog{width:min(570px,calc(100% - 26px));max-height:90dvh;background:var(--paper);color:var(--forest);border:1px solid var(--line);padding:clamp(13px,3vw,24px);overflow:auto}dialog::backdrop{background:#101710ca}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px}.dialog-head h2{font-size:clamp(25px,5vw,38px);line-height:1.05}.close{flex:none;background:transparent;border:1px solid var(--line);font-size:25px;width:42px;height:42px;line-height:1}.close:hover{background:#e8ebdc}#large-photo{height:auto;width:auto;max-width:100%;max-height:58dvh;margin:0 auto 12px}form{display:grid;gap:10px;margin-top:12px}label{display:grid;gap:4px;font-size:14px;font-weight:700}label span{display:contents;font-weight:400;color:var(--muted)}input,textarea{width:100%;padding:8px 10px;border:1px solid #b9c0b1;background:#fffefa;color:var(--forest);border-radius:0}textarea{resize:vertical}.request-actions{display:flex;gap:8px;flex-wrap:wrap}#copy-status{font-size:13px;color:var(--muted)}@media(max-width:690px){.top{flex-wrap:wrap}.top nav{order:3;width:100%;border-top:1px solid #394239;padding-top:9px}.hero{grid-template-columns:1fr;gap:8px}.hero-image{justify-self:start}.hero-image img{max-height:62vh}.section-head{align-items:start;flex-direction:column;gap:9px}.order-section,.about{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.image-button{aspect-ratio:1.15}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

.hero-title{font-size:clamp(2.9rem,6vw,6.5rem);line-height:1;overflow-wrap:anywhere}
.hero-title em{letter-spacing:0;word-spacing:.12em;display:block;font-size:clamp(1.45rem,3.3vw,3.3rem);line-height:1.12;margin-top:.3em;overflow-wrap:normal}
.featured h3#featured-title,.more-prints h3#more-title{font-size:clamp(1.6rem,3vw,2.5rem);margin:0}
.featured .section-head a{font-weight:650;text-underline-offset:3px}
.more-prints{margin-top:clamp(34px,6vw,80px);scroll-margin-top:24px}
.photo-rights{max-width:52ch}
.photo-rights p{margin:.35em 0 0}
@media(min-width:960px){.featured-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}

.print-prices{display:grid;gap:8px;margin:0 0 12px}
.print-prices div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px}
.print-prices dd{margin:0;font-weight:700}
.frame-note{margin-bottom:18px}
.frame-option{display:flex;align-items:center;gap:8px}
.frame-option input{width:auto;margin:0;accent-color:var(--forest)}

/* Keep the order buttons at the bottom of each gallery row. */
.gallery .product {
  display: flex;
  flex-direction: column;
}
.gallery .product > .image-button {
  flex-shrink: 0;
}
.gallery .product-info {
  display: flex;
  flex: 1;
  flex-direction: column;
}
.gallery .product-info > [data-order] {
  align-self: center;
  margin-top: auto;
}

.print-filters:not([hidden]){display:flex;flex-wrap:wrap;gap:8px}
.print-filters button{border:1px solid var(--line);background:transparent;color:var(--forest);padding:8px 12px}
.print-filters button[aria-pressed="true"]{background:var(--forest);color:var(--paper)}
.gallery .product[hidden]{display:none}
.delivery-note{margin:0 0 18px}

.featured-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
.preview-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-bottom:12px}
.preview-navigation .button{justify-content:center;padding:9px 5px;min-height:44px}
.preview-navigation [aria-disabled="true"]{opacity:.45;cursor:default}
#photo-position{white-space:nowrap;font-variant-numeric:tabular-nums}
#large-photo{max-height:clamp(130px,calc(90dvh - 240px),58dvh);object-fit:contain}
#request-form select{width:100%;padding:10px;font:inherit;color:var(--forest);background:var(--paper);border:1px solid var(--line)}
@media(max-width:1040px){.featured-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.featured-gallery{grid-template-columns:1fr}}

.about h2{font-size:clamp(22px,3vw,32px);line-height:1.15}

.species-name{margin:0 0 8px;color:#54614d;font-size:.83rem;font-weight:700}

.species-guide{color:var(--muted);margin:12px 0}
.species-group{border:1px solid var(--line);background:#fbf8f1;margin-bottom:10px}
.species-group summary{cursor:pointer;padding:14px 16px;font-weight:700}
.species-group .gallery{padding:0 12px 12px}

.photo-zoom-close{display:none}
.photo-zoom:target .image-button{position:fixed;inset:0;z-index:20;height:100%;aspect-ratio:auto;padding:60px 12px 12px;background:#121612}
.photo-zoom:target .photo-zoom-close{display:block;position:fixed;top:10px;right:12px;z-index:21;background:#fff;color:#151915;padding:10px 14px;border-radius:4px}

.top nav{flex-wrap:wrap}
.instagram-icon{vertical-align:-.24em;margin-inline-end:.35em}
.art-editions .order-box h3{font-size:1.4rem;margin:0 0 8px}
.art-editions .order-box .button{margin-top:14px}

#collection{position:relative;isolation:isolate;background:#edf0e5}
#collection::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 8% 20%,#95ab7ba6 0%,transparent 51%),
    radial-gradient(ellipse at 96% 63%,#abc298a6 0%,transparent 49%),
    radial-gradient(ellipse at 26% 92%,#b1b99780 0%,transparent 44%),
    repeating-radial-gradient(ellipse at -25% 20%,transparent 0 43px,#647e5229 72px,#647e5233 88px,transparent 125px,transparent 158px);
  filter:blur(12px)}
