.back-to-top{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:50;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #ffffff35;border-radius:50%;color:#fff;background:#242724ed;box-shadow:0 5px 22px #0002;cursor:pointer;transition:transform .2s,background .2s;backdrop-filter:blur(12px)}.back-to-top[hidden]{display:none}.back-to-top:hover{transform:translateY(-3px);background:#394137}.back-to-top:focus-visible{outline:3px solid #a8b99a;outline-offset:4px}
@media(max-width:600px){.back-to-top{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}
/* Checkout keeps Stripe's payment controls intact, with a clear StillPhoto summary. */
#checkout-dialog{width:860px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #deded5;border-radius:18px;overflow:auto;background:#faf9f6;color:#242924;box-shadow:0 25px 100px #0005}
#checkout-dialog::backdrop{background:#101510b3;backdrop-filter:blur(5px)}
#checkout-dialog:has(#checkout-form:not([hidden])){width:860px;max-width:calc(100vw - 32px)}
.checkout-head{padding:30px 32px 24px;border-bottom:1px solid #e1e3dc;display:flex;justify-content:space-between;align-items:center;gap:16px}.checkout-head .eyebrow{margin:0 0 8px;font-size:10px;letter-spacing:.15em;color:#66705e}.checkout-head h2{font-size:29px!important;line-height:1.2;margin:0!important;letter-spacing:-.8px}.checkout-head .close{position:static!important;color:#4d554b;border:1px solid #d9ded2;border-radius:50%;width:38px;height:38px;padding:0;flex-shrink:0;background:transparent;font-size:23px;line-height:1}
.checkout-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.checkout-summary{padding:28px;background:#eff1e9;border-right:1px solid #dfe3d7}.checkout-summary h3,.checkout-payment h3{font-size:12px;font-weight:500;letter-spacing:.03em;margin:0 0 18px}.checkout-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:18px}.checkout-thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}.checkout-thumbs span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #cbd4c0;border-radius:5px;font-size:12px;color:#56604d}.checkout-summary #order-summary{font-size:19px;font-weight:500;line-height:1.5;padding:17px 0;border-top:1px solid #d6ddce;margin:0}.checkout-details{padding:0;margin:12px 0 0;list-style:none}.checkout-details li{font-size:12px;line-height:1.7;padding:6px 0;color:#55604e}.checkout-details li::before{content:'✓';margin-right:8px;color:#547345}.checkout-payment{padding:28px;min-width:0;background:#fff}.checkout-payment .checkout-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.8;margin:18px 0;color:#586052}.checkout-consent input{width:17px;height:17px;flex-shrink:0;margin:3px 0;accent-color:#434b3d}.checkout-consent a{color:#303b2a}.checkout-payment #pay-selected{border-radius:7px;font-weight:500;min-height:48px;margin-top:8px}.checkout-payment #purchase-status{font-size:12px;color:#586052;line-height:1.6;overflow-wrap:anywhere;margin:16px 0}.checkout-payment #checkout-form:not([hidden]){padding:0;margin:16px 0;background:#fff}.secure-payment-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;color:#68715f;margin:18px 0 0}.secure-payment-note svg{flex-shrink:0}.checkout-support{font-size:11px;margin-top:18px;color:#5f6858}.checkout-support a{text-decoration:underline}.checkout-tools{padding:16px 28px;border-top:1px solid #e1e3dc;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.checkout-tools #copy{width:auto!important;background:transparent;color:#68715f;text-decoration:underline;padding:5px 0;font-size:10px}.checkout-tools #copy-status{font-size:10px;margin:0}.checkout-tools #try-demo{width:auto!important;padding:8px 12px;font-size:10px}.checkout-payment button:focus-visible,.checkout-head button:focus-visible{outline:2px solid #677d59;outline-offset:3px}
@media(max-width:650px){#checkout-dialog,#checkout-dialog:has(#checkout-form:not([hidden])){max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.checkout-head{padding:22px 20px}.checkout-head h2{font-size:25px!important}.checkout-layout{grid-template-columns:1fr}.checkout-summary{padding:20px;border-right:0;border-bottom:1px solid #dfe3d7}.checkout-thumbs{grid-template-columns:repeat(6,1fr);gap:5px}.checkout-summary h3{margin-bottom:12px}.checkout-summary #order-summary{font-size:18px;padding:12px 0}.checkout-details{margin:0}.checkout-details li{font-size:11px;padding:3px 0}.checkout-payment{padding:22px 20px}.checkout-tools{padding:14px 20px}}
/* StillPhoto gallery navigation: lightweight shortcuts, no forced scroll on Add. */
body[data-theme=wedding]{--bg:#faf5eb;--panel:#f0e6d6;--surface:#fffcf5;--accent:#a18350;--line:#dfd3bf}
body[data-theme=portrait]{--bg:#ecdde3;--ink:#3e2b3e;--muted:#7b6172;--line:#ceb6c4;--accent:#885f7c;--panel:#e0cbd5;--surface:#f6eaf0;--button:#62435c;--on-button:#fff5fb}
body[data-theme=commercial]{--bg:#e0e9ed;--ink:#263b44;--muted:#586e77;--line:#bacdd5;--accent:#426d80;--panel:#cfdee5;--surface:#eef5f7;--button:#2d5365;--on-button:#f5fcff}
body[data-theme=event]{--accent:#d5b88b;--button:#d8c09c;--on-button:#242018}
.collection-portrait{--collection-bg:#e5ceda;--collection-ink:#493146;--collection-muted:#78596c;--collection-line:#c7a9bb}.collection-commercial{--collection-bg:#d4e3ea;--collection-ink:#284b5c;--collection-muted:#547486;--collection-line:#adc5d2}
.quality-notice{padding:20px 24px;background:color-mix(in srgb,var(--accent) 13%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-left:3px solid var(--accent);border-radius:7px;margin:30px 0;color:var(--ink)}.quality-notice strong{display:block;font-size:13px;font-weight:500;margin-bottom:8px}.quality-notice span{font-size:12px;line-height:1.8;color:var(--muted)}
.gallery-main .shop-layout{display:block}.gallery-main .photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-main{padding-bottom:130px!important}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:-8px 0 24px}.gallery-filters button{padding:10px 15px;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:24px;font:inherit;font-size:12px}.gallery-filters button[aria-pressed=true]{background:var(--button);color:var(--on-button);border-color:var(--button)}#purchase-help{margin-left:auto;font-size:10px;line-height:1.6;color:var(--muted);max-width:280px}.gallery-dock{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));display:flex;gap:5px;align-items:center;padding:7px;border:1px solid var(--line);border-radius:40px;background:var(--surface);box-shadow:0 8px 40px #0003;max-width:calc(100vw - 24px)}.gallery-dock button{border:0;display:flex;gap:10px;align-items:center;background:transparent;color:var(--ink);padding:12px 16px;border-radius:28px;font-size:12px;white-space:nowrap}.gallery-dock button:last-child{background:var(--button);color:var(--on-button)}.gallery-dock b{font-size:10px;opacity:.7;margin-left:4px}.still-icon{width:22px;height:22px;flex-shrink:0}.gallery-dock~.back-to-top{bottom:110px}
#bag-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:410px;max-width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;border-left:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);overflow:auto}#bag-dialog::backdrop{background:#0005}.bag-top{position:sticky;top:0;z-index:1;background:var(--surface);display:flex;align-items:center;justify-content:space-between;padding:22px 25px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1px}.bag-top button{position:static;background:transparent;color:inherit;border:0;font-size:28px;width:40px;height:40px}#bag-dialog .basket{position:static;border:0;background:transparent;padding:25px}#basket-items{max-height:45dvh;overflow:auto;overscroll-behavior:contain}#bag-dialog .basket .cta{min-height:48px}#bag-dialog .basket button{position:static}.bag-toast{position:fixed;z-index:65;bottom:112px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;max-width:calc(100vw - 24px);padding:10px 15px 10px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 7px 25px #0003;font-size:12px;white-space:nowrap}.bag-toast[hidden]{display:none}.bag-toast img{width:42px;height:42px;object-fit:cover;border-radius:5px}.bag-toast button{border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;padding:8px}.gallery-package{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 25px;border:1px solid var(--line);background:var(--panel);margin-bottom:28px;border-radius:8px}.gallery-package[hidden]{display:none}.gallery-package>div{display:grid;grid-template-columns:24px 1fr;gap:7px 12px;align-items:center}.gallery-package strong{font-size:14px;font-weight:500}.gallery-package span{grid-column:2;font-size:11px;line-height:1.7;color:var(--muted)}.gallery-package .cta{border-radius:5px;font-size:12px}.purchased-link{display:block;font-size:11px;text-decoration:underline;color:var(--accent);padding:8px 0}.photo-info{flex-wrap:wrap}.select-photo:disabled{opacity:.75;cursor:default}.service-rows summary>span:first-child{display:flex;align-items:center;gap:13px}.service-rows .still-icon{width:25px;height:25px;color:var(--accent)}.service-rows details:nth-child(1){--service-accent:#a18350}.service-rows details:nth-child(2){--service-accent:#b79664}.service-rows details:nth-child(3){--service-accent:#a67896}.service-rows details:nth-child(4){--service-accent:#6d9aad}.service-rows .still-icon{color:var(--service-accent)}
.upload-compact{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:7px;margin:18px 0}.upload-compact .cms-row{font-size:12px}.upload-compact progress{width:100%;height:5px;margin:15px 0 8px;accent-color:var(--accent)}.upload-compact>p,.upload-compact details{font-size:11px;line-height:1.7;color:var(--muted)}.upload-compact summary{cursor:pointer;padding:8px 0}.upload-file-list{max-height:220px;overflow:auto;overscroll-behavior:contain}.upload-file-list p{padding:5px 0;margin:0;border-top:1px solid var(--line)}
@media(min-width:1500px){.gallery-main .photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.gallery-main .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-dock{gap:0;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:5px}.gallery-dock button{padding:12px 10px;font-size:10px;gap:7px}.gallery-dock .still-icon{width:19px;height:19px}.gallery-dock strong{font-size:12px}.gallery-dock b{margin-left:1px}#bag-dialog{inset:auto 0 0;margin:0;width:100%;height:auto;max-height:88dvh;border-radius:18px 18px 0 0}#basket-items{max-height:35dvh}.bag-toast{bottom:95px;font-size:11px;gap:8px}.gallery-package{align-items:flex-start;flex-direction:column;padding:20px}.gallery-package .cta{width:100%}#purchase-help{max-width:none;width:100%;margin:0}.quality-notice{padding:17px 18px}.gallery-filters{margin-top:0}.gallery-toolbar{scroll-margin-top:20px}}
@media(prefers-reduced-motion:reduce){.bag-toast,.gallery-dock{scroll-behavior:auto}}
.preview-label{position:fixed;top:0;left:0;right:0;z-index:80;padding:6px 10px;text-align:center;background:#ead9b8;color:#3a3020;font:9px sans-serif;letter-spacing:.09em}body[data-preview=true]{padding-top:25px}
/* Palette and typography audit: shared roles across every category and checkout. */
body{--font-body:'DM Sans',system-ui,sans-serif;--font-heading:'Manrope',system-ui,sans-serif;font-family:var(--font-body)}body[data-theme]{--heading-font:var(--font-heading);font-family:var(--font-body);color:var(--ink);color-scheme:light}body[data-theme=event]{color-scheme:dark}body[data-theme=wedding]{--muted:#665d50;--accent:#80612e;--heading-font:Georgia,serif}body[data-theme=portrait]{--muted:#6e5264;--accent:#76516b}body[data-theme=commercial]{--muted:#4d626c;--accent:#355e70}
body[data-theme] h1,body[data-theme] h2{font-family:var(--heading-font);color:var(--ink)}body[data-theme] h3{color:var(--ink)}body[data-theme] button,body[data-theme] input,body[data-theme] select,body[data-theme] textarea{font-family:var(--font-body)}body[data-theme] button:not(.cta):not(.chosen):not([aria-pressed=true]){color:var(--ink)}body[data-theme] .logo{font-family:'Manrope',sans-serif}body[data-theme] .eyebrow{color:var(--muted)}body[data-theme] .select-photo,body[data-theme] .heart-photo{color:var(--ink);border-color:var(--line)}body[data-theme] .select-photo.chosen{color:var(--on-button)}body[data-theme] input,body[data-theme] select,body[data-theme] textarea{background:var(--panel);color:var(--ink);border-color:var(--line)}body[data-theme] input::placeholder,body[data-theme] textarea::placeholder{color:var(--muted);opacity:1}
body[data-theme] #checkout-dialog{background:var(--surface);color:var(--ink);border-color:var(--line)}body[data-theme] .checkout-head,body[data-theme] .checkout-tools{border-color:var(--line)}body[data-theme] .checkout-head .close{border-color:var(--line);color:var(--ink)}body[data-theme] .checkout-summary{background:var(--panel);border-color:var(--line)}body[data-theme] .checkout-payment{background:var(--surface)}body[data-theme] .checkout-head .eyebrow,body[data-theme] .checkout-details li,body[data-theme] .checkout-consent,body[data-theme] .checkout-payment #purchase-status,body[data-theme] .secure-payment-note,body[data-theme] .checkout-support,body[data-theme] .checkout-tools #copy{color:var(--muted)}body[data-theme] .checkout-consent a{color:var(--ink)}body[data-theme] .checkout-details li::before{color:var(--accent)}body[data-theme] .checkout-summary #order-summary{border-color:var(--line)}body[data-theme] .checkout-thumbs span{border-color:var(--line);color:var(--muted)}body[data-theme] #checkout-form:not([hidden]){background:#fff;padding:16px;border-radius:8px;color-scheme:light}
.price-options{padding:20px 24px;background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:25px}.price-options[hidden]{display:none}.price-options .cms-fields{margin:0;gap:18px}.price-options label{display:block;font-size:12px;color:var(--ink)}.price-options select,.price-options input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:5px;margin-top:8px;min-height:44px;font-size:12px}.promo-input{display:flex;gap:8px;align-items:end}.promo-input input{min-width:0}.promo-input button{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:12px 16px;min-height:44px;border-radius:5px;font-size:12px}.price-options p{color:var(--muted);font-size:12px;line-height:1.8;margin:16px 0 0}.savings-summary{font-size:12px;line-height:1.7;color:var(--accent);margin:14px 0}.savings-summary:empty{display:none}.gallery-dock #dock-bag{background:var(--button);color:var(--on-button)}.gallery-dock .dock-clear{margin-left:8px;border-left:1px solid var(--line);border-radius:0;padding-left:16px;font-size:10px;background:transparent!important;color:var(--muted)!important;text-decoration:underline}.gallery-dock .dock-clear:disabled{opacity:.45;cursor:default}#clear-selection-dialog{padding:28px;width:420px;max-width:calc(100vw - 32px);border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}#clear-selection-dialog h2{font-size:25px;line-height:1.3;margin-bottom:15px}#clear-selection-dialog p{font-size:13px;line-height:1.8;color:var(--muted)}#clear-selection-dialog::backdrop{background:#0008}.confirm-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px}.confirm-actions button{position:static;font-size:12px}.confirm-actions .danger{color:#bf6d62!important}.download-packs{margin:25px 0;padding:22px;border:1px solid var(--line);background:var(--panel);border-radius:8px}.download-packs h3{font-size:18px;margin-bottom:12px}.download-packs p{font-size:12px;line-height:1.8;color:var(--muted)}.pack-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.pack-buttons button{font-size:12px}.pack-status{min-height:1.7em}.download-packs [hidden]{display:none!important}.download-packs #save-pack{margin-top:12px}.pricing-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.pricing-tabs button{padding:12px 16px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:12px;border-radius:5px}.pricing-tabs button[aria-pressed=true]{background:#434b3d;color:#fff}.price-rule{border-top:1px solid var(--line);padding:22px 0;margin-top:20px}.price-rule label{font-size:12px}.price-rule input[type=checkbox]{width:auto}.price-rule .cms-row{margin-top:18px}#pricing-preview button{margin-top:20px}.cms-pagination{margin:20px 0;font-size:12px}
@media(max-width:700px){.gallery-dock{width:calc(100vw - 24px);border-radius:18px;display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:0}.gallery-dock button{justify-content:center;padding:11px 7px;font-size:10px}.gallery-dock .dock-clear{grid-column:1/-1;justify-self:center;margin:3px 0 0;padding:6px 20px;border-left:0;border-top:1px solid var(--line);min-height:28px}.bag-toast{bottom:140px}.gallery-dock~.back-to-top{bottom:155px}.gallery-main{padding-bottom:170px!important}.price-options{padding:18px}.price-options .cms-fields{grid-template-columns:1fr}.price-options select{font-size:12px}#clear-selection-dialog .confirm-actions{flex-wrap:wrap}.download-packs{padding:18px}.pack-buttons .cta{width:100%}}
/* Slow cover motion, with no layout shift and no motion for touch/reduced-motion users. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){body[data-theme] .hero{overflow:hidden}body[data-theme] .hero>img,body[data-theme] .collection-image img,.project-card img{transition:transform 1.4s cubic-bezier(.22,.61,.36,1),filter 1.4s ease;transform:scale(1)}body[data-theme] .hero:hover>img{transform:scale(1.025)}body[data-theme] .collection-image:hover img,.collection-card:focus-within .collection-image img,.project-card button:hover img{transform:scale(1.04)}}
/* Revised portrait and commercial palettes: neutral surfaces with strong text contrast. */
body[data-theme=portrait]{--bg:#f3f0e9;--surface:#fffdf8;--panel:#e8e1d5;--ink:#252b29;--muted:#4f5b55;--line:#c8cec5;--accent:#385748;--button:#2e493b;--on-button:#fff;--focus:#385748;color-scheme:light}
body[data-theme=commercial]{--bg:#e9edf0;--surface:#fff;--panel:#dce3e8;--ink:#192b39;--muted:#435665;--line:#b5c3ce;--accent:#234e6c;--button:#203e55;--on-button:#fff;--focus:#234e6c;color-scheme:light}
body[data-theme=portrait] .gallery-heading h1,body[data-theme=commercial] .gallery-heading h1{font-family:'Manrope',system-ui,sans-serif;font-weight:500;letter-spacing:-1.5px}body[data-theme=portrait] .preview-button span,body[data-theme=commercial] .preview-button span{background:var(--surface);color:var(--ink)}body[data-theme=portrait] .gallery-dock,body[data-theme=commercial] .gallery-dock{background:var(--surface);color:var(--ink)}.preview-button img{image-rendering:auto}
/* Final curated category palette: role-based surfaces, readable secondary text. */
body[data-theme=wedding]{--bg:#f6f1e8;--surface:#fffdf8;--panel:#eae2d3;--ink:#2d332d;--muted:#575e50;--line:#c8c4b4;--accent:#56613c;--button:#384631;--on-button:#fffdf8;--focus:#56613c;--heading-font:Georgia,serif;color-scheme:light}
body[data-theme=event]{--bg:#111a20;--surface:#18242c;--panel:#1c2931;--ink:#f2eee7;--muted:#b4bec5;--line:#40505c;--accent:#dfbc8b;--button:#dbbd91;--on-button:#182127;--focus:#dfbc8b;--heading-font:'Manrope',system-ui,sans-serif;color-scheme:dark}
body[data-theme=portrait]{--bg:#eee6df;--surface:#faf6f1;--panel:#e1d2cb;--ink:#30282b;--muted:#66545b;--line:#bca9a4;--accent:#603d48;--button:#603d48;--on-button:#fff9f5;--focus:#603d48;--heading-font:'Manrope',system-ui,sans-serif;color-scheme:light}
body[data-theme=commercial]{--bg:#f2f4f5;--surface:#fff;--panel:#e1e7eb;--ink:#1c2c38;--muted:#455766;--line:#b5c2ca;--accent:#214b75;--button:#253d55;--on-button:#fff;--focus:#214b75;--heading-font:'Manrope',system-ui,sans-serif;color-scheme:light}
.collection-wedding{--collection-bg:#eae2d3;--collection-ink:#2d332d;--collection-muted:#575e50;--collection-line:#c8c4b4}.collection-event{--collection-bg:#1c2931;--collection-ink:#f2eee7;--collection-muted:#b4bec5;--collection-line:#40505c}.collection-portrait{--collection-bg:#e1d2cb;--collection-ink:#30282b;--collection-muted:#66545b;--collection-line:#bca9a4}.collection-commercial{--collection-bg:#e1e7eb;--collection-ink:#1c2c38;--collection-muted:#455766;--collection-line:#b5c2ca}
body[data-theme] .gallery-heading>p,body[data-theme] .basket-note,body[data-theme] .photo-info small{color:var(--muted)}body[data-theme] .gallery-package strong,body[data-theme] .quality-notice strong{color:var(--ink)}body[data-theme] .gallery-package span{color:var(--muted)}body[data-theme] .quality-notice{background:var(--panel);border-color:var(--line);border-left-color:var(--accent)}body[data-theme] .price-options{background:var(--surface)}body[data-theme] .preview-button span{background:var(--surface);color:var(--ink)}body[data-theme] .gallery-dock{background:var(--surface);border-color:var(--line)}body[data-theme] #dock-bag,body[data-theme] .gallery-filters button[aria-pressed=true]{color:var(--on-button)}body[data-theme] .checkout-details li::before,body[data-theme] .savings-summary{color:var(--accent)}
/* Checkout, confirmation and layout refinements. */
.checkout-loading{display:grid;grid-template-columns:22px 1fr;gap:9px 12px;align-items:center;padding:20px;margin:18px 0;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:13px}.checkout-loading[hidden]{display:none}.checkout-loading i{display:block;width:20px;height:20px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:checkout-spin .85s linear infinite}.checkout-loading small{grid-column:2;font-size:11px;line-height:1.7;color:var(--muted)}@keyframes checkout-spin{to{transform:rotate(360deg)}}
body[data-theme] #checkout-form:not([hidden]){background:var(--surface);padding:8px 0;color-scheme:inherit}.checkout-payment{font-family:var(--font-body)}.checkout-head h2{font-size:clamp(24px,2.3vw,30px)!important}.checkout-summary,.checkout-payment{padding:28px;min-width:0}.checkout-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.checkout-payment>h3{font-size:14px;line-height:1.5}.checkout-consent{max-width:48ch}.checkout-support{line-height:1.8}
#clear-selection-dialog{padding:30px}#clear-selection-dialog h2{margin:0 0 14px;letter-spacing:-.7px}#clear-selection-dialog p{margin:0;max-width:36ch}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:12px;margin-top:26px}.confirm-actions button{position:static;display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;padding:12px 14px;border-radius:7px;font:500 12px var(--font-body);line-height:1.4}.confirm-actions #confirm-clear{background:var(--surface);border:1px solid #b76057;color:#983d34!important}.confirm-actions #confirm-clear:hover{background:#a8453812}.confirm-actions #keep-selection{border:1px solid var(--button)}
.gallery-heading{align-items:flex-end}.gallery-heading>div{min-width:0}.gallery-heading h1{line-height:1.15;font-size:clamp(32px,4vw,56px)}.gallery-heading>p{max-width:34ch;line-height:1.85;font-size:13px}.gallery-toolbar{gap:18px}.gallery-toolbar select{min-height:44px;max-width:min(320px,65vw)}.gallery-main .photo-info{align-items:center;gap:12px}.photo-info b{line-height:1.5;overflow-wrap:anywhere}.photo-actions button{min-height:40px}.basket h2{line-height:1.2}.basket-item{align-items:center;gap:12px}.basket-item span{overflow-wrap:anywhere}.collection-body{gap:0}.collection-body h3{line-height:1.22}.collection-body>p{line-height:1.8}.project-card .meta{align-items:flex-start;gap:12px}.project-card .meta h3{line-height:1.4}.project-card>p{line-height:1.8}.service-rows summary{gap:18px}.service-content p{line-height:1.9}footer .policy-links{align-items:center;line-height:1.8}
@media(min-width:1000px){#checkout-dialog,#checkout-dialog:has(#checkout-form:not([hidden])){width:960px}.checkout-head{padding:30px 32px}.checkout-summary,.checkout-payment{padding:30px}}
@media(max-width:650px){.checkout-layout{grid-template-columns:1fr}.checkout-summary,.checkout-payment{padding:22px 20px}.gallery-heading h1{font-size:34px}.gallery-heading>p{max-width:none;margin-top:20px}.gallery-toolbar{align-items:flex-start}.gallery-toolbar select{max-width:calc(100vw - 110px)}.confirm-actions{grid-template-columns:1fr}.confirm-actions #keep-selection{order:0}.confirm-actions #confirm-clear{order:1}#clear-selection-dialog{padding:24px}}
@media(prefers-reduced-motion:reduce){.checkout-loading i{animation:none;border-top-color:var(--accent);border-right-color:var(--accent)}}
body[data-theme=event] .confirm-actions #confirm-clear{color:#ffd8d1!important;border-color:#c8786e;background:#3b2929}
