*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fafafa;color:#252525;font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:#b6252b}a:focus-visible{outline:3px solid #b6252b;outline-offset:6px}img{max-width:100%;height:auto;display:block}.wrap{width:min(1140px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:16px;top:-80px;background:white;padding:12px;z-index:5}.skip:focus{top:12px}header{border-bottom:1px solid #ddd;background:white}header .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:25px}.brand img{width:173px;height:auto}nav{display:flex;flex-wrap:wrap;gap:24px;font-size:15px}nav a{text-decoration:none;padding:8px 0}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.6rem,5vw,4.7rem);font-weight:650;margin-bottom:25px}h2{font-size:clamp(2rem,3.8vw,3.2rem);font-weight:600}h3{font-size:1.1rem}.eyebrow{font-size:13px;letter-spacing:.15em;font-weight:650;text-transform:uppercase;color:#a32328;margin-bottom:22px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:54px;padding-block:72px}.hero p{max-width:490px}.hero figure{margin:0}.hero img{aspect-ratio:1/1;object-fit:cover;object-position:48% center}.intro{font-size:19px;color:#505050}.button{display:inline-block;background:#aa2429;color:white;padding:13px 23px;text-decoration:none;font-weight:600;margin-top:12px}.button:hover{background:#872025;color:white}.note{display:block;font-size:14px;color:#666;margin-top:14px}.section{border-top:1px solid #d8d8d8;padding-block:64px}.story{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.story p:last-child{margin-bottom:0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.gallery figure{margin:0}.gallery img{width:100%;aspect-ratio:5/3;object-fit:cover}.gallery a{display:block}figcaption{font-size:14px;color:#666;margin-top:12px}.contact{background:#252525;color:white;margin-top:65px;padding:64px 0}.contact .wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.contact .eyebrow{color:#f4a7a7}.contact h2{margin-bottom:0}.mail{font-size:clamp(1.25rem,3vw,2rem);overflow-wrap:anywhere}.contact p{color:#dedede}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-block:26px;font-size:14px;color:#606060}footer nav{font-size:14px}.legal{max-width:780px;padding-block:65px}.legal h1{font-size:clamp(2.7rem,5vw,4rem)}.legal h2{font-size:1.45rem;letter-spacing:-.025em;line-height:1.3;margin-top:34px}.legal address{font-style:normal}.review{border-left:3px solid #a32328;background:#f4eeee;padding:18px 22px;font-size:16px;margin:26px 0}.review strong{display:block}.legal li{margin-bottom:8px}@media(max-width:760px){.wrap{width:calc(100% - 40px)}header .wrap{align-items:flex-start;flex-direction:column;gap:12px;padding-block:20px}nav{gap:20px}.brand img{width:151px}.hero{grid-template-columns:1fr;gap:32px;padding-block:40px}.hero img{aspect-ratio:5/3;object-fit:contain;background:#ede8e1}.story,.contact .wrap{grid-template-columns:1fr;gap:20px}.section{padding-block:42px}.gallery{grid-template-columns:1fr;gap:30px}.contact{margin-top:45px;padding-block:42px}.legal{padding-block:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{nav,.skip,.button{display:none}.hero,.story,.contact .wrap{display:block}.contact{background:white;color:black}.contact p{color:black}.wrap{width:100%}header,footer{border:none}}
/* Persistent navigation and accessible back-to-top link. */
header{position:sticky;top:0;z-index:10;box-shadow:0 3px 14px #0000000d}
html{scroll-padding-top:130px}
.back-top{position:fixed;right:24px;bottom:max(20px,env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;gap:9px;min-height:48px;padding:10px 17px;background:#aa2429;color:white;border:1px solid #fff;border-radius:28px;box-shadow:0 3px 15px #0003;text-decoration:none;font-size:14px;font-weight:600}
.back-top:hover{background:#872025;color:white}.back-top span:first-child{font-size:22px;line-height:1}
footer{padding-bottom:76px}
@media(max-width:760px){header .wrap{gap:4px;padding-block:10px}header .brand img{width:125px}header nav{gap:18px;font-size:14px}html{scroll-padding-top:125px}.back-top{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}}
@media print{header{position:static;box-shadow:none}.back-top{display:none}footer{padding-bottom:0}}
/* Airy Q-Cycles design, September 2026. No scripts or external resources. */
body{background:#f8fafb;color:#283239;line-height:1.75}
.wrap{width:min(1180px,calc(100% - 72px))}
header{top:16px;width:min(1240px,calc(100% - 40px));margin:16px auto 0;border:1px solid #e5e9ec;border-radius:24px;background:#ffffff;box-shadow:0 8px 32px #2533420b}
header .wrap{width:auto;margin:0;padding:16px 28px;gap:24px}
.brand img{width:150px}
nav{gap:28px}header nav a{color:#46535c;font-weight:450}header nav a:hover{color:#aa2429}
h1,h2{font-weight:400;letter-spacing:-.045em;line-height:1.13}
h1{font-size:clamp(2.75rem,4.8vw,4.5rem);margin-bottom:28px}
h2{font-size:clamp(2rem,3.5vw,3rem)}
.eyebrow{font-size:13px;font-weight:550;letter-spacing:.16em;margin-bottom:25px}
.hero{grid-template-columns:.95fr 1.15fr;gap:60px;padding-block:100px 110px}
.hero figure{border-radius:32px;overflow:hidden;box-shadow:0 24px 56px -28px #25334255;border:6px solid #fff;transform:rotate(-2deg)}
.hero img{aspect-ratio:5/3;object-fit:contain;object-position:center;background:#eee8e1}
.intro{font-size:18px;color:#53616b}.hero p{max-width:470px}
.button{border-radius:100px;padding:13px 25px;font-weight:500;box-shadow:0 8px 20px #aa24291c;transition:background .18s,box-shadow .18s}
.button:hover{box-shadow:0 10px 24px #aa24292b}
.note{color:#62707b}.section{border-top:1px solid #e3e8ec;padding-block:78px}
.story{grid-template-columns:.95fr 1.15fr;gap:60px}.story>div:last-child{color:#53616b}
.gallery{gap:32px}.gallery a{border:6px solid white;border-radius:24px;overflow:hidden;box-shadow:0 16px 40px -25px #25334255}
.gallery img{transition:opacity .2s}.gallery a:hover img{opacity:.92}
figcaption{margin:16px 8px 0;color:#62707b}
.contact{width:min(1240px,calc(100% - 40px));margin:45px auto 0;padding:65px 0;background:#edf2f5;color:#283239;border:1px solid #e3e9ee;border-radius:32px}
.contact .wrap{width:calc(100% - 80px);grid-template-columns:.95fr 1.15fr;gap:60px}
.contact .eyebrow{color:#a32328}.contact p{color:#53616b}.contact .note{font-size:14px;margin-bottom:0}
.mail{font-weight:400;letter-spacing:-.03em;text-decoration-thickness:1px;text-underline-offset:8px;color:#a32328}
footer .wrap{padding-block:34px}footer{padding-bottom:90px}
.back-top{background:#fff;color:#46535c;border:1px solid #dce3e8;box-shadow:0 5px 22px #25334215;font-weight:500}
.back-top:hover{background:#edf2f5;color:#a32328}
.legal{padding-block:75px}.legal h2{font-weight:500}.review{border-radius:0 14px 14px 0}
html{scroll-padding-top:135px}
@media(min-width:761px) and (max-width:1000px){.hero{gap:30px}.hero figure{transform:none}.hero h1{font-size:3rem}.story,.contact .wrap{gap:35px}}
@media(max-width:760px){
 .wrap{width:calc(100% - 40px)}header{width:calc(100% - 24px);top:8px;margin-top:8px;border-radius:20px}
 header .wrap{padding:12px 16px;gap:5px;align-items:center}header .brand img{width:116px}header nav{gap:22px;font-size:14px;justify-content:center}header nav a{padding:5px 0}
 .hero{grid-template-columns:1fr;gap:42px;padding-block:52px 60px}.hero h1{font-size:clamp(2.5rem,9vw,3.6rem)}.hero figure{margin:0 4px;border-width:4px;border-radius:22px;transform:rotate(-1deg)}
 .section{padding-block:48px}.story,.contact .wrap{grid-template-columns:1fr;gap:18px}.gallery{gap:28px}.gallery a{border-width:4px;border-radius:20px}
 .contact{width:calc(100% - 24px);margin-top:20px;padding-block:36px;border-radius:24px}.contact .wrap{width:calc(100% - 40px)}.contact h2{margin-bottom:12px}
 .legal{padding-top:50px}.back-top{min-height:44px;padding:8px 14px}.eyebrow{margin-bottom:18px}html{scroll-padding-top:140px}
 footer .wrap{gap:8px;padding-top:25px}
}
@media(prefers-reduced-motion:reduce){.button,.gallery img{transition:none}}
@media print{body{background:white}header{margin:0;width:100%;border:0}.hero figure{transform:none;box-shadow:none}.contact{width:100%;background:white;border:0}.gallery a{box-shadow:none}}

[hidden]{display:none!important}.photo-viewer.is-slider .gallery{display:block}.photo-viewer.is-slider figure{max-width:920px;margin:auto}.photo-viewer .gallery img{object-fit:contain;background:#eef2f4}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:25px}.gallery-controls button{font:inherit;font-size:15px;min-height:44px;padding:8px 17px;border:1px solid #dce3e8;border-radius:24px;background:white;color:#46535c;cursor:pointer}.gallery-controls button:hover{color:#a32328}.gallery-controls button:focus-visible{outline:3px solid #a32328;outline-offset:3px}@media(max-width:400px){.gallery-controls{gap:12px}}

.parts>p:not(.eyebrow){max-width:760px}.parts-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px 48px;margin:38px 0}.parts-grid article{border-top:1px solid #e3e8ec;padding-top:24px}.parts-grid h3{font-weight:550}.parts-grid p{color:#53616b}.parts-grid a{color:#a32328}@media(max-width:760px){.parts-grid{grid-template-columns:1fr;gap:24px}}

/* Compact four-link navigation on small screens. */
@media(max-width:760px){header nav{gap:4px 15px}header nav a{min-height:36px;display:flex;align-items:center}html{scroll-padding-top:160px}}

/* History: quiet photo essay, no additional scripts. */
.history-page{padding-bottom:50px}.history-intro{max-width:820px;padding:90px 0 70px}.history-intro h1{font-size:clamp(3rem,6vw,5.6rem)}.history-intro .intro{max-width:650px;font-size:21px}.draft-label{display:inline-block;font-size:13px;color:#62707b;border-bottom:1px solid #cad4db;padding-bottom:5px}.history-chapter{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:80px 0;border-top:1px solid #e3e8ec}.history-copy{max-width:570px}.history-copy p:not(.eyebrow){color:#53616b}.history-chapter figure,.history-spread figure{margin:0}.history-chapter img,.history-spread img{width:100%;height:auto;border-radius:18px}.history-chapter:nth-of-type(odd)>figure{order:-1}.history-spread{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:0 0 75px}.history-spread img{aspect-ratio:4/3;object-fit:cover}.history-text{max-width:740px;margin:0 auto;padding:72px 0;border-top:1px solid #e3e8ec}.history-text h2{max-width:630px}.history-closing{padding:70px 50px;background:#edf2f5;border-radius:28px;margin-top:40px}.history-closing p{max-width:690px}.history-closing h2{max-width:780px}header nav a[aria-current]{color:#a32328;text-decoration:underline;text-underline-offset:7px}
@media(max-width:1000px){header nav{gap:16px}.history-chapter{gap:35px}}@media(max-width:760px){.history-intro{padding:55px 0 40px}.history-intro .intro{font-size:18px}.history-chapter{grid-template-columns:1fr;gap:25px;padding:45px 0}.history-chapter:nth-of-type(odd)>figure{order:0}.history-spread{gap:24px;grid-template-columns:1fr;margin-bottom:40px}.history-text{padding:45px 0}.history-closing{padding:35px 24px}header nav{gap:2px 14px;font-size:13px}}

.history-opening-photo{margin:0 0 75px}.history-opening-photo figure{margin:0}.history-opening-photo img{width:100%;max-height:620px;object-fit:cover;border-radius:24px}.history-opening-photo figcaption{max-width:750px}.history-chapter a{display:block}.history-chapter img{height:auto}.history-chapter .eyebrow,.history-text .eyebrow{line-height:1.6}header nav{font-size:14px}@media(max-width:760px){.history-opening-photo{margin-bottom:42px}.history-opening-photo img{border-radius:18px;max-height:none}.history-page h2{font-size:clamp(1.85rem,7vw,2.7rem)}header nav{font-size:14px}}
