@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Lora:wght@400;500;700&display=swap");:root{--font-base:"Inter",sans-serif;--font-serif:"Lora",serif;--color-bg:#fdfdfc;--color-text:#222;--color-accent:#0066cc}*{box-sizing:border-box;margin:0}*,body{padding:0}body{font-family:var(--font-base);background-color:var(--color-bg);color:var(--color-text);font-size:clamp(1rem,2.5vw,1.125rem);line-height:1.8;font-weight:400}.story-content{font-family:var(--font-serif);font-weight:500}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:700;line-height:1.3;margin-bottom:1rem}h1{font-size:clamp(2rem,5vw,2.4rem)}h2{font-size:clamp(1.5rem,4vw,2rem)}a{color:var(--color-accent)}a,a:hover{text-decoration:none}p{margin-bottom:.75rem;line-height:1.8}.story-content p{margin-bottom:1.2rem}.story-content hr{margin:1.5rem 0;border-top:1px solid #999}canvas,img,picture,svg,video{display:block}.heroImage,canvas,img,picture,svg,video{max-width:100%;height:auto;border-radius:8px}.imageCaption{font-size:.9rem;color:#666;margin-top:.5rem}.container,main{padding:2rem}.grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:2rem;gap:2rem;padding-top:1rem}nav a{padding:.75rem 1rem}.hamburger{display:none;font-size:1.8rem;background:none;border:none;cursor:pointer;color:#222;min-width:44px;min-height:44px}@media screen and (max-width:768px){.intro h1{font-size:2rem}.intro p{font-size:1.1rem;line-height:1.7}.imageCaption{font-size:.8rem}.heroImage{border-radius:6px}.container,main{padding:1.5rem 1rem}h1{font-size:2rem}h2{font-size:1.5rem}nav a{padding:1rem}.hamburger{display:block;font-size:2rem}}body,html{overflow-x:hidden;margin:0;padding:0}.container,.main{max-width:100%;padding-left:1rem;padding-right:1rem;box-sizing:border-box}nav{position:relative;z-index:10}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));grid-gap:2rem;gap:2rem;padding-top:1rem}@media (max-width:768px){.photo-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}}@media (max-width:480px){.photo-grid{grid-template-columns:1fr;gap:1rem}}