.hero-opening{display:contents}
/* Tablet portrait, landscape, and larger touch-screen iPads. */
@media (min-width:601px) and (max-width:1180px), (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
 html{scroll-padding-top:116px}
 body .wrap{width:calc(100% - 56px);max-width:1120px}
 body .header:has(>.header-wordmark),body .site-header{width:calc(100% - 56px);height:104px;grid-template-columns:1fr 1fr;gap:24px}
 body .header .gallery-header-logo,body .site-header .mark img{height:64px}
 body .header .header-wordmark>.header-home,body .site-header .mark>.header-home{font-size:21px}
 body .header:has(>.header-wordmark)>.menu,body .site-header>.menu{display:block;grid-column:1;grid-row:1;justify-self:start;min-height:44px;padding:6px 0;border:0;background:none;color:var(--ink);font-size:28px;text-shadow:none}
 body .header:has(>.header-wordmark)>.theme-toggle,body .site-header>.theme-toggle{position:relative;inset:auto;transform:none;grid-column:2;grid-row:1;justify-self:end;width:44px;height:44px;padding:0;border:1px solid var(--rose);border-radius:50%;display:block;background:var(--rose);box-shadow:inset 0 0 0 12px var(--paper)}
 body .header .theme-toggle:before,body .header .theme-toggle span,body .site-header .theme-toggle:before,body .site-header .theme-toggle span{display:none}
 body .header .mobile-nav-panel{display:none;position:absolute;top:100%;left:-28px;right:-28px;max-height:calc(100dvh - 104px);overflow-y:auto;overscroll-behavior:contain;padding:22px 28px;background:var(--paper);color:var(--ink);z-index:30;border-bottom:1px solid var(--line)}
 body .header .mobile-nav-panel:has(.nav.open){display:grid;grid-template-columns:1fr 1fr;gap:24px}
 body .header .mobile-nav-panel>.nav{position:static;inset:auto;display:none;flex-direction:column;width:auto;margin:0;padding:0;gap:8px;background:transparent;color:inherit;justify-content:flex-start}
 body .header .mobile-nav-panel>.nav.open{display:flex}
 body .header .nav a,body .site-header>nav a{display:flex;align-items:center;min-height:44px;font-size:28px}
 body .site-header>nav{display:none;position:absolute;top:100%;left:0;right:0;padding:24px;background:var(--paper);border-bottom:1px solid var(--line)}
 body .site-header>nav.open{display:flex;flex-wrap:wrap;gap:12px 28px}
 .hero-artwork{width:min(76vw,680px)}
 .hero-title{padding:56px 28px 76px}
 .hero-promise-lead{font-size:clamp(46px,6.2vw,72px);line-height:1.08}
 .home-page #stories,.home-page .artists-story{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;width:calc(100% - 56px);max-width:1120px;min-height:0;margin:0 auto 72px;gap:32px}
 #stories .editorial-flow{display:contents}
 #stories .photo.one.philosophy-bottle{float:none;width:100%;height:auto;aspect-ratio:1365/2048;min-height:0;max-height:660px;margin:0}
 #stories .philosophy-bottle img{height:100%;object-fit:contain}
 #stories .copy,.artists-story .copy{display:block;position:static;left:auto;min-width:0;padding:24px 0}
 #stories h2,.artists-story h2,#about .about-copy h2,.dedicated-story>.copy h2{font-size:clamp(36px,4.4vw,52px);line-height:1.15;margin:16px 0 22px}
 .artists-story .artists-grid-wrap{float:none;width:100%;max-width:none;margin:0;padding:0}
 .dedicated-story>.copy{width:calc(100% - 56px);max-width:1120px;padding:32px 0}
 .dedicated-story>.copy p{max-width:640px;margin-left:0}
 .dedicated-story .memory-grid.home-editorial{width:calc(100% - 56px);max-width:1120px;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(45px,7.3vw,82px);gap:14px;padding:24px 0 80px}
 .dedicated-story .memory-grid.home-editorial>figure{grid-column:var(--desktop-column);grid-row:var(--desktop-row)}
 .dedicated-story .gallery-callout{width:calc(100% - 56px);max-width:1120px;margin-top:-20px;padding-bottom:64px}
 #about{padding:32px 0 0}
 #about .about-stage{display:grid;width:calc(100% - 56px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;max-width:1120px;padding-bottom:64px}
 #about .about-copy{display:block;grid-column:1;grid-row:1;width:auto;padding:0}
 #about .about-portrait{float:none;position:relative;grid-column:2;grid-row:1;width:100%;margin:50px 0 0;aspect-ratio:auto;align-self:start}
 #about .about-portrait img{position:static;width:100%;height:auto;object-fit:contain}
 #work{width:calc(100% - 56px);scroll-margin-top:120px;padding:24px 0 40px}
 .industry-composition{width:min(100%,1000px)}
 .industry-collage{aspect-ratio:1.6}
 #work .industry-heading{font-size:clamp(36px,4.5vw,52px);margin-bottom:32px}
 #work .industry-heading br{display:none}
 .industry-celebrations{left:0;top:43%;width:47%;height:55%}
 .industry-events{left:32%;top:4%;width:45%;height:57%}
 .industry-places{left:8%;top:0;width:22%;height:47%}
 .industry-portraits{left:72%;top:46%;width:26%;height:51%}
 #work .industry-title,#work .industry-places .industry-title,#work .industry-portraits .industry-title{font-size:clamp(24px,3.2vw,36px);left:12px;right:10px}
 .process-v2{padding:72px 28px}
 .process-heading-v2{gap:28px;margin-bottom:40px}
 .process-body-v2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
 .process-visual-v2{min-height:440px}
 .process-image-v2{height:440px}
 .process-caption-v2{width:65%;padding:16px}
 .about-page .origin-page{padding:40px 0 72px}
 .about-page .origin-heading{padding-left:0;margin-bottom:36px}
 .about-page .origin-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px}
 .about-page .origin-portrait{float:none;position:static;width:100%;margin:0;max-width:none}
 .about-page .origin-copy{display:block;min-width:0}
 .intro{padding:44px 0 48px}
 .intro h1{font-size:clamp(48px,6.2vw,76px);overflow-wrap:break-word}
 .gallery.gallery-grouped{width:calc(100% - 56px);max-width:1120px;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:18px;row-gap:64px}
 .gallery-grouped>.gallery-story-group{grid-template-columns:repeat(12,minmax(0,1fr));row-gap:40px}
 .gallery-grouped .gallery-story-group>[data-slot="0"],.gallery-grouped .gallery-story-group>[data-slot="3"]{grid-column:1/span 6;margin-top:0!important}
 .gallery-grouped .gallery-story-group>[data-slot="1"],.gallery-grouped .gallery-story-group>[data-slot="4"]{grid-column:7/span 6;margin-top:40px!important}
 .gallery-grouped .gallery-story-group>[data-slot="2"],.gallery-grouped .gallery-story-group>[data-slot="5"],.gallery-grouped .gallery-story-group>figure:only-child{grid-column:2/span 10;margin-top:0!important}
 .gallery.gallery-grouped[data-collection-page] .gallery-story-group>[data-editorial-weight="hero"]{grid-column:2/span 10}
 .gallery-grouped .gallery-story-group img{max-height:72svh;object-fit:contain}
 .gallery-index{padding-bottom:44px;scroll-margin-top:120px}
 .gallery-filter-menu{border-block:1px solid var(--line)}
 .gallery-filter-menu>summary{display:grid;grid-template-columns:1fr auto;position:relative;gap:4px 20px;list-style:none;cursor:pointer;padding:16px 0;min-height:76px;line-height:1.2}
 .gallery-filter-menu>summary::-webkit-details-marker{display:none}
 .filter-prompt{grid-column:1;font-size:23px;letter-spacing:.05em}
 .filter-selection{grid-column:1;font-size:29px;color:var(--rose)}
 .filter-disclosure{grid-column:2;grid-row:1/3;align-self:center;width:28px;height:28px;position:relative}
 .filter-disclosure:before,.filter-disclosure:after{content:"";position:absolute;background:var(--ink);left:5px;top:13px;width:18px;height:2px}
 .filter-disclosure:after{transform:rotate(90deg)}
 .gallery-filter-menu[open] .filter-disclosure:after{transform:none}
 .gallery-filter-menu .gallery-filter-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;padding:12px 0 20px}
 .gallery-filter-menu .gallery-filter-links a{min-height:44px;padding:10px 12px;font-size:28px;line-height:1.2;border:0}
 .gallery-filter-menu .gallery-filter-links a[aria-current]{background:color-mix(in srgb,var(--rose) 12%,transparent);color:var(--rose)}
 .gallery-filter-menu:not([open])>.gallery-filter-links{display:none}
 .collection-filter-options a{min-height:44px}
 body .footer-inner{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;width:calc(100% - 56px)}
 body .footer-brand{grid-column:1;grid-row:1}
 body .footer-brand img{height:64px!important;width:auto!important}
 body .site-footer .footer-gallery{position:static;transform:none;grid-column:2;grid-row:1;min-height:44px;font-size:28px!important}
 body .footer-actions{display:flex;grid-column:3;grid-row:1;justify-content:flex-end;flex-wrap:wrap;gap:8px 16px}
 body .footer-contact,body .footer-top{min-height:44px;font-size:25px!important}
 body .footer-instagram{width:44px;height:44px}
 .home-page .mobile-footer-story h2{font-size:clamp(46px,6vw,72px);padding:36px 28px 44px}
 .field input,.field select,.field textarea{min-height:44px;font-size:28px!important}
 .form-grid,.story-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .field{min-width:0}
 .field label{font-size:25px;line-height:1.25}
 .lightbox-toolbar button,.lightbox-navigation button{min-width:44px;min-height:44px}
}

