@import "https://fonts.googleapis.com/css2?family=Bellefair&display=swap";:root{color:#105ac1;background:#fff;font-family:Bellefair,serif}*{box-sizing:border-box}body{color:#105ac1;background:#fff;min-height:100vh;margin:0}html{overscroll-behavior-y:none;background:#fff}.site-header{z-index:1000;isolation:isolate;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;background:#f7f3ee;border-bottom:1px solid #105ac126;padding:28px 20px 18px;position:sticky;top:0;box-shadow:0 2px 10px #00000008}.site-header h1{letter-spacing:1px;margin:0 0 18px;font-size:clamp(36px,5vw,64px);font-weight:400}nav{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}nav a{color:#105ac1;opacity:.75;font-size:clamp(18px,2vw,22px);text-decoration:none}nav a.active{opacity:1;text-underline-offset:5px;text-decoration:underline}.page{text-align:center;justify-content:center;align-items:flex-start;min-height:calc(100vh - 140px);padding:25px 20px 90px;display:flex}.content-card,.welcome-page{width:100%;max-width:900px;margin:0 auto}.hero-frame{z-index:1;justify-content:center;align-items:center;width:190px;height:250px;margin:0 auto 12px;display:flex;position:relative}.couple-photo{object-fit:cover;border-radius:50%/42%;width:190px;height:250px;display:block}.welcome-page h2{z-index:2;margin:0 0 22px;font-size:clamp(54px,8vw,90px);font-weight:400;position:relative}.divider{justify-content:center;align-items:center;gap:18px;margin-bottom:38px;display:flex}.divider span:not(.heart){background:#105ac1;width:min(90px,20vw);height:1px}.heart{font-size:28px;line-height:1}.welcome-page p{max-width:720px;margin:18px auto;font-size:clamp(22px,3vw,30px);line-height:1.65}.content-card h2{margin:0 0 28px;font-size:clamp(54px,8vw,90px);font-weight:400}.content-card h3{margin:34px 0 8px;font-size:clamp(30px,4vw,42px);font-weight:400}.content-card p{margin:12px 0;font-size:clamp(22px,3vw,30px);line-height:1.5}.program-list{margin-top:24px}.program-list span{min-width:70px;display:inline-block}@media (width<=600px){.site-header{padding:24px 14px 16px}nav{gap:12px}.page{padding-top:45px}.hero-frame{width:175px;height:230px;margin:0 auto 10px}.couple-photo{width:175px;height:230px}.signature-image{width:min(150px,34vw)}.signature-line{width:min(135px,34vw);min-width:70px}.signature-section{gap:10px}}.nav-divider{background:#105ac140;width:1px;height:18px;display:inline-block}.menu-page{text-align:center;width:100%;max-width:900px;margin:0 auto}.menu-page h2{margin:0 0 55px;font-size:clamp(72px,12vw,120px);font-weight:400}.menu-section{margin-bottom:42px}.menu-section h3{margin:0 0 12px;font-size:clamp(42px,7vw,64px);font-weight:400}.menu-section p{margin:2px 0;font-size:clamp(24px,4vw,34px);line-height:1.3}.program-page{width:100%;max-width:520px;margin:0 auto}.program-page h2{text-align:center;margin-bottom:60px;font-size:clamp(72px,12vw,120px);font-weight:400}.program-grid{grid-template-columns:1fr 1fr;gap:0 70px;display:grid}.program-item{width:100%;margin-bottom:-20px}.program-item.left,.program-item.right{text-align:center}.program-item p{margin:0;font-size:clamp(24px,4vw,36px)}@media (width<=768px){.program-item.left,.program-item.right{text-align:center}.program-icon{margin-left:auto;margin-right:auto}}.upload-page{text-align:center;width:100%;max-width:760px;margin:0 auto}.upload-page h2{margin:0 0 24px;font-size:clamp(60px,11vw,110px);font-weight:400}.upload-page p{max-width:680px;margin:18px auto;font-size:clamp(24px,4vw,34px);line-height:1.55}.upload-button{color:#105ac1;background:0 0;border:1px solid #105ac1;border-radius:999px;margin-top:40px;padding:16px 34px;font-family:Bellefair,serif;font-size:clamp(24px,4vw,32px);text-decoration:none;transition:all .2s;display:inline-block}.upload-button:hover{color:#fff;background:#105ac1}.upload-note{opacity:.75;margin-top:28px!important;font-size:clamp(20px,3vw,26px)!important}.file-button{color:#105ac1;cursor:pointer;background:0 0;border:1px solid #105ac1;border-radius:999px;margin-top:35px;padding:16px 34px;font-family:Bellefair,serif;font-size:clamp(24px,4vw,32px);display:inline-block}.file-button input{display:none}.upload-button{color:#fff;cursor:pointer;background:#105ac1;border:1px solid #105ac1;border-radius:999px;margin-top:20px;padding:14px 34px;font-family:Bellefair,serif;font-size:clamp(24px,4vw,32px);display:inline-block}.upload-selected,.upload-status{font-size:clamp(20px,3vw,26px)!important}.progress-bar{border:1px solid #105ac159;border-radius:999px;width:min(420px,90vw);height:8px;margin:28px auto 0;overflow:hidden}.progress-bar div{background:#105ac1;height:100%;transition:width .25s}.upload-button:disabled{opacity:.55;cursor:not-allowed;opacity:.55;cursor:not-allowed}.program-icon{object-fit:contain;width:140px;height:140px;margin:0 auto 4px;display:block}.program-item:first-child{margin-top:0}.program-item:nth-child(2){margin-top:40px}.program-item:nth-child(3){margin-top:80px}.program-item:nth-child(4){margin-top:120px}.program-item:nth-child(5){margin-top:160px}.program-item:nth-child(6){margin-top:200px}.signature-intro{margin-top:55px;margin-bottom:20px;font-size:clamp(22px,3vw,30px)}.signature-section{justify-content:center;align-items:flex-end;gap:clamp(12px,4vw,35px);margin-top:10px;display:flex}.signature-block{flex-direction:column;align-items:center;display:flex}.signature-image{width:min(220px,35vw);height:auto;margin-bottom:8px;display:block}.signature-line{background:#105ac1a6;width:170px;min-width:170px;height:1px;display:block}.signature-heart{color:#105ac1;flex-shrink:0;margin-bottom:2px;font-size:30px;line-height:1}.drinks-page{text-align:center;width:100%;max-width:760px;margin:0 auto}.wine-page{text-align:center;width:100%;max-width:1180px;margin:0 auto}.wine-slider{grid-template-columns:repeat(3,1fr);align-items:start;gap:55px;display:grid}.drink-section{margin-bottom:70px}.wine-section{margin-bottom:0}.drinks-page h2{margin:0 0 55px;font-size:clamp(72px,12vw,120px);font-weight:400}.wine-section h2{margin:0 0 38px;font-size:clamp(58px,7vw,92px);font-weight:400}.drink-section h3{margin:0 0 24px;font-size:clamp(34px,6vw,58px);font-weight:400}.wine-section h3{margin:32px 0 14px;font-size:clamp(30px,3vw,44px);font-weight:400}.wine-section h4{margin:18px 0 6px;font-size:clamp(22px,2.2vw,30px);font-weight:400}.drink-section p{margin:8px auto;font-size:clamp(24px,4vw,34px);line-height:1.45}.wine-section p{margin:6px auto;font-size:clamp(20px,2vw,27px);line-height:1.35}.wine-dots,.swipe-hint{display:none}.blue{color:#105ac1}.brown{color:#a65325}.pink{color:#e87da5}.dark-pink{color:#c84f75}.white-wine{color:#9acdf5}.rose-wine{color:#f07f86}.red-wine{color:#b83a48}@media (width<=768px){.wine-page{max-width:100%}.wine-dots{justify-content:center;gap:14px;margin-bottom:10px;display:flex}.dot{border-radius:50%;width:11px;height:11px;display:block}.white-dot{background:#9acdf5}.rose-dot{background:#f07f86}.red-dot{background:#b83a48}.swipe-hint{opacity:.75;margin:0 auto 24px;font-size:22px;display:block}.wine-slider{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:0;width:100%;padding-bottom:20px;display:flex;overflow-x:auto}.wine-slider::-webkit-scrollbar{display:none}.wine-section{scroll-snap-align:start;min-width:100%;padding:0 20px}.wine-section h2{margin-bottom:34px;font-size:clamp(70px,16vw,105px)}}
