.photography{text-align:center;border-bottom:1px solid var(--line);background:#fff;color:var(--ink)}
.photography>.section-label{text-align:left}
.photo-collections{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1150px;margin:55px auto 0;text-align:left}
.photo-collection{position:relative;overflow:hidden;border:1px solid var(--ink);padding:42px;min-height:365px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:8px 8px 0 #11111112}
.photographer-card{background:#f5f5f5}
.guest-photo-card{background:#fff}
.photo-collection h3{font-size:42px;line-height:1.1;max-width:15ch}
.photo-collection>.button,.photo-collection>.photo-actions{margin-top:auto}
.photo-card-illustration{width:90px;height:90px;margin:0 0 24px;display:grid;place-items:center;border-radius:50%;background:#efefef;color:var(--ink)}
.gold-lock{color:#a78c59;background:#f0ece4}
.photo-unlocked{color:var(--ink);background:#e9e9e9;font-size:43px}
.photo-card-illustration .photo-lock{width:52px;height:58px;margin:0;stroke-width:2.2}
.photo-phone{width:65px;height:65px}
.photo-availability{color:var(--muted);margin:0 0 22px;font-size:14px}
.photo-cta{margin-top:20px!important;border:1px solid var(--ink);padding:15px 22px;letter-spacing:1px}
.photo-cta-gold,.photo-cta-orange{background:var(--ink);color:#fff}
.photo-cta-gold:hover,.photo-cta-orange:hover{background:#fff;color:var(--ink)}
.photo-lock{display:block;width:48px;height:48px;margin-bottom:28px}
.photo-frame-icon{display:grid;place-items:center;border:1px solid currentColor;font-family:var(--serif);font-size:38px;width:48px;height:48px;margin-bottom:28px;line-height:1}
.photo-actions,.photo-tabs{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.photo-actions .text-button{padding:10px 0}
.photo-tabs{margin:35px 0}
.management-nav{position:sticky;top:12px;left:auto;right:auto;z-index:20;display:flex;align-items:center;gap:6px;width:fit-content;min-width:0;max-width:100%;padding:6px;margin:28px 0 32px;background:rgba(255,255,255,.94);color:var(--ink);border:1px solid var(--line);border-radius:99px;box-shadow:0 5px 20px #0000000a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.management-nav a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 28px;border-radius:99px;font-size:14px;letter-spacing:.5px;line-height:1.4;transition:background .2s,color .2s}
.management-nav a[aria-current="page"]{background:var(--ink);color:#fff}
.management-nav a:hover{text-decoration:none}.management-nav a:not([aria-current]):hover{background:#eee}
@media(max-width:650px){.management-nav{width:100%;margin:24px 0}.management-nav a{flex:1;padding:10px 15px}}
.mobile-photo-save{flex-basis:100%;border:1px solid var(--line);padding:20px;margin:12px 0}
.mobile-photo-save .fine{margin:12px 0 0;max-width:650px}
.mobile-photo-save .button.photo-save-preparing,.mobile-photo-save .button.photo-save-preparing:hover{color:#b8b8b8}
.mobile-photo-save .button.photo-save-ready,.mobile-photo-save .button.photo-save-ready:hover{color:#fff}
.mobile-photo-save [role="status"]{color:var(--ink)}
.mobile-save-fallback{margin-top:20px}.mobile-save-fallback .button{margin:5px 8px 5px 0}
.photo-admin-summary{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:30px;border:1px solid var(--line);margin:35px 0 45px}
.photo-admin-summary h2{margin:10px 0 18px}.photo-admin-summary>div{max-width:700px}.photo-admin-summary p:last-child{margin-bottom:0}.photo-admin-summary>a{flex-shrink:0}
.photo-storage-summary{display:flex;gap:20px;flex-wrap:wrap;padding:22px;border:1px solid var(--line);margin:25px 0}.photo-storage-summary p{margin:0}.photo-storage-summary strong{display:block;font-family:var(--serif);font-size:36px;font-weight:400;line-height:1.2}
.photo-lightbox .mobile-photo-save{margin:0;max-width:650px}.photo-lightbox>div{flex-wrap:wrap}
@media(max-width:760px){.photo-admin-summary{display:block;padding:23px}.photo-admin-summary>a{margin-top:20px}.mobile-photo-save{padding:15px;width:100%}.mobile-photo-save>.button{width:100%}}
.photo-panel{margin:40px auto 0;max-width:1250px;text-align:left;border-top:1px solid var(--line);padding-top:35px}
.photo-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.photo-panel-heading h3{font-size:38px;line-height:1.1;margin-bottom:25px}
.photo-toolbar{padding:20px 0 30px;border-bottom:1px solid var(--line);margin-bottom:25px}
.photo-toolbar form{margin:0}.photo-toolbar input[type="hidden"]{display:none}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.photo-tile{min-width:0;border:1px solid var(--line);padding:8px}
.photo-tile.selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.photo-open{display:block;width:100%;padding:0;border:0;background:#fff}
.photo-open img{width:100%;aspect-ratio:1;object-fit:cover}
.photo-select{display:flex;align-items:center;gap:9px;letter-spacing:0;line-height:1.4;margin:12px 4px 5px}
.photo-select input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--ink)}
.photo-select span{overflow-wrap:anywhere}.photo-date{font-size:10px;color:var(--muted);margin:0 4px 5px}
.photo-empty{text-align:center;padding:55px 20px}.photo-empty .photo-lock{margin:0 auto 25px}.photo-empty h3{font-size:34px;line-height:1.15}
.photo-upload{max-width:800px;padding:32px;border:1px solid var(--line);margin-bottom:30px;text-align:left}
.photo-upload h3{font-size:38px;line-height:1.1}.photo-upload input[type="file"]{padding:15px;background:#fff}
.photo-upload .check input{accent-color:var(--ink);flex-shrink:0}
.photo-upload-previews{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:25px 0}
.photo-upload-previews img{width:100%;aspect-ratio:1;object-fit:cover}.photo-upload-previews p{overflow-wrap:anywhere;font-size:11px;line-height:1.5;margin:8px 0}
.photo-upload-previews .fine{font-size:10px}.photo-upload-previews .text-button{padding:4px 0}
.photo-settings{max-width:650px;border:1px solid var(--line);padding:25px;margin:30px 0}
.photo-lightbox{max-width:min(1100px,96vw);width:max-content;padding:25px;border:0;background:#fff;color:var(--ink);max-height:96svh;overflow:auto}
.photo-lightbox::backdrop{background:#000c;backdrop-filter:blur(7px)}
.photo-tab-panel{display:inline-flex;align-items:center;gap:12px;padding:13px 19px;margin:0 0 24px;border:1px solid var(--line);background:#f5f5f5;color:var(--ink);font-size:12px;letter-spacing:1.2px}
.photo-tab-icon{font-size:20px;color:#a78c59}
.photo-tabs[role="tablist"]{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 30px;border-bottom:1px solid #dfded7}
.photo-tabs[role="tablist"] button{border:0;border-bottom:3px solid transparent;background:transparent;padding:16px 20px;color:#5d5a51;font-size:13px;letter-spacing:.4px}
.photo-tabs[role="tablist"] button.active.orange,.photo-tabs[role="tablist"] button.active.green{border-color:var(--ink);color:var(--ink)}
.photo-tabs[role="tablist"] button:hover{background:#ffffff80}
.photo-subpage{min-height:100vh;background:#fff;color:var(--ink)}
.photo-subpage-header{position:relative;top:auto;left:auto;right:auto;z-index:2;padding:20px max(5vw,22px);display:flex;align-items:center;justify-content:space-between;color:var(--ink);border-bottom:1px solid var(--line);background:#ffffffeb;backdrop-filter:blur(14px)}
.photo-home-link{font-family:var(--serif);font-size:24px;letter-spacing:2px}
.photo-language{display:flex;gap:5px;padding:4px;border:1px solid #d5d1c5;border-radius:99px}
.photo-language button{border:0;border-radius:99px;background:transparent;padding:8px 13px;font-size:11px;letter-spacing:1px;color:#45433e}
.photo-language button[aria-pressed="true"]{background:#24231e;color:#fff}
.photo-subpage-body{max-width:1180px;margin:auto;padding:55px 28px 85px}
.photo-back{display:inline-block;font-size:11px;letter-spacing:1.2px;margin:0 0 35px;color:#716c5c}
.photo-subpage-body>.eyebrow{color:var(--muted);font-size:11px;letter-spacing:2px}
.photo-subpage-body h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,7vw,82px);line-height:1;margin:14px 0 35px;max-width:850px}
.photo-subpage-switch{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 38px;border-bottom:1px solid #d8d5ca}
.photo-subpage nav.photo-subpage-switch{display:flex;position:static;inset:auto;background:transparent;padding:0;min-width:0;box-shadow:none}
.photo-subpage-switch a{padding:14px 20px;border-bottom:3px solid transparent;color:#716d62;font-size:13px}
.photo-subpage-switch a[aria-current="page"]{border-color:var(--ink);color:var(--ink)}
.photo-subpage-panel{background:#fff;border:1px solid var(--line);padding:8px 24px 24px}
.photo-subpage .photo-gallery{padding-top:15px}
.photo-back-bottom{display:inline-block;margin-top:42px;color:#6e685b;text-decoration:underline;text-underline-offset:4px}
body:has(.photo-subpage){background:#fff}
.photo-lightbox>img{max-height:75svh;max-width:100%;width:auto;height:auto;object-fit:contain;margin:auto}
.photo-lightbox>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:15px}.photo-lightbox p{margin:0;overflow-wrap:anywhere}
.photo-close{position:sticky;top:0;display:block;margin:0 0 10px auto;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:50%;font-size:30px;width:44px;height:44px;line-height:1}
@media(max-width:900px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-collections{gap:20px}.photo-collection{padding:25px}}
@media(max-width:760px){.photo-collections{grid-template-columns:1fr;margin-top:35px}.photo-collection{min-height:330px;padding:30px 25px}.photo-collection h3{font-size:36px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-upload{padding:20px 16px}.photo-upload-previews{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.photo-upload h3,.photo-panel-heading h3{font-size:32px}.photo-panel-heading{align-items:flex-start}.photo-lightbox{padding:14px}.photo-lightbox>div{flex-wrap:wrap}.photo-toolbar .photo-actions{align-items:flex-start}.photo-settings{padding:20px}.photo-subpage-body{padding:35px 20px 65px}.photo-subpage-body h1{font-size:52px}.photo-subpage-switch a{flex:1;text-align:center;padding:13px 9px;font-size:11px}.photo-subpage-panel{padding:5px 10px 20px}.photo-tabs[role="tablist"]{gap:0}.photo-tabs[role="tablist"] button{flex:1;padding:13px 8px;font-size:11px}}
@media(max-width:760px){.photography .photographer-card{background:#f5f5f5}.photography .guest-photo-card{background:#fff}.photography .gold-lock{color:#a78c59;background:#f0ece4}.photography .guest-photo-card .photo-card-illustration{color:var(--ink);background:#efefef}.photography .photo-card-illustration svg{display:block;max-width:none;flex:none}.photography .photo-cta{width:100%}.photography .photo-cta:hover{background:#fff;color:var(--ink)}.photo-subpage .photo-tab-panel{background:#f5f5f5;color:var(--ink)}.photo-subpage .photo-tab-icon{color:#a78c59}.photo-subpage .photo-tabs[role="tablist"] button.active.orange,.photo-subpage .photo-tabs[role="tablist"] button.active.green{border-color:var(--ink);color:var(--ink)}}