/* The smaller collage stays centred; the headline follows below the fold. */
@media (min-width:601px) and (max-width:1180px) and (orientation:landscape), (min-width:1181px) and (max-width:1366px) and (orientation:landscape) and (hover:none) and (pointer:coarse){
 html{scroll-padding-top:100px}
 body .header:has(>.header-wordmark),body .site-header{height:88px}
 body .header .gallery-header-logo,body .site-header .mark img{height:52px}
 body .header .mobile-nav-panel{max-height:calc(100dvh - 88px)}
 .home-page .hero-opening{display:block;width:100%;margin:0;padding:0}
 .home-page .hero-opening .hero-image.hero-collage{width:100%;min-width:0;min-height:calc(100svh - 88px);padding:16px 28px 24px;align-items:center;justify-content:center;background:transparent}
 .home-page .hero-opening .hero-artwork{width:min(100%,660px,calc((100svh - 128px) / 1.33));max-width:100%}
 .home-page .hero-opening .hero-title{min-width:0;padding:56px 28px 76px;text-align:center}
 .home-page .hero-opening .hero-title h1.hero-promise{margin:0 auto;max-width:900px}
 .home-page .hero-opening .hero-promise-lead{font-size:clamp(46px,6.2vw,72px);line-height:1.12;letter-spacing:.015em;text-wrap:balance}
}
