@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#191a17;background:#f3f0ea;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}em{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1,h2,p{margin-top:0}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.28em}.hero{height:100svh;min-height:580px;position:relative;overflow:hidden;color:#f7f2eb;background:#262a26}.hero-backdrop,.hero-image,.hero-vignette{position:absolute;inset:0}.hero-backdrop{background-position:center 36%;background-size:cover;filter:blur(35px) brightness(.56);transform:scale(1.12)}.hero-image{inset:0 3.5%;background-position:center 36%;background-size:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.hero-vignette{background:linear-gradient(180deg,rgba(0,0,0,.38),transparent 22%,transparent 70%,rgba(0,0,0,.5)),radial-gradient(ellipse at center,rgba(0,0,0,.12),rgba(0,0,0,.38))}.site-header{position:absolute;z-index:2;left:4.5%;right:4.5%;top:32px;display:flex;justify-content:space-between;align-items:center}.wordmark{font-family:Georgia,serif;font-size:32px;line-height:1;letter-spacing:-.1em}.wordmark-dot{color:#d2a875}.header-link,.hero-index,.scroll-cue,.footer-bottom{font-size:10px;letter-spacing:.22em;font-weight:700}.header-link span{margin-left:8px}.hero-center{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px}.hero-kicker{margin-bottom:19px}.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(68px,9vw,155px);font-weight:400;line-height:.91;letter-spacing:-.055em;margin:0}.hero h1 em{font-size:.94em}.hero-rule{width:36px;height:1px;background:#e6d8c5;margin:29px 0 17px}.hero-subtitle{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;letter-spacing:.03em}.scroll-cue{position:absolute;z-index:2;bottom:33px;left:4.5%;display:flex;align-items:center;gap:18px}.arrow-down{display:grid;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:50%;width:36px;height:36px;font-size:19px;font-weight:400;animation:float 2s ease-in-out infinite}.hero-index{position:absolute;bottom:43px;right:4.5%;z-index:2}@keyframes float{50%{transform:translateY(5px)}}.work{padding:105px 0 0}.section-intro{max-width:1500px;margin:auto;padding:0 4.5% 52px;display:flex;align-items:end;justify-content:space-between;gap:30px}.section-intro .eyebrow{color:#9b7759}.section-intro h2,.footer h2,.admin-intro h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(45px,5.4vw,82px);line-height:1.06;letter-spacing:-.05em;margin:0}.section-intro>p{max-width:210px;font-size:12px;line-height:1.65;color:#74746c;margin:0 0 9px}.gallery{display:flex;flex-direction:column;gap:4px;padding:0 4px}.gallery-row{display:flex;gap:4px;height:min(88vh,900px);min-height:540px}.photo-tile{position:relative;min-width:0;overflow:hidden;background:#282b27;isolation:isolate;cursor:zoom-in}.photo-tile img{width:100%;height:100%;display:block;object-fit:cover;opacity:0;transition:opacity .7s ease,transform .8s ease}.photo-tile.ready img{opacity:1}.photo-tile:hover img{transform:scale(1.025)}.particle-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.tile-index{position:absolute;left:20px;bottom:17px;z-index:3;font-size:10px;letter-spacing:.15em;color:#fff;text-shadow:0 1px 8px #111;opacity:0;transition:opacity .3s}.photo-tile:hover .tile-index{opacity:1}.footer{position:relative;min-height:630px;color:#f4eee4;background:#20221f;overflow:hidden;margin-top:4px}.footer-illustration{position:absolute;inset:0;background:url('/footer-landscape.svg') center bottom/cover no-repeat;opacity:.85}.footer:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,21,20,.86),rgba(20,21,20,.5) 65%,rgba(20,21,20,.22))}.footer-content{position:relative;z-index:1;max-width:1500px;margin:auto;padding:115px 4.5% 30px}.footer .eyebrow{color:#d6b48b}.footer h2{font-size:clamp(50px,6vw,96px)}.footer-copy{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;color:#e2d6ca;margin:15px 0 60px}.footer-links{display:flex;gap:9px;flex-wrap:wrap}.footer-links a{border:1px solid rgba(255,255,255,.36);min-width:170px;padding:17px 18px;font-size:10px;font-weight:700;letter-spacing:.17em;display:flex;justify-content:space-between;gap:30px;transition:background .2s,color .2s}.footer-links a:hover{background:#efe8dd;color:#222}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:140px;color:#d3ccc1}.lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;background:rgba(13,15,14,.96);padding:40px 8%;color:#fff}.lightbox::backdrop,.equipment-dialog::backdrop{background:rgba(0,0,0,.7)}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:30px}.lightbox-close{right:28px;top:15px}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.2em}.equipment-dialog{max-width:520px;border:0;padding:55px;background:#f3f0ea;color:#222}.equipment-dialog h2{font-family:'Playfair Display',Georgia,serif;font-size:44px;font-weight:400}.equipment-dialog p:last-child{line-height:1.7;white-space:pre-line}.equipment-close{position:absolute;right:20px;top:10px;border:0;background:none;font-size:30px}.admin-page{background:#f3f0ea}.admin-header{height:85px;padding:0 4.5%;background:#191a17;color:#f3f0ea;display:flex;align-items:center;justify-content:space-between}.admin-view{font-size:10px;font-weight:700;letter-spacing:.18em}.admin-main{max-width:1500px;margin:auto;padding:70px 4.5% 100px}.admin-intro{max-width:720px}.admin-intro .eyebrow{color:#9b7759}.admin-intro p:last-child{max-width:530px;color:#6e6d67;line-height:1.7;margin-top:25px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ccc6ba;padding:25px 0;margin-top:30px;font-size:11px;font-weight:700;letter-spacing:.16em}.text-button{border:0;background:none;font-size:10px;letter-spacing:.13em;font-weight:700}.editor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:20px}.editor-card{background:#fff;border:1px solid #e2ded6;padding:8px}.drag-handle{display:block;padding:3px 5px 7px;font-size:9px;letter-spacing:.12em;color:#87755f;cursor:grab}.editor-card.dragging{opacity:.4}.editor-card.drag-over{outline:3px solid #b99870}.editor-thumb{height:200px;width:100%;object-fit:cover;display:block}.editor-card-bottom{padding:13px 5px 5px;display:flex;justify-content:space-between;gap:10px;align-items:center}.editor-card-bottom span{font-size:11px;font-weight:700}.editor-card select{background:#f3f0ea;border:0;padding:7px 9px;font-size:11px}.editor-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;padding:0 5px 5px}.editor-actions button{background:transparent;border:0;font-size:12px;color:#6e6d67;text-decoration:underline;padding:3px}.admin-settings{border-top:1px solid #ccc6ba;margin-top:80px;padding-top:50px;display:grid;grid-template-columns:1fr 1fr;gap:45px}.admin-settings h2{font-family:'Playfair Display',Georgia,serif;font-size:44px;font-weight:400}.settings-fields{display:flex;flex-direction:column;gap:18px}.settings-fields label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700;letter-spacing:.06em}.settings-fields input,.settings-fields textarea{background:#fff;border:1px solid #d5d0c5;padding:13px 14px;outline:none}.settings-fields input:focus,.settings-fields textarea:focus{border-color:#927252}.primary-button{border:0;background:#1d211e;color:#fff;padding:16px 22px;align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.13em}.admin-note{margin-top:65px;padding:25px;background:#e8e3d9;font-size:12px;line-height:1.65;color:#59574f}.admin-note p{margin:5px 0 0}.admin-note code{font-size:11px}@media(max-width:800px){.hero{min-height:540px}.hero-image{inset:0 1%}.hero h1{font-size:clamp(62px,14vw,100px)}.hero-index{display:none}.section-intro{display:block;padding-bottom:35px}.section-intro>p{margin-top:18px}.gallery-row{height:auto;flex-direction:column;gap:4px}.photo-tile{width:100%;height:min(82vh,760px);flex:none!important}.photo-tile.portrait{height:min(95vh,850px)}.footer-content{padding-top:100px}.footer-bottom{margin-top:100px}.editor-grid{grid-template-columns:repeat(2,1fr)}.admin-settings{grid-template-columns:1fr}}@media(max-width:520px){.site-header{top:24px}.header-link{font-size:9px}.hero h1{font-size:18vw}.hero-subtitle{font-size:15px}.scroll-cue{bottom:25px}.work{padding-top:72px}.section-intro h2{font-size:44px}.photo-tile{height:62vh}.photo-tile.portrait{height:82vh}.footer{min-height:700px}.footer-links{flex-direction:column}.footer-links a{width:100%}.footer-bottom{font-size:8px;letter-spacing:.1em}.admin-main{padding-top:45px}.admin-intro h1{font-size:53px}.editor-grid{grid-template-columns:1fr}.editor-thumb{height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Scroll gallery and in-place editor */
body{background:#27231f}.work{padding:0;background:#27231f}.gallery{display:block;padding:0;background:#27231f}.gallery-row{position:relative;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:0;height:100svh;min-height:540px}.photo-tile{grid-column:span 8;position:relative;min-width:0;min-height:0;background:#27231f;overflow:hidden;cursor:zoom-in}.photo-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:none;transform:none!important}.photo-tile:hover img{transform:none}.particle-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.caption-hotspot{position:absolute;z-index:5;left:0;bottom:0;width:112px;height:112px;display:flex;align-items:end;justify-content:start;padding:24px;background:none;border:0;color:#fff;font-size:24px;font-weight:300;text-align:left;text-shadow:0 1px 10px #000;cursor:help;opacity:.55;transition:opacity .2s}.caption-hotspot:hover,.caption-hotspot:focus-visible,.caption-open .caption-hotspot{opacity:1}.caption-popover{position:absolute;z-index:4;left:20px;bottom:88px;width:min(280px,calc(100% - 40px));padding:20px 22px;background:rgba(24,22,21,.88);color:#f5eee4;backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:9px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;pointer-events:none}.caption-hotspot:hover+.caption-popover,.caption-hotspot:focus-visible+.caption-popover,.caption-open .caption-popover{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.caption-number{font-size:9px;font-weight:700;letter-spacing:.22em;color:#ccae8c}.caption-name{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-style:italic}.footer{margin-top:0}.empty-gallery{min-height:60vh;display:grid;place-items:center;color:#e9e0d5;padding:30px}
.admin-toolbar[hidden]{display:none}.admin-toolbar{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:20;display:flex;align-items:center;gap:0;max-width:calc(100vw - 24px);background:#ece7dd;color:#21211f;box-shadow:0 14px 45px #0008;padding:7px;white-space:nowrap}.admin-toolbar>*{padding:12px 13px}.admin-title{font-family:Georgia,serif;font-size:13px;font-weight:700}.grid-label{font-size:9px;letter-spacing:.12em;color:#8d7861;border-left:1px solid #c8c0b3}.admin-toolbar button,.admin-toolbar a{border:0;border-left:1px solid #c8c0b3;background:transparent;font-size:9px;font-weight:700;letter-spacing:.11em;color:#24231f}.admin-toolbar button:hover,.admin-toolbar a:hover{background:#d8cdbd}.editing-grid .gallery-row:after{content:'';position:absolute;inset:0;z-index:6;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 24 - 1px),rgba(235,212,185,.28) calc(100% / 24 - 1px),rgba(235,212,185,.28) calc(100% / 24));mix-blend-mode:screen}.editing-grid .photo-tile{outline:1px solid rgba(235,212,185,.6);outline-offset:-1px}.editing-grid .photo-tile img{opacity:1!important}.editing-grid .photo-tile .particle-canvas{display:none}.tile-tools{display:none;position:absolute;z-index:8;left:9px;top:9px;gap:4px;flex-wrap:wrap;max-width:calc(100% - 20px)}.editing-grid .tile-tools{display:flex}.tile-tools button,.move-grip{border:0;background:rgba(27,26,24,.88);color:#f6eee3;padding:8px 9px;font-size:9px;font-weight:700;letter-spacing:.06em;cursor:pointer}.move-grip{cursor:grab;user-select:none}.tile-tools button:hover,.move-grip:hover{background:#b28c64}.resize-handle{display:none;position:absolute;z-index:9;right:-10px;top:50%;transform:translateY(-50%);width:24px;height:90px;background:#f2eadf;color:#29251f;align-items:center;justify-content:center;box-shadow:0 2px 14px #0008;border-radius:3px;cursor:ew-resize;touch-action:none}.editing-grid .resize-handle{display:flex}.resize-handle span{font-size:16px}.drop-target{box-shadow:inset 0 0 0 6px #d9b485}.dragging{opacity:.5}
.admin-dialog,.caption-dialog{width:min(550px,calc(100vw - 30px));max-height:min(86vh,800px);overflow:auto;border:0;background:#f3f0ea;color:#24231f;padding:46px;box-shadow:0 24px 80px #0008}.admin-dialog::backdrop,.caption-dialog::backdrop{background:#0009}.admin-dialog h2,.caption-dialog h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:46px;letter-spacing:-.04em;margin:0 0 14px}.admin-dialog h3{font-family:'Playfair Display',Georgia,serif;font-size:28px;font-weight:400;margin:35px 0 15px}.admin-help,.admin-note{font-size:12px;line-height:1.7;color:#6d685e}.admin-note{background:#e8e3d9;padding:16px;margin:32px 0 0}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:28px}.settings-fields{display:flex;flex-direction:column;gap:16px;margin-top:25px}.settings-fields label,.caption-dialog label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;letter-spacing:.05em}.settings-fields input,.settings-fields textarea,.caption-dialog input{background:#fff;border:1px solid #d5d0c5;padding:12px}.primary-button{border:0;background:#22231f;color:#fff;padding:14px 20px;font-size:10px;font-weight:700;letter-spacing:.13em;align-self:flex-start;margin-top:7px}.caption-dialog .primary-button{margin-top:20px}.hidden-item{display:flex;align-items:center;gap:15px;margin:8px 0}.hidden-item img{width:66px;height:60px;object-fit:cover}.hidden-item button{border:1px solid #b3aa9c;background:transparent;padding:8px;font-size:10px;letter-spacing:.1em}
@media(max-width:800px){.gallery-row{display:block;height:auto;min-height:0}.photo-tile{width:100%;height:100svh;min-height:520px}.photo-tile.portrait{height:100svh}.editing-grid .gallery-row:after{display:none}.resize-handle{display:none!important}.admin-toolbar{left:10px;right:10px;transform:none;bottom:10px;max-width:none;flex-wrap:wrap;justify-content:center}.admin-toolbar>*{padding:9px}.grid-label{display:none}}@media(max-width:520px){.photo-tile,.photo-tile.portrait{height:100svh;min-height:520px}.admin-toolbar{gap:0}.admin-title{width:100%;text-align:center}.admin-toolbar button,.admin-toolbar a{font-size:8px}.admin-dialog,.caption-dialog{padding:35px 25px}}

/* Direct photo arranging and crop choices */
.editing-grid .photo-tile{cursor:grab}.editing-grid .photo-tile:active{cursor:grabbing}.tile-tools{max-width:calc(100% - 28px)}.move-grip{cursor:grab}.drag-ghost{position:fixed;z-index:100;pointer-events:none;width:150px;height:110px;transform:translate(-50%,-50%) rotate(-5deg);border:3px solid #e8d8bf;box-shadow:0 20px 45px #0009;overflow:hidden;background:#29231d}.drag-ghost img{width:100%;height:100%;object-fit:cover;opacity:1!important}.editing-grid .photo-tile.drop-target{box-shadow:inset 0 0 0 7px #f1c391}.editing-grid .photo-tile.dragging{opacity:.36}
@media(max-width:800px){.gallery-row{height:auto!important}.photo-tile.landscape{height:74svh;min-height:440px}.photo-tile.portrait{height:108svh;min-height:600px}}
@media(max-width:520px){.photo-tile.landscape{height:70svh;min-height:430px}.photo-tile.portrait{height:103svh;min-height:560px}}

/* Quiet cover and understated links */
.scroll-cue{left:50%;transform:translateX(-50%);bottom:28px}.scroll-cue .arrow-down{width:40px;height:40px;background:#1516133b;border-color:#fff8}
.footer{min-height:350px}.footer:after{background:linear-gradient(180deg,rgba(20,21,20,.69),rgba(20,21,20,.78))}.footer-content{min-height:350px;padding:76px 4.5% 25px;display:flex;flex-direction:column;align-items:center;text-align:center}.footer-name{font-family:'Playfair Display',Georgia,serif;font-size:clamp(28px,3vw,42px);font-weight:400;letter-spacing:-.025em;margin:0 0 28px}.footer-links{justify-content:center;gap:clamp(18px,3vw,44px)}.footer-links a{min-width:0;width:auto;padding:0;border:0;background:none;font-size:11px;font-weight:500;letter-spacing:.03em;text-transform:none;gap:7px}.footer-links a:hover{background:none;color:#d8b894}.footer-bottom{width:100%;margin-top:auto;font-size:9px;letter-spacing:.09em}.footer-bottom a{font-size:19px;line-height:1}
.footer-bottom-actions{display:flex;align-items:center;gap:28px}.footer-bottom .footer-admin{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:.05em;text-transform:none;opacity:.75}.footer-bottom .footer-admin:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}

/* A centered, scaled gallery overview for arranging distant rows */
.editing-grid .hero,.editing-grid .footer{display:none}.editing-grid .work{min-height:100svh;padding:30px 0 170px}.editing-grid .gallery{width:var(--editor-width,25vw);margin:0 auto;box-shadow:0 0 0 1px #e7d7be66,0 20px 80px #0005}.editing-grid .gallery-row{min-height:0!important;display:grid!important;grid-template-columns:repeat(24,minmax(0,1fr));height:auto}.editing-grid .photo-tile,.editing-grid .photo-tile.portrait,.editing-grid .photo-tile.landscape{width:auto;height:auto;min-height:0;grid-column:auto;touch-action:none}.editing-grid .photo-tile img{width:100%;height:100%}.editing-grid .caption-hotspot,.editing-grid .caption-popover,.editing-grid .tile-tools{display:none}.editing-grid .resize-handle{display:none}.editing-grid .photo-tile.selected .resize-handle{display:flex}.editing-grid .photo-tile.selected{outline:2px solid #f0c798;outline-offset:-2px;z-index:2}.editing-grid .photo-tile.dragging{opacity:.34}.editing-grid .gallery-row:after{display:none}
.photo-inspector[hidden]{display:none}.photo-inspector{position:fixed;z-index:21;left:50%;bottom:78px;transform:translateX(-50%);display:flex;align-items:center;gap:3px;max-width:calc(100vw - 20px);padding:7px;background:#e9e2d5;color:#29241f;box-shadow:0 12px 38px #0007;white-space:nowrap}.photo-inspector span{font-size:10px;font-weight:700;letter-spacing:.09em;padding:0 10px}.photo-inspector button{border:0;background:transparent;padding:10px;font-size:10px;font-weight:700;letter-spacing:.05em}.photo-inspector button:hover{background:#d6c7b4}.photo-inspector button:disabled{opacity:.35;cursor:default}.editor-zoom-label{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.1em}.editor-zoom-label input{width:90px;accent-color:#9b795d}.editor-zoom-label span{min-width:30px}.admin-preview .editor-zoom-label{opacity:.4;pointer-events:none}
@media(max-width:800px){.editing-grid .gallery-row{height:auto!important}.editing-grid .photo-tile,.editing-grid .photo-tile.portrait,.editing-grid .photo-tile.landscape{height:auto;min-height:0}.photo-inspector{bottom:108px;flex-wrap:wrap;justify-content:center;width:min(420px,calc(100vw - 20px))}.admin-toolbar{max-width:calc(100vw - 20px)}.editor-zoom-label input{width:65px}}

/* Cover lettering and a simple drawn scroll arrow */
.hero-center h1{text-shadow:0 4px 28px #0008}.hero-subtitle{margin:25px 0 0;color:#f5eee7;font-family:'Playfair Display',Georgia,serif;font-size:clamp(17px,2vw,23px);font-style:italic;font-weight:400;letter-spacing:.025em;text-shadow:0 2px 18px #000a}.scroll-cue .arrow-down{width:32px;height:48px;border:0;border-radius:0;background:none;font-size:inherit}.scroll-cue svg{display:block;width:28px;height:46px;filter:drop-shadow(0 2px 7px #0009)}

/* Editing tools beside the gallery */
.editing-grid .work{position:relative}.hidden-shelf[hidden]{display:none}.hidden-shelf{display:none}.editing-grid .hidden-shelf{display:block;position:absolute;top:30px;left:calc(50% + var(--editor-half-width,12.5vw) + 27px);width:min(180px,calc(50vw - var(--editor-half-width,12.5vw) - 45px));min-width:125px;color:#eee5d8}.shelf-label,.shelf-heading{font-size:9px;font-weight:700;letter-spacing:.14em;color:#b69b7c}.shelf-label{margin:0 0 11px}.shelf-tip{font-family:'Playfair Display',Georgia,serif;font-size:17px;line-height:1.35;margin:0 0 23px}.shelf-rule{height:1px;background:#ffffff28;margin-bottom:22px}.shelf-heading{display:flex;justify-content:space-between;gap:8px;margin-bottom:13px}.hidden-empty{margin:0;font-size:11px;color:#aa9d8f}.hidden-shelf .hidden-item{display:block;margin:0 0 12px;background:#ffffff0c;padding:5px}.hidden-shelf .hidden-item img{display:block;width:100%;height:92px;object-fit:cover}.hidden-shelf .hidden-item button{display:block;width:100%;border:0;background:none;color:#e5d4bd;padding:9px 2px 4px;text-align:left;text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.09em}.hidden-shelf .hidden-item button:hover{color:#fff}
.editing-grid .photo-tile.selected{outline:2px solid #f5c38c;outline-offset:-2px;box-shadow:0 0 0 3px #f5c38c99,0 0 24px 6px #e9ad76bb;z-index:4}.drag-ghost{border:0;border-radius:0;box-shadow:0 12px 35px #000a;transform:translate(-50%,-50%) rotate(-3deg)}.editing-grid .gallery{box-shadow:0 18px 70px #0006}

/* A focused links drawer; clicking the surrounding area closes it */
.admin-dialog{inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:transparent;box-shadow:none}.admin-dialog::backdrop{background:rgba(15,13,12,.66)}.details-panel{position:absolute;right:0;top:0;bottom:0;width:min(440px,100vw);padding:58px 42px 35px;background:#ede8df;color:#28231e;box-shadow:-18px 0 60px #0005;overflow:auto}.details-panel .eyebrow{color:#97785a}.details-panel h2{font-size:clamp(38px,4vw,52px);margin:12px 0 12px}.details-panel .admin-help{max-width:330px;margin:0 0 30px;color:#6f675e;font-size:13px;line-height:1.6}.details-panel .settings-fields{margin-top:0;gap:20px}.details-panel .settings-fields label{font-size:10px;letter-spacing:.1em;color:#695f54}.details-panel .settings-fields input,.details-panel .settings-fields textarea{border:1px solid #cfc5b8;background:#f8f5ef;border-radius:0;font-size:13px;letter-spacing:0;color:#26211c}.details-panel .primary-button{width:100%;margin-top:6px}.details-panel .admin-note{padding:0;margin:30px 0 0;background:none;color:#8b8074;font-size:11px}.details-panel .dialog-close{top:15px;right:22px;color:#514b43}
@media(max-width:700px){.editing-grid .hidden-shelf{left:auto;right:9px;width:min(130px,23vw);min-width:0}.shelf-tip{font-size:14px}.hidden-shelf .hidden-item img{height:70px}.details-panel{padding:56px 28px 30px}}
/* Password gate and simple photo management */
.admin-gate[hidden]{display:none}.admin-locked main,.admin-loading main,.admin-locked .admin-toolbar,.admin-loading .admin-toolbar{display:none}.admin-gate{min-height:100svh;display:grid;place-items:center;padding:25px;background:#27231f;color:#f3eee7}.login-card{width:min(420px,100%);padding:42px;background:#eee8dd;color:#29241f;box-shadow:0 25px 80px #0006}.login-card h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:44px;line-height:1.1}.login-card p{font-size:13px;line-height:1.6}.login-card label{display:grid;gap:8px;margin:25px 0 15px;font-size:11px;font-weight:700;letter-spacing:.1em}.login-card input{padding:13px;border:1px solid #b8aa98;background:#fff}.login-card .primary-button{width:100%}.login-card #login-status{min-height:18px;color:#9b462e;margin:15px 0 0}.footer-links #social-links{display:contents}.footer-bottom>span:empty{display:block}.hidden-shelf .upload-zone,.trash-zone{border:1px dashed #bca68d;color:#eee5d8;min-height:115px;padding:14px 8px;margin:0 0 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}.upload-zone:hover,.upload-zone.drag-over,.trash-zone:hover,.trash-zone.drag-over{background:#ae815a46;border-color:#f1c998}.upload-zone>span,.trash-zone>span{font-size:28px;line-height:1}.upload-zone strong,.trash-zone strong{font-size:9px;letter-spacing:.15em}.upload-zone small,.trash-zone small{font-size:10px;line-height:1.35;color:#cbbdac}.shelf-status{font-size:10px;line-height:1.4;color:#ead0af;min-height:14px}.hidden-shelf .hidden-item button:last-child{color:#d7a493}.hidden-shelf .hidden-item button:last-child:hover{color:#ffcfba}.shelf-heading small{font-weight:400;letter-spacing:0}.link-row{display:grid;grid-template-columns:1fr 1.5fr auto;gap:6px;margin-bottom:8px}.link-row input{min-width:0!important}.link-row button,.secondary-button{border:1px solid #bcae9d;background:transparent;color:#4e4034;padding:10px;cursor:pointer}.secondary-button{font-size:10px;letter-spacing:.1em}.photo-edit-dialog{width:min(550px,calc(100vw - 25px))}.edit-preview{width:100%;height:250px;background:#29241f;margin:16px 0 22px}.edit-preview.portrait{width:55%;margin-left:auto;margin-right:auto;height:300px}.edit-preview img{width:100%;height:100%;object-fit:cover}.photo-edit-dialog label{margin:14px 0}.photo-edit-dialog input[type=range]{padding:0;accent-color:#927252}.shape-picker{display:flex;gap:18px;border:0;padding:10px 0;margin:10px 0}.shape-picker legend{font-size:11px;font-weight:700}.shape-picker label{flex-direction:row;align-items:center;margin:0}.shape-picker input{padding:0}.edit-hint{font-size:11px;line-height:1.5;color:#746a5f}.footer-bottom-actions{margin-left:auto}
@media(max-width:700px){.link-row{grid-template-columns:1fr auto}.link-row input:nth-child(2){grid-column:1;grid-row:2}.link-row button{grid-column:2;grid-row:1/3}.editing-grid .hidden-shelf{width:min(160px,31vw)}.hidden-shelf .upload-zone,.trash-zone{min-height:90px;padding:8px 5px}.upload-zone small,.trash-zone small{font-size:8px}}
