.section-head{text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:720px;margin:0 auto 64px;display:flex}.section-head h2{font-family:var(--serif);letter-spacing:-.025em;color:var(--accent);font-size:clamp(48px,6vw,88px);font-weight:300;line-height:.95}.section-head .cap{color:var(--text)}.section-head.is-center{text-align:center;align-items:center;margin-left:auto;margin-right:auto}.invite{padding:136px var(--pad);justify-content:center;display:flex}.invite-card{border:1px solid var(--accent);width:100%;max-width:840px;padding:12px}.invite-inner{text-align:center;border:1px solid #d4b373b3;flex-direction:column;align-items:center;gap:22px;padding:72px clamp(24px,6vw,80px) 64px;display:flex}.crest{border:1px solid var(--accent);justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:18px;display:flex;transform:rotate(45deg)}.crest span{font-family:var(--serif);color:var(--accent);font-size:32px;font-weight:400;line-height:1;transform:rotate(-45deg)}.invite-inner>.cap{color:var(--text);letter-spacing:.32em}.invite-request{font-family:var(--serif);color:var(--muted);font-size:clamp(20px,2vw,26px);font-weight:300;line-height:1.3}.invite-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--accent);max-width:600px;font-size:clamp(38px,4.6vw,62px);font-weight:300;line-height:1.02}.invite-body{color:var(--text-2);max-width:520px;font-size:17px;line-height:1.8}.invite-details{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:22px 0 4px;display:grid}.invite-details>div{flex-direction:column;gap:8px;padding:4px 16px;display:flex}.invite-details>div+div{border-left:1px solid var(--line)}.invite-details dd{font-family:var(--serif);color:var(--text);margin:0;font-size:21px;line-height:1.25}.invite-sign{font-family:var(--serif);color:var(--accent);margin-top:12px;font-size:36px;font-weight:300;line-height:1}.rooms{padding:128px var(--pad);background:var(--surface)}.doors{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1240px;margin:0 auto;padding:0;list-style:none;display:grid}.doors li{display:flex}.doors.is-tools{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),380px));justify-content:center}.tool-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 48px;max-width:1240px;margin:0 auto;display:grid}.tool-index-group h3{border-bottom:1px solid var(--accent);font-family:var(--serif);color:var(--accent);align-items:baseline;gap:12px;margin:0 0 10px;padding-bottom:14px;font-size:36px;font-weight:300;line-height:1;display:flex}.tool-index-group h3 span{color:var(--muted);font-size:18px}.tool-index-group ul{margin:0;padding:0;list-style:none}.tool-index-group li{border-bottom:1px solid var(--line)}.tool-index-group a{color:inherit;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;text-decoration:none;display:flex}.ti-text{flex-direction:column;gap:4px;display:flex}.ti-name{font-family:var(--serif);color:var(--text);font-size:24px;line-height:1.1}.ti-line{color:var(--text-2);font-size:14px;line-height:1.5}.ti-arrow{color:var(--accent);transition:transform .25s}.tool-index-group a:hover .ti-name{text-decoration:underline;text-decoration-color:var(--gold,#b89348);text-underline-offset:5px;text-decoration-thickness:1px}.tool-index-group a:hover .ti-arrow{transform:translate(4px)}@media (width<=1100px){.tool-index{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.tool-index{grid-template-columns:1fr;gap:40px}}.door.door{min-height:340px}.door{background:var(--bg);width:100%;min-height:420px;transition:border-color .6s var(--ease-silk,ease);border:1px solid #12352459;padding:14px;display:flex}.door-panel{text-align:center;border:1px solid var(--line);transition:border-color .6s var(--ease-silk,ease);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:40px 28px;display:flex;position:relative}.door-num{font-family:var(--serif);color:var(--muted);font-size:22px;line-height:1}.door-name{font-family:var(--serif);color:var(--accent);font-size:clamp(32px,2.8vw,42px);font-weight:300;line-height:1.02}.door-line{color:var(--text-2);max-width:260px;font-size:15px;line-height:1.7}.door-status{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500;position:absolute;bottom:28px;left:0;right:0}.door-status.is-open{color:var(--accent)}a.door:hover{border-color:var(--accent)}a.door:hover .door-panel{border-color:var(--gold)}a.door:hover .door-name{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.16em;text-decoration-thickness:1px}.door.is-closed .door-name{color:var(--text-2)}.hosts{padding:136px var(--pad)}.host-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,7vw,112px);max-width:1080px;margin:0 auto;display:grid}.host{text-align:center;flex-direction:column;align-items:center;gap:32px;display:flex}.host-photo{width:100%;max-width:420px;display:block;overflow:hidden}.host-photo img{aspect-ratio:4/5;object-fit:cover;width:100%}.host-copy{flex-direction:column;align-items:center;gap:16px;max-width:420px;display:flex}.host-copy h3{font-family:var(--serif);color:var(--accent);align-items:center;gap:16px;font-size:56px;font-weight:300;line-height:1;display:flex}.host-copy h3 a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.16em;text-decoration-thickness:1px}.host-copy p{color:var(--text-2);font-size:16px;line-height:1.75}.host-copy .link{align-self:center;margin-top:6px}.host-copy .baybayin{font-size:26px}.customs{padding:120px var(--pad);background:var(--surface);flex-direction:column;align-items:center;gap:56px;display:flex}.customs>.cap{color:var(--text)}.custom-list{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;padding:0;list-style:none;display:grid}.custom-list li{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:8px clamp(16px,3vw,48px);display:flex}.custom-list li+li{border-left:1px solid var(--line)}.custom-num{font-family:var(--serif);color:var(--muted);font-size:20px;line-height:1}.custom-title{font-family:var(--serif);color:var(--accent);font-size:clamp(30px,2.8vw,40px);font-weight:300;line-height:1.08}.custom-note{color:var(--text-2);max-width:300px;font-size:15px;line-height:1.7}.name-room{padding:136px var(--pad);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:48px 20px;display:grid}.name-mark{flex-direction:column;grid-column:span 6;gap:20px;display:flex}.name-mark .cap{color:var(--text)}.name-mark h2{font-family:var(--serif);letter-spacing:-.035em;color:var(--accent);font-size:clamp(88px,13vw,196px);font-weight:300;line-height:.82}.name-mark .name-est{color:var(--muted);letter-spacing:.32em}.name-copy{flex-direction:column;grid-column:8/span 5;gap:22px;display:flex}.name-line{flex-direction:column;gap:14px;margin:16px 0 0;padding:0;list-style:none;display:flex}.name-line li{color:var(--text-2);grid-template-columns:96px minmax(0,1fr);align-items:baseline;gap:16px;font-size:15px;line-height:1.6;display:grid}.name-line .year{font-family:var(--serif);color:var(--accent);font-size:26px;font-weight:300;line-height:1}.drawing{padding:128px var(--pad);background:var(--surface)}.drawing .section-head{margin-bottom:48px}.story-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.story-card{flex-direction:column;gap:14px;display:flex}.story-photo{display:block;overflow:hidden}.story-photo img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:scale 1.6s var(--ease-silk,ease)}.story-card:hover img{scale:1.03}.story-title{font-family:var(--serif);color:var(--accent);font-size:30px;font-weight:300;line-height:1.1}.story-card:hover .story-title{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.16em;text-decoration-thickness:1px}.story-empty{font-family:var(--serif);color:var(--text-2);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:12px 28px;font-size:30px;font-weight:300;line-height:1.3;display:flex}.story-empty .link{align-self:baseline}.invitations{padding:128px var(--pad)}.invitations .section-head{margin-bottom:0}@media (width<=900px){.invitations{padding-top:80px;padding-bottom:80px}}.guestbook{padding:136px var(--pad)}.guestbook-inner{text-align:center;flex-direction:column;align-items:center;gap:24px;max-width:760px;margin:0 auto;display:flex}.guestbook .cap{color:var(--band-text);letter-spacing:.32em}.guestbook h2{font-family:var(--serif);letter-spacing:-.02em;color:var(--band-head);font-size:clamp(42px,5.2vw,76px);font-weight:300;line-height:1}.guestbook p{color:var(--band-text);max-width:480px;font-size:17px;line-height:1.75}.guestbook .btn{margin-top:12px}@media (width<=1100px){.doors{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.invite,.hosts,.name-room,.guestbook{padding-top:80px;padding-bottom:80px}.rooms,.customs,.drawing{padding-top:72px;padding-bottom:80px}.section-head{margin-bottom:40px}.invite-inner{gap:18px;padding:52px 22px 44px}.invite-details{grid-template-columns:1fr;gap:18px}.invite-details>div+div{border-left:0}.host-pair{grid-template-columns:1fr;gap:72px}.custom-list{grid-template-columns:1fr;gap:40px}.custom-list li+li{border-left:0}.name-mark,.name-copy{grid-column:span 12}.story-row{grid-template-columns:1fr;gap:40px}.story-empty{font-size:24px}}@media (width<=600px){.doors{grid-template-columns:1fr}.door{min-height:340px}.host-copy h3{font-size:44px}}
