@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap");:root{--ink:#292d27;--muted:#77796f;--olive:#68745d;--olive-dark:#505c47;--cream:#f5f2eb;--beige:#d9ceb9;--gold:#b49a65;--line:#e8e3d9;--white:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:DM Sans,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.shell{max-width:1100px;margin:0 auto;padding:32px 22px}.top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.brand{font-family:Playfair Display,serif;font-size:27px;letter-spacing:3px;color:var(--olive-dark)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted);text-transform:uppercase}.hero{padding:76px 0 52px;width:100%;max-width:none}.hero h1{font:500 clamp(42px,7vw,72px)/1.08 Playfair Display,serif;margin:16px 0;color:var(--ink)}.hero p{color:var(--muted);font-size:17px;line-height:1.8;max-width:none;width:100%}h1,h2,h3{color:var(--ink)}h2{font:500 28px/1.25 Playfair Display,serif;margin-top:0}h3{font:500 21px Playfair Display,serif}.btn{border:1px solid var(--olive);background:var(--olive);color:white;padding:13px 21px;border-radius:8px;font-weight:600;cursor:pointer;display:inline-block;text-align:center}.btn:hover{background:var(--olive-dark);border-color:var(--olive-dark);transform:translateY(-1px);box-shadow:0 5px 14px rgba(41,45,39,.12)}.btn.secondary{background:var(--white);color:var(--olive-dark);border:1px solid var(--beige)}.btn.secondary:hover{background:#f0ece3;border-color:var(--olive)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 5px 22px rgba(41,45,39,.035)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:18px;gap:18px}.muted{color:var(--muted)}input,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:8px;font:inherit;margin:7px 0 16px;background:var(--white);color:var(--ink);outline:none;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{border-color:var(--olive);box-shadow:0 0 0 3px rgba(104,116,93,.12)}label{font-size:13px;font-weight:600;color:var(--ink)}.notice{padding:14px 16px;border-radius:9px;background:#eeece3;color:#55594e;margin:15px 0;font-size:14px;line-height:1.5}.event,.notice{border:1px solid var(--line)}.event{padding:24px;margin:16px 0;background:var(--white);border-radius:14px;box-shadow:0 4px 18px rgba(41,45,39,.035)}.event strong{font:500 23px Playfair Display,serif;color:var(--olive-dark)}.event img{border-radius:8px}.event .muted{line-height:1.6}.event>div[style*="background: rgb(255, 255, 255)"]{border-radius:12px}img{max-width:100%}@media (max-width:600px){.shell{padding:20px 16px}.top{align-items:flex-start;flex-direction:column}.brand{font-size:25px}.hero{width:100%;max-width:none;padding:38px 0 30px}.hero h1{font-size:43px}.hero p{font-size:15px}.card{padding:20px}.event{padding:19px}.btn{padding:12px 16px}}.page-content{width:100%;max-width:1100px;margin-inline:auto}.hero img{display:block;width:100%}@media (min-width:601px){.hero{padding-top:52px}}.album-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0 0 22px;padding:6px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72)}.album-tab{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer}.album-tab.active{border-color:var(--line);background:var(--white);color:var(--olive-dark);box-shadow:0 2px 8px rgba(41,45,39,.05)}.album-tab-count{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;padding:0 6px;border-radius:20px;background:#eeece3;color:var(--olive-dark);font-size:11px}.auth-submit{margin-bottom:12px}.auth-create{margin:2px 0 0!important}a:focus-visible,button:focus-visible{outline:3px solid rgba(104,116,93,.35);outline-offset:3px}@media (max-width:420px){.album-section-nav{gap:6px;padding:5px}.album-tab{padding:9px 7px;font-size:13px;gap:6px}}