/* Edge-to-edge portrait covers in a responsive photo rail. */
.instagram-section{background:#fff;color:var(--ink,#0b0b0d);scroll-margin-top:100px;padding-block:clamp(48px,6vw,80px)}
.instagram-section .instagram-wrap{max-width:1240px}
.instagram-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}
.instagram-identity{display:flex;align-items:center;gap:12px;min-width:0;font-size:clamp(2rem,3.3vw,3rem)}
.instagram-account-row{display:flex;align-items:center;gap:10px;font-size:clamp(2rem,3.3vw,3rem);line-height:1.04}
.instagram-verified{display:block;flex-shrink:0;align-self:flex-start;width:.78em;height:.78em;margin-top:.08em}
.instagram-identity h2{display:flex;align-items:center;flex-shrink:0;margin:0!important;padding:0;line-height:1;font-size:inherit!important}
.instagram-logo{display:block;width:var(--instagram-logo-size,.825em);height:var(--instagram-logo-size,.825em);transform:translateY(var(--instagram-logo-shift,.075em));object-fit:contain}
.instagram-section a.instagram-account{display:inline-block;font-size:clamp(2rem,3.3vw,3rem);font-weight:700;line-height:1.04;letter-spacing:-.045em;color:var(--ink,#0b0b0d);background:transparent;text-decoration:none}
.instagram-section a.instagram-follow{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;box-sizing:border-box;width:160px;height:var(--instagram-follow-height,40px);min-height:0;padding:0 20px;transform:translateY(var(--instagram-follow-shift,0px));border:1px solid #4e5cf0;border-radius:10px;background:#4e5cf0;color:#fff;font-size:16px;line-height:1;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s}
.instagram-section a.instagram-follow:hover{background:#3e4bd9;border-color:#3e4bd9}
.instagram-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);align-items:stretch;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 6px;margin:-2px -2px -6px;outline-offset:6px}
.instagram-grid::-webkit-scrollbar{display:none}
.instagram-section a.instagram-card{display:flex;flex-direction:column;min-width:0;border:1px solid #e6e6e9;border-radius:23px;overflow:hidden;background:#fff;color:var(--ink,#0b0b0d);text-decoration:none;scroll-snap-align:start;transition:transform .25s,border-color .25s}
.instagram-card-media{position:relative;aspect-ratio:3/4;overflow:hidden;background:#171719;min-width:0}
.instagram-card-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s}
.instagram-card-type{position:absolute;top:12px;left:12px;border:1px solid #ffffff30;border-radius:8px;padding:4px 7px;background:#111111b8;backdrop-filter:blur(12px);color:#fff;font:600 10px/1.3 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:.04em}
.instagram-card-open{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fffffff0;color:#171717;font-size:18px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}
.instagram-card-caption{padding:15px 16px 17px;font-size:13px;line-height:1.55;min-height:72px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.instagram-section a.instagram-card:hover{border-color:#c8c8cf;transform:translateY(-2px)}
.instagram-card:hover .instagram-card-open,.instagram-card:focus-visible .instagram-card-open{opacity:1;transform:translateY(0)}
.instagram-card-media.image-unavailable::after{content:'View post on Instagram ↗';position:absolute;inset:0;display:grid;place-items:center;padding:18px;font-size:14px;color:#c9c9cf;text-align:center}
.instagram-footer{display:grid;justify-items:center;gap:12px;margin-top:22px}
.instagram-footer>div:first-child{display:contents}
.instagram-footer .instagram-privacy-note{text-align:center}
.instagram-status,.instagram-privacy-note{font-size:12px!important;line-height:1.7!important;color:#6c6c73!important;margin:0!important}
.instagram-section .instagram-status a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.instagram-privacy-note{margin-top:5px!important}
.instagram-enable{appearance:none;border:0;border-radius:0;padding:0;background:transparent;color:#3e4bd9;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.instagram-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}
.instagram-controls button{appearance:none;display:grid;place-items:center;width:42px;height:42px;min-height:42px;border:1px solid #dddde2;border-radius:50%;padding:0;background:#f5f5f7;color:#0b0b0d;font-size:19px;cursor:pointer;transition:background .2s,opacity .2s}
.instagram-controls button:hover{background:#e8e8ec}
.instagram-controls button:disabled{opacity:.3;cursor:default}
.instagram-section [hidden]{display:none!important}
.instagram-section a:focus-visible,.instagram-section button:focus-visible,.instagram-grid:focus-visible{outline:3px solid #4e5cf0;outline-offset:4px}
@media(max-width:1000px){.instagram-grid{grid-auto-columns:calc((100% - 32px)/3)}}
@media(max-width:700px){.instagram-section{padding-block:44px}.instagram-heading{align-items:flex-start;gap:18px;flex-direction:column;margin-bottom:24px}.instagram-identity{gap:9px;font-size:clamp(1.75rem,8.2vw,2rem)}.instagram-account-row{font-size:clamp(1.75rem,8.2vw,2rem)}.instagram-section a.instagram-account{font-size:clamp(1.75rem,8.2vw,2rem)}.instagram-section a.instagram-follow{width:144px;height:40px;min-height:40px;border-radius:10px;font-size:15px}.instagram-grid{grid-auto-columns:78%;gap:12px;overflow:visible;overflow-x:auto;scroll-padding-left:0}.instagram-card-caption{font-size:13px}.instagram-footer{gap:12px}.instagram-controls{gap:6px}.instagram-controls button{width:36px;height:36px;min-height:36px;font-size:17px}.instagram-privacy-note{max-width:245px}.instagram-card-open{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.instagram-section *{transition:none!important}.instagram-section a.instagram-card:hover{transform:none}}

@media(max-width:360px){.instagram-identity{gap:8px}.instagram-account-row{gap:5px}}

/* Homepage section rhythm: white gallery, soft grey map, white FAQ. */
#instagram + .location-proof{background:var(--soft,#f5f5f7)}
#instagram + .location-proof .location-proof-panel{background:transparent;color:var(--ink);padding:0}
#instagram + .location-proof .location-proof-copy p:not(.eyebrow){color:var(--muted)}
#instagram + .location-proof .location-proof-address strong{color:var(--ink)}
#instagram + .location-proof .btn.light{background:var(--ink);border-color:var(--ink);color:#fff}
#instagram + .location-proof .btn.light:hover{background:var(--gold);border-color:var(--gold)}
#instagram + .location-proof + .editorial-faq{background:#fff}

@media(max-width:700px){.instagram-follow::after{content:"";position:absolute;inset:-11px 0}}
