:root{--paper:#101111;--ink:#f4f2ed;--muted:#a5a7a4;--line:#363837;--accent:#d0d7c1;--surface:#191b1a;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2{font-weight:400;letter-spacing:-.045em;line-height:1.08;text-wrap:balance}h1{font-size:clamp(45px,7vw,95px)}h2{font-size:clamp(34px,4.3vw,64px)}h3{font-size:24px;font-weight:400;line-height:1.3}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}[hidden]{display:none!important}.wrap{width:calc(100% - 100px);max-width:1650px;margin-inline:auto}.skip-link{position:fixed;left:20px;top:20px;transform:translateY(-150px);z-index:100;padding:10px 20px;background:var(--ink);color:var(--paper)}.skip-link:focus{transform:translateY(0)}.site-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:110px;padding:10px 50px;gap:30px}.site-header.on-image{position:absolute;top:0;left:0;width:100%;background:linear-gradient(#0009,transparent)}.wordmark img{width:250px;height:83px;object-fit:cover}.site-header nav{display:flex;gap:34px;font-size:13px;letter-spacing:.02em}.site-header nav a{padding:10px 0}.site-header [aria-current],.site-header a:hover{color:var(--accent)}.hero{height:100svh;min-height:600px;max-height:1250px;position:relative;background:#141615}.hero-image{display:block;height:100%;width:100%}.hero-image picture{display:block;width:100%;height:100%}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.hero:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:42%;background:linear-gradient(transparent,#000b);pointer-events:none}.hero-bottom{position:absolute;left:50px;right:50px;bottom:36px;z-index:1;display:flex;justify-content:space-between;align-items:end;pointer-events:none}.hero-bottom h1{font-size:clamp(26px,3.1vw,46px);letter-spacing:-.03em;font-weight:450;line-height:1.12}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:20px;line-height:1.5}.hero-bottom .eyebrow{margin-bottom:14px;color:#f4f2edd9}.hero-scroll{pointer-events:auto;font-size:28px;border:1px solid #ffffff70;width:48px;height:48px;display:grid;place-items:center;border-radius:50%}.home-work{padding:32px 20px 0}.selection-bar{display:flex;justify-content:space-between;gap:20px;font-size:13px;letter-spacing:.06em;padding:0 30px 28px;color:var(--muted)}.editorial-wall{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:start}.editorial-tile{grid-column:span 6;margin:0}.editorial-tile:nth-child(6n+1){grid-column:span 7}.editorial-tile:nth-child(6n+2){grid-column:span 5;margin-top:100px}.editorial-tile:nth-child(6n+3){grid-column:1/-1}.editorial-tile:nth-child(6n+3) .gallery-item{width:82%;margin:60px auto}.editorial-tile:nth-child(6n+3) figcaption{width:82%;margin:0 auto}.editorial-tile:nth-child(6n+4){grid-column:span 5;margin-top:65px}.editorial-tile:nth-child(6n+5){grid-column:span 7}.editorial-tile:nth-child(6n+6){grid-column:1/-1}.editorial-tile:nth-child(6n+6) .gallery-item{width:100%;margin:50px auto}.gallery-item{position:relative;display:block;overflow:hidden;background:var(--surface)}.gallery-item img{width:100%;height:auto;transition:filter .25s}.gallery-item:hover img{filter:brightness(.92)}.image-arrow{position:absolute;right:15px;bottom:15px;width:35px;height:35px;background:#1118;border-radius:50%;display:grid;place-items:center;opacity:0;font-size:20px;transition:opacity .2s}.gallery-item:hover .image-arrow,.gallery-item:focus-visible .image-arrow{opacity:1}.photo-tile figcaption{font-size:12px;color:var(--muted);padding:10px 2px 18px}.photo-tile figcaption a{display:flex;align-items:center;justify-content:space-between;gap:20px}.portfolio-cta{text-align:center;padding:50px 0 20px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;padding-bottom:7px;border-bottom:1px solid var(--muted)}.text-link:hover{color:var(--accent);border-color:var(--accent)}.section{padding-block:120px}.introduction{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;border-top:1px solid var(--line);margin-top:85px;padding-bottom:75px}.section-intro{font-size:17px;max-width:470px;color:var(--muted)}.muted{color:var(--muted);font-size:14px;margin-top:24px;max-width:440px}.service-row{display:grid;grid-template-columns:35px 1.1fr 1fr 30px;gap:35px;align-items:center;padding:32px 0;border-top:1px solid var(--line)}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row p{font-size:13px;color:var(--muted);max-width:370px}.service-number{font-size:12px;color:var(--muted)}.service-arrow{font-size:25px}.service-row:hover h3{color:var(--accent)}.about-section{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(60px,12vw,180px);align-items:center}.about-photo{max-width:440px}.about-photo img{width:100%;height:auto}.about-section h2{margin-bottom:30px}.prose{color:var(--muted);max-width:530px}.prose p{margin-bottom:20px}.about-section .text-link{margin-top:20px}.photobooth-teaser{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:100px;padding-bottom:110px}.photobooth-teaser p:not(.eyebrow){max-width:400px;color:var(--muted);font-size:14px;margin-top:25px}.photobooth-teaser .text-link{margin-top:30px}.gallery-page{padding-top:45px;padding-bottom:100px}.gallery-heading{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:70px;margin-bottom:55px}.gallery-intro{color:var(--muted);font-size:14px;max-width:430px}.back-link{display:block;font-size:14px;color:var(--muted);margin-bottom:50px}.gallery-toolbar{border-top:1px solid var(--line);padding-top:25px;margin-bottom:25px}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px}.filter-button{border:1px solid var(--line);padding:8px 13px;background:transparent;color:var(--muted);font-size:13px;border-radius:1px}.filter-button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery-controls{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);margin-top:20px}.density-controls{display:flex;gap:8px}.density-controls button{font-size:13px;padding:8px 12px;border:0;background:transparent;color:var(--muted)}.density-controls button[aria-pressed=true]{background:var(--surface);color:var(--ink)}.photo-wall{columns:3;column-gap:18px}.photo-wall .photo-tile{break-inside:avoid;margin-bottom:12px}.is-compact .photo-wall{columns:5;column-gap:10px}.is-compact figcaption{display:none}.load-more-wrap{text-align:center;margin-top:35px}html:not(.js) .gallery-toolbar,html:not(.js) .load-more-wrap{display:none}.series-nav{display:flex;flex-wrap:wrap;gap:16px 30px;border-top:1px solid var(--line);padding-top:35px;margin-top:50px;font-size:14px;color:var(--muted)}.photobooth-hero{padding-top:45px}.photobooth-hero>figure img{width:100%;max-height:800px;object-fit:contain;background:#eee}.photobooth-details{display:grid;grid-template-columns:1fr 1fr;gap:100px}.photobooth-details h2{margin-bottom:30px}.photobooth-details figure img{max-height:680px;object-fit:contain;margin:auto}.feature-list{margin-top:40px}.feature-list div{border-top:1px solid var(--line);padding:20px 0}.feature-list dt{font-size:18px}.feature-list dd{font-size:14px;color:var(--muted);margin:7px 0 0}.client-page{padding-top:60px}.client-page>.section-intro{margin-top:30px}.client-options{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:70px;border-top:1px solid var(--line);padding-top:45px}.client-options h2{font-size:30px;margin-bottom:20px}.client-options p{color:var(--muted);max-width:400px;margin-bottom:30px}.contact-section{padding:110px 0;background:var(--surface);border-top:1px solid var(--line)}.contact-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:100px}.contact-section h2{margin-bottom:25px}.contact-layout>div>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:390px}.contact-email{display:inline-block;font-size:16px;margin-top:35px;border-bottom:1px solid var(--line)}.contact-form{display:grid;gap:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-form label{display:block;font-size:14px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;min-width:0;margin-top:9px;background:#1113;color:var(--ink);padding:12px 10px;border:0;border-bottom:1px solid #6d706b;border-radius:0;font-size:14px}.contact-form textarea{resize:vertical;min-height:135px}.contact-form input[type=date]{height:49px}.contact-form textarea::placeholder{color:var(--muted);font-size:14px}.optional{font-size:12px;color:var(--muted)}.form-privacy{font-size:12px;color:var(--muted)}.button{padding:14px 24px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:14px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);justify-self:start}.button:hover{background:var(--accent);border-color:var(--accent)}.form-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-errors{padding:20px;border:1px solid #dc9c83;margin-bottom:25px;font-size:13px}.form-success{padding:30px;border:1px solid var(--accent)}.form-success p{margin:15px 0 25px;color:var(--muted)}.site-footer{display:flex;flex-direction:column;justify-content:center;gap:15px;align-items:flex-start;padding-block:25px;padding-right:64px;min-height:100px;font-size:12px;color:var(--muted)}.site-footer nav{display:flex;flex-wrap:wrap;gap:28px}.lightbox{padding:60px 80px 30px;border:0;background:#080909;color:var(--ink);width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;overflow:hidden}.lightbox::backdrop{background:#080909}.lightbox[open]{display:grid;place-items:center}.lightbox figure{width:100%;height:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;gap:15px;min-width:0;min-height:0}.lightbox figure img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}.lightbox figcaption{font-size:13px;color:var(--muted);min-height:20px}.lightbox button{position:absolute;border:0;background:transparent;color:inherit;padding:12px;font-size:25px}.lightbox-close{top:10px;right:20px;font-size:13px!important}.lightbox-prev{left:15px;top:50%}.lightbox-next{right:15px;top:50%}body:has(.lightbox[open]){overflow:hidden}
@media(max-width:1100px){.wrap{width:calc(100% - 60px)}.site-header{padding-inline:30px}.hero-bottom{left:30px;right:30px}.introduction,.about-section,.photobooth-teaser,.contact-layout,.photobooth-details{gap:50px}.service-row{gap:20px}.editorial-tile:nth-child(6n+2){margin-top:70px}.photo-wall{columns:2}.is-compact .photo-wall{columns:4}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.site-header{min-height:90px;padding:10px 16px;gap:15px}.wordmark img{width:160px;height:54px}.site-header nav{gap:15px;font-size:10px}.hero{height:88svh;min-height:500px}.hero-image picture{display:block;width:100%;height:100%}.hero-image img{object-position:center 30%}.hero-bottom{left:20px;right:20px;bottom:24px}.hero-bottom h1{font-size:29px}.hero-bottom .eyebrow{font-size:10px;letter-spacing:1.3px}.hero-scroll{height:38px;width:38px;font-size:22px}.home-work{padding:24px 10px 0}.selection-bar{padding:0 6px 20px;font-size:11px}.editorial-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.editorial-tile:nth-child(n){grid-column:span 1;margin:0}.editorial-tile:nth-child(6n+3),.editorial-tile:nth-child(6n+6){grid-column:1/-1}.editorial-tile:nth-child(6n+3) .gallery-item,.editorial-tile:nth-child(6n+6) .gallery-item{width:100%;margin:14px 0 0}.editorial-tile:nth-child(6n+3) figcaption{width:100%}.photo-tile figcaption{font-size:10px;padding:7px 2px 13px}.image-arrow{width:28px;height:28px;right:8px;bottom:8px;font-size:16px}.portfolio-cta{padding:25px 0 0}.section{padding-block:65px}.introduction{display:block;margin-top:65px;padding-bottom:40px}.introduction .section-intro{margin-top:30px;font-size:15px}.eyebrow{font-size:11px;margin-bottom:18px}.service-row{grid-template-columns:20px 1fr 25px;gap:14px;padding:25px 0}.service-row h3{font-size:25px}.service-row p{grid-column:2;grid-row:2}.service-arrow{grid-column:3;grid-row:1}.service-number{align-self:start;margin-top:4px}.about-section{grid-template-columns:1fr;gap:35px}.about-photo{max-width:100%;width:75%;margin:auto}.about-section .prose{font-size:14px}.photobooth-teaser{grid-template-columns:1fr;gap:35px;padding-bottom:65px}.gallery-page{padding-top:25px;padding-bottom:65px}.gallery-heading{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.gallery-heading h1{font-size:48px}.gallery-intro{font-size:13px}.back-link{margin-bottom:30px}.photo-wall{columns:2;column-gap:10px}.is-compact .photo-wall{columns:3;column-gap:8px}.gallery-filters{gap:6px}.filter-button{padding:7px 9px;font-size:11px}.gallery-controls{font-size:11px}.density-controls button{font-size:12px}.page-gallery .editorial-wall{grid-template-columns:1fr}.page-gallery .editorial-tile:nth-child(n){grid-column:1/-1}.page-gallery .editorial-tile .gallery-item{margin-top:0}.series-nav{font-size:12px;gap:14px 20px}.photobooth-details{grid-template-columns:1fr;gap:35px}.photobooth-details .prose{font-size:14px}.photobooth-details figure img{max-height:450px}.contact-section{padding:65px 0}.contact-layout{grid-template-columns:1fr;gap:40px}.contact-section h2{font-size:40px}.contact-email{font-size:15px}.form-row{grid-template-columns:1fr}.contact-form .button{width:100%}.site-footer{flex-direction:column;align-items:start;justify-content:center;padding-block:25px;gap:15px}.site-footer nav{gap:18px;flex-wrap:wrap}.lightbox{padding:65px 35px 25px}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox button{padding:10px;font-size:22px}.lightbox figcaption{font-size:12px}.client-options{grid-template-columns:1fr;gap:35px}.client-options p{font-size:14px}}
@media(max-width:370px){.wordmark img{width:135px}.site-header nav{gap:12px}.hero-bottom h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Navigation remains legible while browsing the photographs. */
html{scroll-padding-top:130px}
.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid transparent}
.site-header.on-image{position:fixed;background:var(--paper)}
.js .site-header.on-image:not(.is-scrolled){background:linear-gradient(180deg,#000c 0%,#0006 60%,transparent 100%);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:transparent}
.site-header.is-scrolled{background:var(--paper);border-bottom-color:var(--line);box-shadow:0 4px 20px #0003}
.site-header.on-image nav a{text-shadow:0 1px 8px #0008}
.site-header.is-scrolled nav a{text-shadow:none}
@media(max-width:700px){html{scroll-padding-top:106px}}

/* Keep the top bar soft; use the dark surface after scrolling. */
.site-header{border-bottom-color:var(--line)}
.site-header nav{font-size:14px}
.site-header.on-image nav a{text-shadow:none}
.hero{padding-top:0}
@media(max-width:700px){.site-header nav{font-size:12px;gap:13px}.hero{padding-top:0}}
@media(max-width:370px){.site-header nav{font-size:11px;gap:10px}}

.site-header.is-scrolled{backdrop-filter:none;-webkit-backdrop-filter:none}

/* Restore the original image overlay; make navigation easier to read. */
.site-header nav{font-size:18px;gap:34px}
.site-header.on-image:not(.is-scrolled) nav a{text-shadow:0 1px 8px #0008}
@media(max-width:700px){.site-header nav{font-size:14px;gap:14px}.wordmark img{width:160px;height:54px}}
@media(max-width:370px){.site-header nav{font-size:13px;gap:10px}.wordmark img{width:145px;height:49px}}

/* No divider or shadow across the photographs. */
.site-header{border-bottom:0}
.site-header.is-scrolled{box-shadow:none}

/* A small return control appears only after browsing down the page. */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:30;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #ffffff65;border-radius:50%;background:#101111ed;color:var(--ink);font-size:25px;line-height:1;box-shadow:0 3px 14px #0003}
.back-to-top:hover{background:var(--ink);color:var(--paper)}
@media(max-width:700px){.back-to-top{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:46px;height:46px}}

/* Direct access to the photobooth and customer images at every screen size. */
.site-header nav{gap:clamp(16px,2vw,34px);white-space:nowrap}
@media(max-width:1000px){html{scroll-padding-top:150px}.site-header{flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-height:124px}.wordmark img{width:160px;height:54px}.site-header nav{width:100%;justify-content:space-between;gap:10px;font-size:16px}}
@media(max-width:700px){.site-header nav{font-size:14px;gap:8px}}
@media(max-width:370px){.site-header nav{font-size:13px;gap:6px}.wordmark img{width:145px;height:49px}}

/* Compact image wall inspired by the six-column Platon gallery. */
.home-work{padding:32px 3vw 0}
.selection-bar{padding:0 0 24px}
.gallery-page{width:94%;max-width:none}
.editorial-wall,.photo-wall{--gallery-columns:6;--gallery-gap:16px;display:block;columns:var(--gallery-columns);column-gap:var(--gallery-gap)}
.is-compact .photo-wall{--gallery-columns:8;columns:var(--gallery-columns);column-gap:var(--gallery-gap)}
.editorial-wall .editorial-tile:nth-child(n),.photo-wall .photo-tile{break-inside:avoid;margin:0 0 var(--gallery-gap);padding:0}
.editorial-wall .editorial-tile:nth-child(n) .gallery-item,.editorial-wall .editorial-tile:nth-child(n) figcaption{width:100%;margin:0}
.editorial-wall .photo-tile figcaption,.photo-wall .photo-tile figcaption{font-size:12px;line-height:1.4;padding:7px 0 0}
.editorial-wall .gallery-item img,.photo-wall .gallery-item img{width:100%;height:auto;object-fit:contain}
.editorial-wall.masonry-ready,.photo-wall.masonry-ready{position:relative;columns:auto}
.masonry-ready>.photo-tile{position:absolute;width:var(--tile-width);margin:0!important}
@media(max-width:1100px){.editorial-wall,.photo-wall{--gallery-columns:4}.is-compact .photo-wall{--gallery-columns:6}}
@media(max-width:700px){.home-work{padding:24px 16px 0}.gallery-page{width:calc(100% - 32px)}.editorial-wall,.photo-wall{--gallery-columns:2;--gallery-gap:10px}.is-compact .photo-wall{--gallery-columns:3}.editorial-wall .photo-tile figcaption,.photo-wall .photo-tile figcaption{font-size:11px}}

/* Locally hosted Poppins, following the Andy Gotts typography reference. */
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins/Poppins-ExtraLight.ttf') format('truetype');font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins/Poppins-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins/Poppins-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{font-family:Poppins,sans-serif}
h1,h2,h3{font-weight:300;letter-spacing:-.025em}
.hero-bottom h1{font-weight:300}
.site-header nav{font-weight:200}
@media(max-width:370px){.site-header nav{font-size:12px}}

/* Commercial work and leisure remain distinct in the full portfolio. */
.portfolio-filter-group{display:flex;flex-wrap:wrap;gap:8px;flex-basis:100%}
.portfolio-filter-label{flex-basis:100%;font-size:13px;color:var(--muted);margin:14px 0 2px}

/* Offer: readable editorial steps and preparation checklists. */
.offer-home-link{padding-top:32px}
.offer-page{padding-block:65px 100px}
.offer-heading{max-width:1050px;padding-bottom:100px}
.offer-heading h1{max-width:1000px}
.offer-intro{max-width:650px;color:var(--muted);margin-top:32px;font-size:18px}
.offer-heading>.text-link{margin-top:32px}
.offer-process>h2{max-width:800px;margin-bottom:50px}
.offer-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:40px 70px}
.offer-steps>li{display:grid;grid-template-columns:30px 1fr;gap:20px;border-top:1px solid var(--line);padding-top:25px}
.offer-number{font-size:13px;color:var(--muted);padding-top:7px}
.offer-steps h3{font-size:25px;margin-bottom:16px}
.offer-copy{color:var(--muted);font-size:14px;max-width:620px}
.offer-copy p+p{margin-top:20px}
.offer-preparation{margin-top:110px}
.offer-checklist-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:45px}
.offer-checklist{border-top:1px solid var(--line)}
.offer-checklist:last-child{border-bottom:1px solid var(--line)}
.offer-checklist summary{list-style:none;display:grid;grid-template-columns:30px 1fr 30px;gap:20px;align-items:center;cursor:pointer;padding:28px 0}
.offer-checklist summary::-webkit-details-marker{display:none}
.offer-checklist summary h3{font-size:27px}
.offer-plus::before{content:'+';font-size:28px;line-height:1}
.offer-checklist[open] .offer-plus::before{content:'−'}
.offer-checklist-content{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:5px 0 35px 50px}
.offer-checklist-content ul{margin:0;padding-left:18px;font-size:15px}
.offer-checklist-content li+li{margin-top:12px}
.offer-end{border-top:1px solid var(--line);margin-top:75px;padding-top:30px}
.offer-end p{color:var(--muted);margin-bottom:20px}
@media(max-width:700px){.offer-page{padding-block:35px 65px}.offer-heading{padding-bottom:65px}.offer-heading h1{font-size:clamp(38px,10vw,65px)}.offer-intro{font-size:15px;margin-top:25px}.offer-steps{grid-template-columns:1fr;gap:28px}.offer-steps>li{grid-template-columns:22px 1fr;gap:12px}.offer-steps h3{font-size:23px}.offer-copy{font-size:13px}.offer-preparation{margin-top:65px}.offer-checklist-heading{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.offer-checklist summary{grid-template-columns:22px 1fr 20px;gap:12px;padding-block:24px}.offer-checklist summary h3{font-size:22px}.offer-checklist-content{grid-template-columns:1fr;gap:28px;padding-left:34px}.offer-checklist-content ul{font-size:14px}.offer-end{margin-top:50px}.offer-end p{font-size:14px}}

/* Four offer rows with independent gallery links. */
.service-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 12px;min-width:0}
.service-links a{display:inline-flex;align-items:center;min-height:44px}
.service-secondary{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:0 12px}
.service-separator{color:var(--muted);font-size:.65em}
.service-row:hover h3{color:inherit}
.service-links a:hover,.service-links a:focus-visible,.service-arrow:hover{color:var(--accent)}
@media(max-width:700px){
 .service-links{display:block}
 .service-primary-separator{display:none}
 .service-secondary{display:flex;font-size:16px;margin-top:2px}
 .service-number{margin-top:11px}
}

/* Customer access: submit the supplied code directly to the photo shop. */
.gallery-code-form{margin-top:28px;max-width:580px}
.gallery-code-form label{display:block;font-size:14px;margin-bottom:9px}
.gallery-code-fields{display:flex;gap:12px;align-items:stretch}
.gallery-code-fields input{min-width:0;flex:1;width:100%;padding:13px 12px;border:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);font-size:16px}
.gallery-code-fields input::placeholder{color:var(--muted)}
.gallery-code-fields .button{white-space:nowrap;gap:16px}
.client-options .gallery-code-hint{font-size:13px;margin:12px 0 0}
.client-options .gallery-direct-hint{font-size:14px;margin:25px 0 0}
@media(max-width:480px){.gallery-code-fields{flex-direction:column}.gallery-code-fields .button{width:100%}}
