*{box-sizing:border-box}body{margin:0;background:#f8f7f3;color:#252620;font:15px/1.5 Arial,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}header:not(.lux-nav){height:88px;max-width:1160px;padding:0 32px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #deded5}header:not(.lux-nav)>a:last-child{font-size:13px;text-decoration:none}.logo{font-size:29px;font-weight:800;letter-spacing:-1.5px;text-decoration:none}.logo span{font-weight:400}main{max-width:1160px;margin:auto;padding:42px 32px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#7146a1}.intro{position:relative;margin-bottom:36px}.intro h1{font-size:62px;line-height:1.02;font-weight:500;letter-spacing:-3.5px;margin:14px 0 18px}.intro p{position:absolute;left:390px;bottom:0;color:#9274b1;margin:0}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:42px;align-items:start}.section{border-top:1px solid #ded1ec}.section:last-of-type{border-bottom:1px solid #ded1ec}.section-title{width:100%;border:0;display:flex;align-items:center;text-align:left;background:none;padding:24px 0;gap:20px;cursor:pointer}.number{font-size:12px;width:32px;height:32px;display:grid;place-items:center;border:1px solid #ded1ec;border-radius:50%;color:#7146a1}.section.active .number{background:#583480;color:white;border-color:#583480}.section.complete .number{background:#efe8f7}.section-title>span:nth-child(2){font-size:21px;letter-spacing:-.5px}.section-title small{font-size:12px;font-weight:400;letter-spacing:0;color:#9274b1;display:block;margin-top:2px}.edit{margin-left:auto;font-size:11px;color:#9274b1}.active .edit{visibility:hidden}.section-body{display:none;padding:0 0 28px 52px}.active .section-body{display:block}.label,label{display:block;font-size:13px;margin:0 0 18px}.label{margin:22px 0 10px}.label b{float:right;font-size:12px;font-weight:400;color:#9274b1}input:not([type=range]):not([type=radio]):not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #ded1ec;background:#fff;border-radius:5px;padding:12px;margin-top:7px;color:#252620}textarea{resize:vertical}input:focus-visible,button:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #9274b1;outline-offset:3px}.segmented{display:flex;gap:0;border:1px solid #ded1ec;border-radius:6px;overflow:hidden}.option{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:1;font-size:13px;padding:14px 8px;margin:0;border-right:1px solid #ded1ec;background:white}.option:last-child{border-right:0}.option input{position:absolute;opacity:0;width:1px;height:1px}.option.selected{background:#583480;color:white}.option:focus-within{outline:2px solid #9274b1;outline-offset:-3px}.audience{display:flex;gap:12px}.audience .option{border:1px solid #ded1ec;border-radius:5px;justify-content:flex-start;padding:12px 16px;gap:12px}.audience .option:before{content:'';width:13px;height:13px;border-radius:50%;border:1px solid #baa3d5}.audience .selected{background:#efe8f7;color:#583480;border-color:#9274b1}.audience .selected:before{background:#583480;box-shadow:inset 0 0 0 3px #efe8f7}.subjects{display:flex;flex-wrap:wrap;gap:8px}.subjects .option{border:1px solid #ded1ec;flex:none;border-radius:100px;padding:9px 15px;font-size:12px}.subjects .selected{background:#efe8f7;color:#583480;border-color:#9274b1}input[type=range]{width:100%;accent-color:#583480}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:#9274b1;margin-bottom:18px}.next{margin-top:22px;background:#583480;color:#fff;border:0;border-radius:5px;display:flex;justify-content:space-between;width:100%;padding:15px 19px;cursor:pointer;font-size:13px}.next:hover{background:#583480}.next:disabled{opacity:.5;cursor:wait}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hint,.optional{font-size:11px;color:#9274b1}.hint{margin-top:-5px;margin-bottom:18px}.optional{float:right}aside{position:sticky;top:25px}.quote{background:#efe8f7;border-radius:8px;padding:28px}.quote h2{font-size:23px;line-height:1.25;font-weight:500;letter-spacing:-.7px;margin:24px 0 8px}.quote p{font-size:12px;color:#5b5463}.quote dl{margin:28px 0}.quote dl>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:10px 0}.quote dt{color:#5b5463}.quote dd{margin:0;text-align:right;max-width:180px}.amount{border-top:1px solid #ded1ec;padding-top:20px}.amount small{font-size:10px;color:#5b5463}.amount strong{font-size:43px;line-height:1.2;letter-spacing:-2px;font-weight:500;display:block;margin:7px 0}.amount.custom strong{font-size:28px;letter-spacing:-1px}.quote-foot{font-size:10px;color:#9274b1;margin-top:24px;line-height:1.7}.side-note{font-size:11px;color:#9274b1;padding:8px 12px;line-height:1.8}.side-note a{text-decoration:none;color:#583480}.check{display:flex;gap:10px;font-size:12px;align-items:flex-start}.check input{margin-top:4px;accent-color:#583480}.review-item{padding:12px 0;border-bottom:1px solid #efe8f7;font-size:13px}.review-item small{display:block;font-size:10px;color:#9274b1;margin-bottom:4px}#flow-status{color:#a33328;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.zip-area-row{margin-top:7px}.zip-area-row .zip-input{margin-top:0}.area-quick{border:1px solid #ded1ec;background:#fff;border-radius:5px;padding:12px;color:#252620;font-size:15px}
footer{margin-top:45px;border-top:1px solid #deded5;padding-top:20px;display:flex;gap:20px;justify-content:space-between;color:#baa3d5;font-size:10px}@media(max-width:760px){header:not(.lux-nav){padding:0 22px;height:70px}main{padding:28px 22px}.intro h1{font-size:48px}.intro p{position:static;font-size:13px}.layout{grid-template-columns:1fr;gap:24px}aside{position:static}.section-body{padding-left:0}.section-title{gap:14px}.quote{padding:22px}.quote dl{margin:18px 0}.amount strong{font-size:34px}.two{gap:12px}.segmented .option{font-size:12px}footer{flex-wrap:wrap;justify-content:flex-start;gap:10px 20px}.section-title>span:nth-child(2){font-size:20px}}
.logo{font-size:25px;letter-spacing:-1px}.logo small{display:block;font-size:9px;font-weight:400;letter-spacing:1.5px;color:#9274b1;margin-top:1px}.intro h1{font-size:43px;letter-spacing:-1.7px;margin:10px 0}.intro p{position:static;font-size:13px}.intro{margin-bottom:28px}.price-list{margin-top:24px;border:1px solid #ded1ec;background:#fff;border-radius:8px;padding:16px}.price-list summary{display:flex;justify-content:space-between;cursor:pointer;font-size:12px;font-weight:600}.price-list p{font-size:10px;color:#9274b1;line-height:1.6}.price-list table{width:100%;border-collapse:collapse;font-size:11px}.price-list caption{text-align:left;font-size:10px;color:#9274b1;margin:12px 0}.price-list th,.price-list td{padding:7px 4px;border-bottom:1px solid #efe8f7;text-align:left}.price-list td button{border:0;background:#faf8fc;color:#583480;border-radius:4px;padding:5px 6px;cursor:pointer;font-size:11px}.continue-below{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:10;border:1px solid #ded1ec;border-radius:100px;box-shadow:0 4px 20px #14200d15;background:#fffef7;color:#583480;display:flex;align-items:center;gap:14px;padding:11px 23px;text-align:left;cursor:pointer;font-size:12px}.continue-below[hidden]{display:none}.continue-below small{display:block;font-size:10px;color:#9274b1}.down-arrow{font-size:27px;animation:down-nudge 1.5s ease-in-out infinite}@keyframes down-nudge{0%,100%{transform:translateY(-3px)}50%{transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){.down-arrow{animation:none}}[data-section]{scroll-margin-top:20px}#reference-prices{max-height:340px;overflow:auto}footer{padding-bottom:70px}@media(max-width:760px){.intro h1{font-size:34px}.logo{font-size:23px}.continue-below{bottom:14px;white-space:nowrap;padding:9px 18px}.quote{margin-top:5px}.price-list{margin-top:15px}}
.combined-breakdown{display:grid;gap:6px;margin:12px 0 15px;font-size:11px;color:#5b5463}.combined-breakdown span{display:flex;justify-content:space-between}.combined-breakdown b{font-weight:500}.amount>small:last-child{display:block;line-height:1.7} .price-list th,.price-list td{padding:7px 2px}.price-list td button{padding:5px 3px;font-size:10px}
#clear-flow-draft{border:0;background:none;color:inherit;padding:0;font-size:inherit;text-decoration:underline;cursor:pointer}.v-night .combined-breakdown{color:#baa3d5}.v-night .price-list{background:#382647;border-color:#583480}.v-night .price-list p{color:#baa3d5}.v-night .price-list button{background:#583480;color:#ded1ec}
#region-options{margin-bottom:0}#region-options+.hint{display:block;clear:both;margin:16px 0 26px!important;font-size:12px;line-height:1.7;max-width:100%}#region-options .option{min-height:58px}#region-options .option span{line-height:1.4}

#subjects .option{display:flex;align-items:center;gap:10px;padding:8px 12px}#subjects .option img{width:56px;height:42px;object-fit:cover;border-radius:5px;flex-shrink:0}#subjects .option span{line-height:1.3}

.time-slots{margin:-4px 0 18px}.time-slots small{display:block;font-size:11px;color:#5b5463;margin-bottom:8px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px}.slot-grid button{border:1px solid #ded1ec;background:#fff;color:#382647;border-radius:5px;padding:9px 4px;font-size:12px;cursor:pointer}.slot-grid button:hover:not(:disabled){border-color:#9274b1;background:#faf8fc}.slot-grid button.on{background:#583480;border-color:#583480;color:#fff}.slot-grid button:disabled{background:#f3f1f5;color:#b9adc6;text-decoration:line-through;cursor:not-allowed}.slot-none{color:#a33328!important}

.picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;margin:4px 0 22px;padding:20px;background:#fff;border:1px solid #ded1ec;border-radius:10px}
.pk-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.pk-head b{font-size:15px;font-weight:600}.pk-head button{width:34px;height:34px;border:1px solid #ded1ec;border-radius:50%;background:#fff;color:#583480;font-size:18px;line-height:1;cursor:pointer}.pk-head button:disabled{opacity:.35;cursor:default}
.pk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.pk-grid small{font-size:11px;color:#9274b1;padding:4px 0}
.pk-grid button{aspect-ratio:1;max-height:46px;width:100%;border:0;border-radius:50%;background:none;font-size:13px;color:#c9bfd4;position:relative;cursor:default;padding:0}
.pk-grid button.ok{background:#efe8f7;color:#382647;font-weight:600;cursor:pointer}.pk-grid button.ok:hover{box-shadow:0 0 0 2px #9274b1 inset}.pk-grid button.sel{background:#583480!important;color:#fff!important}
.pk-grid button.few::after{content:'';position:absolute;bottom:4px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#e39b57}.pk-grid button.wait{color:#d8d0e0}
.pk-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:11px;color:#5b5463;margin-top:12px}.pk-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}.lg-ok{background:#efe8f7}.lg-few{background:#e39b57}.lg-off{background:#ece8f0}
.pk-day{font-size:15px;font-weight:600;color:#382647;margin:6px 0 10px}#time-slots h4{font-size:11px;letter-spacing:1.4px;color:#9274b1;font-weight:600;margin:14px 0 8px}#time-slots h4:first-child{margin-top:0}#time-slots small{font-size:12px;color:#5b5463}
.slot-chips{display:flex;flex-wrap:wrap;gap:7px}.slot-chips button{border:1px solid #ded1ec;background:#fff;border-radius:100px;padding:8px 13px;font-size:12px;color:#382647;cursor:pointer}.slot-chips button:hover:not(:disabled){border-color:#9274b1}.slot-chips button.on{background:#583480;border-color:#583480;color:#fff}.slot-chips button:disabled{background:#f3f1f5;border-color:#ece8f0;color:#b9adc6;text-decoration:line-through;cursor:not-allowed}
.slot-note{font-size:11px;color:#9274b1;margin:12px 0 0}.pk-chosen{margin:16px 0 0;padding:12px 14px;background:#efe8f7;border-radius:8px;font-size:13px;color:#382647}.pk-chosen b{color:#583480}.slot-none{color:#a33328!important}
@media(max-width:760px){.picker{grid-template-columns:1fr;gap:20px;padding:14px}}

.zip-input{max-width:260px;font-size:16px!important;letter-spacing:1px}.zip-result{font-size:13px;margin:8px 0 6px;padding:10px 12px;border-radius:6px;background:#f3f1f5;color:#5b5463}.zip-result.local{background:#e7f4ec;color:#2f6b45}.zip-result.extended{background:#fdf1e4;color:#8a5216}.zip-result.nyc{background:#efe8f7;color:#583480}.zip-result.outside,.zip-result.invalid{background:#fbeceb;color:#a33328}
.zip-result.nystate{background:#e8f0fb;color:#24508a}

#subjects.subjects{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:640px){#subjects.subjects{grid-template-columns:1fr}}
#subjects .option.subj{display:flex;align-items:center;gap:14px;border:1.5px solid #e4dcee;border-radius:14px;padding:10px 14px 10px 10px;background:#fff;color:#1f1828;font-size:14px;flex:none;min-width:0;transition:border-color .18s,background .18s}
#subjects .option.subj:before{display:none}
#subjects .option.subj:hover{border-color:#583480}
#subjects .option.subj img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex-shrink:0}
#subjects .subj-tx{flex:1;min-width:0;line-height:1.3}
#subjects .subj-tx b{display:block;font-weight:700;font-size:15px}
#subjects .subj-tx small{display:block;color:#6b6077;font-size:12.5px;margin-top:3px}
#subjects .subj-radio{flex:0 0 22px;height:22px;border-radius:50%;border:2px solid #e4dcee;transition:.18s}
#subjects .option.subj.selected{border-color:#583480;background:#efe8f7;color:#1f1828}
#subjects .option.subj.selected .subj-radio{border-color:#583480;background:#583480;box-shadow:inset 0 0 0 4px #efe8f7}
#subjects .option.subj:focus-within{outline:2px solid #9274b1;outline-offset:2px}

.edit-groups{display:grid;gap:12px;margin:18px 0 6px}
.edit-groups .label small{font-weight:400;color:#7d6c8f}
.edit-groups .hint{margin:0}
.edit-group{display:grid;gap:6px}
.edit-group>b{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#583480;margin-top:6px}
.edit-opt{display:flex!important;align-items:center;gap:10px;border:1.5px solid #e4dcee;border-radius:12px;padding:10px 14px;cursor:pointer;margin:0!important;font-size:14px;background:#fff}
.edit-opt:hover{border-color:#583480}
.edit-opt input{accent-color:#583480;width:18px;height:18px;margin:0;flex:none}
.edit-opt span{flex:1;min-width:0}
.edit-opt em{font-style:normal;font-weight:700;color:#382647;white-space:nowrap}
.edit-opt:has(input:checked){border-color:#583480;background:#efe8f7}
.edit-opt.custom em{color:#7d6c8f;font-weight:600}
.mode-note{display:block;font-size:11px;line-height:1.3;color:#8a7d97;margin-top:2px;font-weight:400}
.option.selected .mode-note{color:#e3d6f1}
.edit-missing{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0 4px;padding:9px 11px;border:1px dashed #b0892a;border-radius:6px;background:#fff8e6;color:#7a5410;font-size:12px}
.edit-missing .edit-add{background:none;border:0;padding:0;color:#7a5410;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.addr{border:0;padding:0;margin:0 0 4px;min-width:0}.addr legend{font-size:13px;font-weight:700;color:#30243d;margin:0 0 12px;padding:0}.addr-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:14px;align-items:start}.addr-zip{font-size:13px;margin:0 0 18px}.addr-zip b{display:block;margin-top:7px;border:1px solid #ded1ec;background:#f6f2fa;border-radius:5px;padding:12px;font-weight:600;color:#583480;letter-spacing:1px}.addr-zip small{display:block;margin-top:5px;font-size:11px;color:#9274b1}@media(max-width:520px){.addr-row{grid-template-columns:minmax(0,1fr) 110px}}
/* The shared site header: same alignment and type as on the other pages. */
header.lux-nav{align-items:center;font-size:16px;line-height:normal}
/* Photo + video: separate hours, shown as one session timeline. */
.pv-hours{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 18px}.pv-hours[hidden]{display:none}
.pv-pick .label{display:block;margin-bottom:8px}
.pv-seg{display:flex;border:1px solid #d9d0e3;background:#fff}.pv-seg button{flex:1;border:0;border-right:1px solid #eee6f3;background:#fff;font:inherit;font-size:15px;padding:12px 0;cursor:pointer;color:#30243d}.pv-seg button:last-child{border-right:0}.pv-seg button.on{background:#583480;color:#fff}
.pv-plan{grid-column:1/-1;background:#f8f5fb;border:1px solid #e6dcef;padding:14px 16px}.pv-plan small{font-size:11px;letter-spacing:1.4px;font-weight:700;color:#7a6b88}
.pv-tl{display:flex;gap:3px;height:42px;margin:8px 0}.pv-tl div{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden}.pv-tl .ph{background:#583480}.pv-tl .vd{background:#8a63bd}.pv-tl .br{background:#e2d6f0;color:#583480;min-width:44px}
.pv-note{font-size:13px;color:#5f5070;margin:0}
@media(max-width:560px){.pv-hours{grid-template-columns:1fr}}
/* A message about the current step stays in sight at the bottom of the screen until it is fixed. */
#flow-status:not(:empty){position:sticky;bottom:14px;z-index:11;margin:12px 0 0;padding:12px 16px;background:#fff4f2;border:1px solid #f0c9c3;border-radius:12px;box-shadow:0 6px 22px #3a1d1d1f;font-size:14px;font-weight:600}
.review-price b{display:block;font-size:24px;color:#30243d;margin:2px 0}.review-price span{display:block;font-size:12px;color:#7a6b88}
@media(max-width:640px){#flow-status:not(:empty){margin-right:62px}}
/* Phones: after picking a shoot type only that card stays, with a Change link */
.subj-change{display:none}
@media(max-width:640px){#subjects.folded .option.subj:not(.selected){display:none}
#subjects.folded .option.subj.selected .subj-radio{display:none}
#subjects.folded .subj-change{display:inline-block;margin-left:auto;font-size:13px;font-weight:700;color:#583480;text-decoration:underline;padding:8px 4px;flex:none}}
.zip-result.far1,.zip-result.far2,.zip-result.far3{background:#e6f3f1;color:#1f6159}.zip-result.outside{background:#f4eef9;color:#30243d}.zip-wait{background:#f4eef9;border-radius:6px;padding:4px 12px 10px;margin:-6px 0 8px}.zip-wait .sa-wait{display:flex;gap:8px;margin:8px 0 6px}.zip-wait input{flex:1;min-width:0;border:1px solid #d9cce8;border-radius:6px;padding:9px;font:inherit;font-size:14px;background:#fff}.zip-wait button{background:#7146a1;color:#fff;border:0;border-radius:6px;padding:9px 12px;font:inherit;font-weight:700;font-size:13px;cursor:pointer}.zip-wait .sa-wait-st{display:block;color:#6d607a;font-size:12.5px}.zip-wait .sa-wait-ok{margin:8px 0 2px;font-weight:700;color:#2f6b45;font-size:14px}
.ph-choose{margin:18px 0 6px;padding:16px;border:1px solid #e3dcea;border-radius:10px;background:#fff}.ph-choose h3{margin:0 0 2px;font-size:17px}.ph-sub{margin:0 0 12px;font-size:13px;color:#6d607a}
.ph-list{display:grid;gap:8px}.ph-pick{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid #e3dcea;border-radius:10px;padding:10px 12px;background:#fff;font:inherit;color:inherit;cursor:pointer}
.ph-pick:last-child{grid-template-columns:1fr auto;border-style:dashed;border-color:#cbb8e3}.ph-pick.on{border:2px solid #7146a1;background:#faf7fd}
.ph-av{width:52px;height:52px;border-radius:50%;overflow:hidden;background:#e9e2f1;flex:none}.ph-av img{width:100%;height:100%;object-fit:cover;display:block}
.ph-info{display:flex;flex-direction:column;gap:2px;min-width:0}.ph-info b{font-size:15px}.ph-best{font-style:normal;margin-left:6px;background:#e7f4ec;color:#2f6b45;font-size:11px;font-weight:700;border-radius:999px;padding:1px 8px;vertical-align:middle}
.ph-meta{font-size:12px;color:#a87a1c}.ph-tags{font-size:11.5px;color:#6d607a}.ph-work{display:flex;gap:4px;margin-top:4px}.ph-work img{width:46px;height:34px;object-fit:cover;border-radius:4px}
.ph-radio{width:20px;height:20px;border-radius:50%;border:2px solid #cfc4dc;flex:none}.ph-pick.on .ph-radio{border:6px solid #7146a1}.ph-note{margin:10px 0 0;font-size:12.5px;color:#6d607a}
.ph-revs{margin:-2px 0 4px;padding:0 4px}.ph-revs summary{cursor:pointer;font-size:13px;font-weight:700;color:#583480;text-decoration:underline;padding:4px 0}.ph-src{margin:6px 0 4px;font-size:12px;color:#6d607a}
.ph-rev{border-top:1px solid #eee7f4;padding:8px 0}.ph-rev b{font-size:13.5px}.ph-stars{color:#f2b01e;font-size:13px}.ph-rev p{margin:3px 0 0;font-size:13px;line-height:1.5;color:#3d3546}
.ph-cat{float:right;font-size:10px;font-weight:700;background:#ece6f3;color:#583480;border-radius:4px;padding:1px 6px;text-transform:uppercase}.ph-allrev{background:none;border:0;padding:6px 0;font:inherit;font-size:13px;font-weight:700;color:#583480;text-decoration:underline;cursor:pointer}
.ph-work img{cursor:zoom-in}.ph-more{display:flex;align-items:center;justify-content:center;width:46px;height:34px;border-radius:4px;background:#ece6f3;color:#583480;font-style:normal;font-size:12px;font-weight:700;cursor:zoom-in}
.ph-lb{position:fixed;inset:0;z-index:2000;background:rgba(18,14,24,.94);display:flex;flex-direction:column;padding:14px 14px 10px;color:#fff}
.ph-lb-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.ph-lb-top b{font-size:16px;display:block}.ph-lb-cap{font-size:12.5px;color:#cfc6da}
.ph-lb-x{background:rgba(255,255,255,.12);border:0;color:#fff;font-size:20px;width:40px;height:40px;border-radius:50%;cursor:pointer}
.ph-lb-stage{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:0;margin:10px 0}.ph-lb-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;user-select:none}
.ph-lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.45);border:0;color:#fff;font-size:30px;width:44px;height:44px;border-radius:50%;cursor:pointer}.ph-lb-nav.prev{left:4px}.ph-lb-nav.next{right:4px}
.ph-lb-strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.ph-lb-strip img{width:64px;height:48px;object-fit:cover;border-radius:5px;opacity:.55;cursor:pointer;flex:none}.ph-lb-strip img.on{opacity:1;outline:2px solid #fff}
@media(max-width:560px){.ph-lb-nav{display:none}}
.ph-lv{font-style:normal;margin-left:6px;background:#efe8f7;color:#583480;font-size:11px;font-weight:700;border-radius:999px;padding:1px 8px;vertical-align:middle}.ph-lv.top{background:#3a3046;color:#f2d27a}
.ph-ins{font-style:normal;margin-left:6px;background:#e6eef7;color:#2f4f6e;font-size:11px;font-weight:700;border-radius:999px;padding:1px 8px;vertical-align:middle}
/* Address: a tidy block about 620px wide, street and apt on one line; stacks on phones. */
.addr{max-width:620px}.addr .addr-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.addr .addr-street{align-items:end}.addr-street .optional{font-size:11px}.addr~.hint{max-width:620px}
@media(max-width:600px){.addr .addr-street{grid-template-columns:1fr;gap:0}.addr .addr-row:not(.addr-street){grid-template-columns:minmax(0,1fr) 110px}}
.addr~label:has(textarea[name=brief]){max-width:620px}
