.photo-info-rail{display:grid;grid-template-columns:1.25fr 1fr 1fr .9fr .7fr;border:1px solid var(--line);border-top:0;background:#111612}.photo-info-rail>div{min-width:0;padding:16px 18px;border-right:1px solid var(--line)}.photo-info-rail>div:last-child{border:0}.photo-info-rail span,.photo-info-rail b,.photo-info-rail em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-info-rail span{color:#778378;font-size:7px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase}.photo-info-rail b{margin-top:5px;color:#eef2ed;font-size:10px}.photo-info-rail em{margin-top:3px;color:#899589;font-size:8px}.photo-info-rail .quality-mark{display:inline-block;padding:5px 7px;background:#29351f;color:#cce999;font-size:8px}
.photo-summary-accordion{border:1px solid var(--line);border-top:0;background:#111612}.photo-summary-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px}.photo-summary-accordion>summary::-webkit-details-marker{display:none}.photo-summary-accordion>summary span,.photo-summary-accordion>summary small,.photo-summary-accordion>summary b{display:block;min-width:0}.photo-summary-accordion>summary small{color:var(--accent);font-size:7px;letter-spacing:1.3px}.photo-summary-accordion>summary b{margin-top:4px;overflow:hidden;color:#e9eeE8;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.photo-summary-accordion>summary i{flex:0 0 auto;color:var(--accent);font-style:normal;font-size:20px;transition:transform .2s}.photo-summary-accordion[open]>summary i{transform:rotate(45deg)}.photo-summary-accordion .photo-info-rail{border-right:0;border-bottom:0;border-left:0}
.photo-editorial-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.72fr);gap:42px;padding:48px 0 32px}.photo-story{max-width:820px}.photo-story h1{margin:11px 0 6px;font-size:clamp(35px,4vw,57px);line-height:1.06}.photo-story>em{color:var(--accent2);font-size:13px}.photo-story>p{max-width:760px;margin:25px 0 0;color:#c1cac1;font-size:13px;line-height:1.85}
.photographer-profile-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:15px;padding:23px;border:1px solid #344035;background:linear-gradient(145deg,#182019,#111612)}.photographer-profile-avatar{grid-row:1/3;width:82px;height:82px;border:2px solid #50614f;border-radius:50%;overflow:hidden;background:#222c23;display:grid;place-items:center}.photographer-profile-avatar img{width:100%;height:100%;object-fit:cover}.photographer-profile-avatar span{color:var(--accent);font:800 28px Montserrat}.photographer-profile-copy small{color:var(--accent);font-size:7px;font-weight:800;letter-spacing:1.5px}.photographer-profile-copy h2{margin:6px 0 3px;font-size:17px}.photographer-profile-copy>a{color:#a4aea4;font-size:9px}.photographer-profile-copy p{margin:10px 0 0;color:#909b91;font-size:8px;line-height:1.55}.photographer-mini-badges{grid-column:1/-1;display:flex;gap:7px;padding-top:14px;border-top:1px solid var(--line)}.photographer-mini-badges>span{--badge:#76954c;position:relative;width:35px;height:35px;border:2px solid var(--badge);border-radius:50%;background:#101511;display:grid;place-items:center;color:#d9eca8}.photographer-mini-badges>span.tier-bronze{--badge:#a86b3c}.photographer-mini-badges>span.tier-silver{--badge:#aeb7b2}.photographer-mini-badges>span.tier-gold{--badge:#d0a83f}.photographer-mini-badges>span.tier-legend{--badge:#9bdc4f;box-shadow:0 0 14px rgba(155,220,79,.28)}.photographer-mini-badges b{font:800 12px Montserrat}.photographer-mini-badges i{position:absolute;right:-4px;bottom:-3px;width:15px;height:15px;border-radius:50%;background:var(--badge);color:#101511;display:grid;place-items:center;font:800 6px Inter}.photographer-profile-stats{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.photographer-profile-stats span{padding:12px;color:#778278;font-size:7px;text-transform:uppercase}.photographer-profile-stats span+span{border-left:1px solid var(--line)}.photographer-profile-stats b{display:block;margin-bottom:4px;color:#fff;font:800 16px Montserrat}.photographer-profile-button{grid-column:1/-1;display:flex;justify-content:space-between;padding:11px 12px;border:1px solid #536452;color:#fff;font-size:9px;font-weight:800}.photographer-profile-button span{color:var(--accent)}
.photo-action-bar{display:grid;grid-template-columns:150px minmax(360px,1fr) 120px 120px 120px;align-items:stretch;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#101511}.compact-action{border:0;border-right:1px solid var(--line);background:transparent;color:#fff;padding:15px;display:grid;grid-template-columns:32px auto;grid-template-rows:auto auto;align-items:center;text-align:left;cursor:pointer}.compact-action>span{grid-row:1/3;color:#758076;font-size:22px}.compact-action>b{font:800 13px Montserrat}.compact-action>small{color:#818c82;font-size:7px}.compact-action.active>span{color:var(--accent)}.compact-rating{display:grid;grid-template-columns:85px minmax(210px,1fr) 75px;align-items:center;gap:12px;padding:10px 16px;border-right:1px solid var(--line)}.compact-rating>div b,.compact-rating>div small{display:block}.compact-rating>div b{font:800 16px Montserrat}.compact-rating>div small,.compact-rating output{color:#7f897f;font-size:7px}.compact-rating .star-rating{font-size:20px;letter-spacing:2px}.compact-rating output{text-align:right}
.photo-detail-panels{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:14px;padding:30px 0}.technical-panel,.safe-location-card,.species-detail-card{border:1px solid var(--line);background:#121713}.technical-panel summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:18px 20px}.technical-panel summary::-webkit-details-marker{display:none}.technical-panel summary small,.technical-panel summary b{display:block}.technical-panel summary small{color:var(--accent);font-size:7px;letter-spacing:1.4px}.technical-panel summary b{margin-top:4px;font-size:13px}.technical-panel summary i{color:var(--accent);font-style:normal;font-size:20px;transition:.2s}.technical-panel[open] summary i{transform:rotate(45deg)}.technical-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.technical-grid>div{min-width:0;padding:13px 17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.technical-grid>div:nth-child(2n){border-right:0}.technical-grid span,.technical-grid b{display:block}.technical-grid span{color:#79847a;font-size:7px;text-transform:uppercase}.technical-grid b{margin-top:5px;overflow:hidden;color:#e4e9e3;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.safe-location-card{display:grid;grid-template-rows:125px auto}.location-map-preview{position:relative;overflow:hidden;background:radial-gradient(circle at 65% 35%,rgba(169,204,72,.16),transparent 5%),linear-gradient(25deg,transparent 43%,#2b362c 44% 46%,transparent 47%),linear-gradient(145deg,#1d271e,#101511)}.location-map-preview:before,.location-map-preview:after{content:"";position:absolute;border:1px solid rgba(151,177,145,.12);border-radius:50%}.location-map-preview:before{width:180px;height:180px;left:-40px;top:-70px}.location-map-preview:after{width:120px;height:120px;right:-20px;bottom:-60px}.location-map-preview i{position:absolute;left:64%;top:31%;width:12px;height:12px;border:3px solid var(--accent);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.location-map-preview span{position:absolute;left:13px;bottom:10px;color:#aab5aa;font-size:7px;text-transform:uppercase}.safe-location-card>div:last-child,.species-detail-card{padding:19px}.safe-location-card h2,.species-detail-card h2{margin:7px 0 3px;font-size:18px}.safe-location-card p{margin:0;color:#a8b2a8;font-size:9px}.safe-location-card small{display:block;margin-top:13px;color:#707b71;font-size:7px;line-height:1.5}.species-detail-card>div{display:flex;align-items:center;gap:13px;margin:16px 0}.species-detail-card em{color:#8f9a90;font-size:8px}.species-bird-icon{width:46px;height:46px;border:1px solid #536553;border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:27px}.species-detail-card dl{margin:0;border-top:1px solid var(--line)}.species-detail-card dl div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line);font-size:8px}.species-detail-card dt{color:#7e897f}.species-detail-card dd{margin:0;color:#d8e7bd;font-weight:800}.species-detail-card>a{display:flex;justify-content:space-between;margin-top:14px;color:#fff;font-size:9px;font-weight:800}.species-detail-card>a span{color:var(--accent)}
.comments-section{max-width:1050px;margin:65px auto 90px;padding:30px;border:1px solid var(--line);background:#111612}.comments-head{display:flex;justify-content:space-between}.comments-section #comment-form{border-color:#3d493e;background:#0e130f}.comment-list>.comment-thread{padding:24px 2px}.comment-avatar{width:46px;height:46px}.comment-list header>a{display:flex;align-items:center;gap:10px}.comment-list header>a:hover b{text-decoration:underline}.comment-reply{border-radius:0 10px 10px 0}
.related-mosaic>header{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.related-mosaic>header h2{margin-bottom:0}.related-mosaic>header>a{color:var(--accent);font-size:9px;font-weight:800}.related-mosaic .related-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;grid-template-rows:180px 180px;gap:12px}.related-mosaic article{position:relative;min-width:0;background:#111612}.related-mosaic article:first-child{grid-row:1/3}.related-mosaic article:nth-child(4){grid-column:3}.related-image{position:absolute;inset:0;overflow:hidden}.related-image img{width:100%;height:100%;object-fit:cover;transition:.35s}.related-image:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(7,10,8,.9))}.related-image>span{position:absolute;z-index:2;left:13px;bottom:47px;color:#fff;font:800 11px Montserrat}.related-author{position:absolute;z-index:3;left:13px;right:13px;bottom:10px;display:flex;align-items:center;gap:8px}.related-author>img,.related-author>i{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#263026;display:grid;place-items:center;color:var(--accent);font-style:normal;font-size:9px}.related-author b,.related-author small{display:block;margin:0;color:#fff;font-size:7px}.related-author small{margin-top:2px;color:#aab3aa}.related-mosaic article:hover .related-image img{transform:scale(1.035)}
@media(max-width:1100px){.photo-action-bar{grid-template-columns:130px 1fr 100px 100px}.photo-action-bar>.compact-action:last-child{grid-column:4}.photo-detail-panels{grid-template-columns:1fr 1fr}.technical-panel{grid-column:1/-1}}
@media(max-width:820px){.photo-info-rail{grid-template-columns:1fr 1fr}.photo-info-rail>div{border-bottom:1px solid var(--line)}.photo-editorial-grid{grid-template-columns:1fr;gap:25px}.photo-action-bar{grid-template-columns:1fr 1fr}.compact-rating{grid-column:1/-1;grid-row:1}.photo-detail-panels{grid-template-columns:1fr}.technical-panel{grid-column:auto}.related-mosaic .related-grid{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px}.related-mosaic article:first-child{grid-column:1/3;grid-row:auto}.related-mosaic article:nth-child(4){display:none}}
@media(max-width:560px){.photo-info-rail{grid-template-columns:1fr}.photo-info-rail>div{border-right:0}.photo-summary-accordion>summary{min-height:63px;padding:13px 15px}.photo-editorial-grid{padding-top:30px}.photographer-profile-card{grid-template-columns:65px 1fr}.photographer-profile-avatar{width:65px;height:65px}.photo-action-bar{grid-template-columns:1fr 1fr}.compact-rating{grid-template-columns:minmax(0,1fr);gap:10px;padding:16px;overflow:hidden}.compact-rating .star-rating{max-width:100%;font-size:clamp(15px,5vw,20px);letter-spacing:0}.compact-rating output{grid-column:1;text-align:left}.photo-detail-panels{padding-top:20px}.comments-section{margin-left:-2px;margin-right:-2px;padding:18px}.technical-grid{grid-template-columns:1fr}.technical-grid>div{border-right:0}.related-mosaic .related-grid{display:grid;grid-template-columns:1fr;grid-template-rows:260px 180px}.related-mosaic article:first-child{grid-column:auto}.related-mosaic article:nth-child(3){display:none}.related-mosaic>header{display:grid;gap:12px}}
/* Icon-led EXIF facts */
.technical-grid>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px}.technical-grid p{min-width:0;margin:0}.technical-icon{width:25px;height:25px;fill:none;stroke:var(--accent);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
/* Stable, count-aware asymmetric related-photo compositions. */
.related-mosaic .related-grid{grid-auto-flow:dense;min-width:0}
.related-mosaic .related-grid>article{grid-column:auto;grid-row:auto;min-height:0;overflow:hidden}
.related-mosaic .related-grid--4>article:nth-child(1){grid-column:1;grid-row:1/3}
.related-mosaic .related-grid--4>article:nth-child(2){grid-column:2;grid-row:1}
.related-mosaic .related-grid--4>article:nth-child(3){grid-column:3;grid-row:1}
.related-mosaic .related-grid--4>article:nth-child(4){grid-column:2/4;grid-row:2}
.related-mosaic .related-grid--3{grid-template-columns:1.45fr 1fr;grid-template-rows:180px 180px}
.related-mosaic .related-grid--3>article:nth-child(1){grid-column:1;grid-row:1/3}
.related-mosaic .related-grid--3>article:nth-child(2){grid-column:2;grid-row:1}
.related-mosaic .related-grid--3>article:nth-child(3){grid-column:2;grid-row:2}
.related-mosaic .related-grid--2{grid-template-columns:1.45fr 1fr;grid-template-rows:372px}
.related-mosaic .related-grid--1{grid-template-columns:minmax(0,620px);grid-template-rows:360px;justify-content:start}
@media(max-width:820px){.related-mosaic .related-grid,.related-mosaic .related-grid--3,.related-mosaic .related-grid--2{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px}.related-mosaic .related-grid--4>article:nth-child(1),.related-mosaic .related-grid--3>article:nth-child(1){grid-column:1/3;grid-row:1}.related-mosaic .related-grid--4>article:nth-child(2),.related-mosaic .related-grid--3>article:nth-child(2){grid-column:1;grid-row:2}.related-mosaic .related-grid--4>article:nth-child(3),.related-mosaic .related-grid--3>article:nth-child(3){grid-column:2;grid-row:2}.related-mosaic .related-grid--4>article:nth-child(4){display:none}.related-mosaic .related-grid--2{grid-template-rows:230px}.related-mosaic .related-grid--1{grid-template-columns:1fr;grid-template-rows:280px}}
@media(max-width:560px){.related-mosaic .related-grid,.related-mosaic .related-grid--3,.related-mosaic .related-grid--2,.related-mosaic .related-grid--1{grid-template-columns:1fr;grid-template-rows:260px 190px}.related-mosaic .related-grid--4>article:nth-child(1),.related-mosaic .related-grid--3>article:nth-child(1){grid-column:1;grid-row:1}.related-mosaic .related-grid--4>article:nth-child(2),.related-mosaic .related-grid--3>article:nth-child(2){grid-column:1;grid-row:2}.related-mosaic .related-grid>article:nth-child(n+3){display:none}.related-mosaic .related-grid--1{grid-template-rows:250px}}

/* Related photos use a regular, equal-sized grid instead of a mosaic. */
.related-mosaic .related-grid,
.related-mosaic .related-grid--1,
.related-mosaic .related-grid--2,
.related-mosaic .related-grid--3,
.related-mosaic .related-grid--4{
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:none;
    grid-auto-rows:220px;
    grid-auto-flow:row;
    justify-content:stretch;
}
.related-mosaic .related-grid>article,
.related-mosaic .related-grid>article:nth-child(n){
    display:block;
    grid-column:auto;
    grid-row:auto;
}
.related-mosaic .related-author>div{
    height:auto;
    overflow:visible;
    background:transparent;
    box-shadow:none;
}
@media(max-width:820px){
    .related-mosaic .related-grid,
    .related-mosaic .related-grid--1,
    .related-mosaic .related-grid--2,
    .related-mosaic .related-grid--3,
    .related-mosaic .related-grid--4{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:none;
        grid-auto-rows:210px;
    }
}
@media(max-width:560px){
    .related-mosaic .related-grid,
    .related-mosaic .related-grid--1,
    .related-mosaic .related-grid--2,
    .related-mosaic .related-grid--3,
    .related-mosaic .related-grid--4{
        grid-template-columns:1fr;
        grid-template-rows:none;
        grid-auto-rows:240px;
    }
}
.photographer-mini-badges .badge-type-icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.photographer-badge-group{grid-column:1/-1}.photographer-badge-group>small{display:block;margin-bottom:7px;color:#849086;font-size:6px;font-weight:800;letter-spacing:.12em}.photographer-badge-group .photographer-mini-badges{padding-top:0;border-top:0;flex-wrap:wrap}.photographer-species-badges{padding-top:11px;border-top:1px solid var(--line)}.photographer-species-badges .photographer-mini-badges>span{width:29px;height:29px}.photographer-species-badges .badge-type-icon{width:17px;height:17px}

/* Comments come first; technical, species and safe-location facts live together below. */
.photo-information-group{margin:0 auto 75px}.photo-information-group>header{margin-bottom:18px}.photo-information-group>header h2{margin:7px 0 4px;font-size:23px}.photo-information-group>header p{margin:0;color:var(--muted);font-size:9px}.photo-information-group .photo-detail-panels{padding:0}.information-accordion-item{min-width:0;border:1px solid var(--line);background:#121713}.information-accordion-item>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px}.information-accordion-item>summary::-webkit-details-marker{display:none}.information-accordion-item>summary span,.information-accordion-item>summary small,.information-accordion-item>summary b{display:block;min-width:0}.information-accordion-item>summary small{color:var(--accent);font-size:7px;letter-spacing:1.4px}.information-accordion-item>summary b{margin-top:4px;overflow:hidden;color:#eef2ed;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.information-accordion-item>summary>i{flex:0 0 auto;color:var(--accent);font-style:normal;font-size:20px;transition:transform .2s}.information-accordion-item[open]>summary>i{transform:rotate(45deg)}.information-accordion-item .safe-location-card,.information-accordion-item .species-detail-card{border:0;border-top:1px solid var(--line)}.information-accordion-item .species-detail-card{height:auto}.comments-section{margin-bottom:36px}
@media(max-width:820px){.photo-information-group{margin-bottom:55px}.photo-information-group .photo-detail-panels{display:grid;gap:9px}.information-accordion-item>summary{min-height:72px;padding:16px 17px}}
@media(max-width:560px){.comments-section{margin-top:35px;margin-bottom:25px}.photo-information-group>header h2{font-size:19px}.photo-information-group .photo-detail-panels{padding-top:0}.information-accordion-item .safe-location-card{grid-template-rows:105px auto}}
