:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:"";background:#000;position:absolute;inset:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right{z-index:0;backface-visibility:hidden}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafafa;color:#333}.app{max-width:100%;margin:0 auto;background-color:#fff}section{padding:60px 20px;text-align:center}.section-title{font-size:28px;font-weight:600;margin-bottom:10px;letter-spacing:2px;color:#8b7355}.section-subtitle{font-size:16px;color:#666;margin-bottom:40px}.hero-section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px}.hero-content{text-align:center}.hero-title{font-size:36px;font-weight:300;margin-bottom:30px;color:#5d4037}.hero-title-image{display:flex;justify-content:center;align-items:center}.hero-title-img{max-width:400px;width:100%;height:auto;object-fit:fill;transform:scaleX(1.2)}.couple-names{font-size:28px;margin-bottom:20px;color:#4a4a4a;vertical-align:middle}.heart-icon{color:#fdadbc;font-size:24px;margin:0 10px;vertical-align:middle}.wedding-date{margin-bottom:40px;color:#5d4037}.date{font-size:20px;margin-bottom:5px}.time{font-size:18px;color:#6d4c41}.main-photo-placeholder{margin:30px 0;position:relative}.main-photo{width:360px;height:480px;object-fit:cover;box-shadow:0 8px 15px #0003;margin:0 auto;display:block;transform:rotate(-3deg);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;pointer-events:auto}.photo-tape{position:absolute;top:-30px;left:50%;transform:translateZ(0) translate(-50%) rotate(-2deg);width:150px;height:60px;z-index:10;opacity:.8;-webkit-opacity:.8;-webkit-transform:translateZ(0) translateX(-50%) rotate(-2deg);-webkit-backface-visibility:hidden;backface-visibility:hidden;filter:drop-shadow(0 1px 4px rgba(70,70,70,.15)) drop-shadow(0 2px 4px rgba(16,16,16,.1));user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;pointer-events:auto}.photo-box{width:300px;height:400px;background-color:#f5f5f5;border:2px dashed #ccc;display:flex;justify-content:center;align-items:center;border-radius:10px;margin:0 auto}.placeholder-text{color:#999;font-size:14px}.music-control-fixed{position:fixed;top:20px;right:20px;width:45px;height:45px;background-color:#fffffff2;border:2px solid #8b7355;border-radius:50%;cursor:pointer;z-index:999;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.music-control-fixed.pulse{animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite}.music-control-fixed:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003;background-color:#fff}.music-control-fixed:active{transform:scale(.95)}.music-icon{font-size:24px;color:#8b7355;transition:color .3s}.music-control-fixed.playing .music-icon{color:#ff6b6b;animation:pulse 1.5s infinite}.music-off-icon{position:absolute;font-size:32px;color:#ff6b6b;font-weight:700;pointer-events:none}@keyframes pulse{0%,to{transform:scale(.9)}50%{transform:scale(1.1)}}@keyframes pulse-ring{0%,to{box-shadow:0 4px 12px #00000026,0 0 #8b7355b3}50%{box-shadow:0 4px 12px #00000026,0 0 0 10px #8b735500}}.music-hint{position:fixed;top:80px;right:20px;background:#fffffff2;padding:10px 15px;border-radius:10px;box-shadow:0 4px 12px #00000026;z-index:998;animation:fade-in-out 3s ease-in-out infinite}.music-hint p{margin:0;font-size:13px;color:#8b7355;font-weight:500}@keyframes fade-in-out{0%,to{opacity:.6}50%{opacity:1}}.invitation-section{background:linear-gradient(135deg,#fff4e0,#fdadbc)}.invitation-content{max-width:600px;margin:0 auto}.invitation-text{margin-bottom:50px}.invitation-message{line-height:1.8;font-size:15px;color:#555}.parents-info{margin-top:40px}.parent-row{margin-bottom:40px;padding:30px;background-color:#fafafa;border-radius:10px}.parent-label{font-size:14px;color:#8b7355;margin-bottom:10px}.parent-names{font-size:16px;margin-bottom:5px}.parent-relation{font-size:14px;color:#666;margin-bottom:5px}.child-name{font-size:20px;font-weight:600;margin:15px 0;color:#333}.contact-btn{padding:8px 20px;background-color:#8b7355;color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;margin-top:10px;transition:background-color .3s}.contact-btn:hover{background-color:#6d5a45}.interview-section{background-color:#f9f9f9}.interview-list{max-width:700px;margin:0 auto}.interview-item{margin-bottom:40px;text-align:left}.interview-question{font-size:18px;font-weight:600;margin-bottom:20px;color:#333;text-align:center}.interview-answers{display:flex;flex-direction:column;gap:15px}.answer-box{padding:20px;border-radius:10px;background-color:#fff;box-shadow:0 2px 8px #0000000d}.answer-label{display:inline-block;font-size:12px;font-weight:600;padding:4px 12px;border-radius:12px;margin-bottom:10px}.groom-answer .answer-label{background-color:#e3f2fd;color:#1976d2}.bride-answer .answer-label{background-color:#fce4ec;color:#c2185b}.answer-text{font-size:15px;line-height:1.6;color:#555}.gallery-section{background-color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;max-width:1000px;margin:0 auto;padding:0 20px}@media(max-width:768px){.gallery-section{padding:60px 0}.gallery-grid{padding:0 10px}}@media(max-width:480px){.gallery-section{padding:40px 0}.gallery-grid{padding:0 10px;gap:5px}}.gallery-item{cursor:pointer;transition:box-shadow .3s ease;position:relative;padding-bottom:100%;overflow:hidden}.gallery-item:hover{box-shadow:0 4px 12px #00000026}.gallery-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f5f5f5;border:2px dashed #ddd;display:flex;justify-content:center;align-items:center;border-radius:8px}.modal-overlay{position:fixed;inset:0;background-color:#000000d9;z-index:1000}.modal-close{position:fixed;top:20px;right:20px;background:none;border:none;color:#fff;font-size:40px;cursor:pointer;z-index:1002;transition:all .2s;width:50px;height:50px;display:flex;align-items:center;justify-content:center}.modal-close:hover{transform:scale(1.2);color:#fff}.gallery-swiper-wrapper{width:100%;height:100vh}.gallery-modal-swiper{width:100%;height:100%}.gallery-modal-swiper .swiper-slide{display:flex;align-items:center;justify-content:center}.modal-image-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0}.modal-image{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.modal-image-placeholder{width:100%;height:100%;max-width:100%;max-height:100%;background-color:#f5f5f5;border:none;display:flex;justify-content:center;align-items:center;border-radius:0;object-fit:contain}.gallery-modal-swiper .swiper-pagination{bottom:30px}.gallery-modal-swiper .swiper-pagination-bullet{background-color:#fff;opacity:.5;width:8px;height:8px}.gallery-modal-swiper .swiper-pagination-bullet-active{opacity:1;background-color:#fff}.gallery-modal-swiper .swiper-button-next,.gallery-modal-swiper .swiper-button-prev{color:#5a5a5a;width:25px;height:25px;z-index:1001;background:#ffffff1a;border-radius:50%;transition:all .3s;padding:5px}.gallery-modal-swiper .swiper-button-next:hover,.gallery-modal-swiper .swiper-button-prev:hover{background:#fff3;color:#787878}.gallery-modal-swiper .swiper-button-next:after,.gallery-modal-swiper .swiper-button-prev:after{font-size:15px;font-weight:700}.gallery-modal-swiper .swiper-button-disabled{opacity:.3;cursor:not-allowed}.wedding-date-section{background:linear-gradient(135deg,#fff4e0,#fdadbc);padding:80px 20px}.wedding-date-content{max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.date-info{text-align:center;margin-bottom:40px}.date-text{font-size:28px;font-weight:600;color:#5d4037;margin-bottom:10px}.time-text{font-size:18px;color:#6d4c41}.calendar{background-color:#fff;border-radius:15px;padding:25px;box-shadow:0 4px 20px #0000001a;margin-bottom:40px;width:100%;max-width:450px}.calendar-header{text-align:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.calendar-header h3{font-size:22px;font-weight:600;color:#5d4037}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:10px}.calendar-day-label{text-align:center;font-size:11px;font-weight:600;color:#999;padding:8px 0}.calendar-day-label.weekend{color:#ff6b6b}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-date{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:#333;border-radius:8px;transition:all .3s}.calendar-date.empty{visibility:hidden}.calendar-date.weekend{color:#ff6b6b}.calendar-date.wedding-day{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;font-weight:700;font-size:16px;box-shadow:0 4px 12px #ff6b6b99;transform:scale(1.1)}.countdown{text-align:center}.countdown-label{font-size:18px;color:#6d4c41;margin-bottom:20px;font-weight:700}.countdown-timer{display:flex;justify-content:center;align-items:center;gap:8px}.countdown-item{display:flex;flex-direction:column;align-items:center;background-color:#fff;padding:15px 12px;border-radius:12px;min-width:60px;box-shadow:0 2px 10px #0000001a}.countdown-value{font-size:28px;font-weight:700;color:#ff6b6b;line-height:1;margin-bottom:5px}.countdown-unit{font-size:10px;color:#999;font-weight:600;letter-spacing:.5px}.countdown-divider{font-size:24px;font-weight:700;color:#fff;padding:0 4px}.location-section{background-color:#f9f9f9}.location-content{max-width:700px;margin:0 auto}.venue-info{margin-bottom:30px}.venue-name{font-size:22px;font-weight:600;margin-bottom:10px;color:#333}.venue-address,.venue-detail,.venue-phone{font-size:15px;color:#666;margin:5px 0}.map-placeholder{margin:30px 0}.map-box{width:100%;height:300px;background-color:#f5f5f5;border:2px dashed #ddd;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:8px}.transportation-info{text-align:left;margin:30px 0;padding:20px;background-color:#fff;border-radius:10px}.info-title{font-size:18px;font-weight:600;margin-bottom:15px;color:#333}.transport-item{display:flex;align-items:flex-start;margin-bottom:15px}.transport-icon{font-size:20px;margin-right:10px}.transport-description{font-size:14px;line-height:1.6;color:#555}.parking-info{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.parking-title{font-size:16px;font-weight:600;margin-bottom:10px;color:#333}.parking-description{font-size:14px;color:#555;line-height:1.6}.map-buttons{display:flex;gap:10px;justify-content:center;margin-top:20px}.map-btn{padding:10px 20px;border:1px solid #ddd;background-color:#fff;border-radius:5px;cursor:pointer;font-size:14px;transition:all .3s}.map-btn:hover{background-color:#f5f5f5}.information-section{background-color:#fff}.info-swiper-container{max-width:400px;margin:0 auto;padding:40px 20px}.info-swiper{width:100%;height:300px}.info-swiper .swiper-slide{display:flex;align-items:center;justify-content:center}.info-card{width:100%;height:100%;padding:40px 30px;background:linear-gradient(135deg,#fff4e0,#fdadbc);border-radius:15px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 4px 20px #0000001a}.card-title{font-size:22px;font-weight:600;margin-bottom:20px;color:#5d4037}.card-content{font-size:15px;line-height:1.8;color:#6d4c41;white-space:pre-line;text-align:center}.info-swiper .swiper-pagination-bullet{background-color:#8b7355;opacity:.5}.info-swiper .swiper-pagination-bullet-active{opacity:1;background-color:#8b7355}.guestbook-section{background-color:#f9f9f9}.guestbook-content{max-width:700px;margin:0 auto}.write-message-btn{padding:12px 30px;background-color:#8b7355;color:#fff;border:none;border-radius:25px;cursor:pointer;font-size:15px;margin-bottom:30px;transition:background-color .3s}.write-message-btn:hover{background-color:#6d5a45}.guestbook-form{background-color:#fff;padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 2px 10px #0000000d}.form-input,.form-textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;margin-bottom:15px;font-size:14px;font-family:inherit}.form-textarea{min-height:120px;resize:vertical}.form-submit{width:100%;padding:12px;background-color:#8b7355;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:15px;transition:background-color .3s}.form-submit:hover{background-color:#6d5a45}.guestbook-list{display:flex;flex-direction:column;gap:15px}.guestbook-entry{background-color:#fff;padding:20px;border-radius:10px;text-align:left;box-shadow:0 2px 8px #0000000d}.entry-header{display:flex;justify-content:space-between;margin-bottom:10px}.entry-author{font-weight:600;color:#333}.entry-date{font-size:12px;color:#999}.entry-message{font-size:14px;line-height:1.6;color:#555;margin-bottom:8px}.account-section{background-color:#fff}.account-content{max-width:600px;margin:0 auto}.account-tabs{display:flex;gap:10px;justify-content:center;margin-bottom:30px}.tab-btn{padding:10px 30px;background-color:#f5f5f5;border:1px solid #ddd;border-radius:25px;cursor:pointer;font-size:15px;transition:all .3s;color:#000}.tab-btn.active{background-color:#8b7355;color:#fff;border-color:#8b7355}.account-list{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.account-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background-color:#fafafa;border-radius:10px}.account-info{text-align:left}.account-holder{font-size:16px;font-weight:600;margin-bottom:5px;color:#333}.account-detail{font-size:14px;color:#666}.copy-btn{padding:8px 20px;background-color:#8b7355;color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;transition:background-color .3s}.copy-btn:hover{background-color:#6d5a45}.account-notice{padding:20px;background-color:#f9f9f9;border-radius:10px;margin-top:20px}.account-notice p{font-size:14px;color:#666;line-height:1.6}.footer{padding:40px 20px;text-align:center;background-color:#f5f5f5;color:#999;font-size:14px}@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.section-title{font-size:24px}.hero-title{font-size:28px}.hero-title-img{max-width:350px}.couple-names{font-size:24px}.main-photo{width:320px;height:420px;box-shadow:0 7px 12px #0003}.photo-tape{top:-25px;width:130px;height:50px}.photo-box{width:250px;height:350px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.modal-close{top:15px;right:15px;font-size:35px}.gallery-modal-swiper .swiper-button-next,.gallery-modal-swiper .swiper-button-prev{width:20px;height:20px;padding:5px}.gallery-modal-swiper .swiper-button-next:after,.gallery-modal-swiper .swiper-button-prev:after{font-size:10px}.wedding-date-section{padding:60px 15px}.date-text{font-size:24px}.time-text{font-size:18px}.calendar{padding:20px}.calendar-header h3{font-size:20px}.music-control-fixed{width:45px;height:45px;top:15px;right:15px}.music-icon{font-size:22px}.music-off-icon{font-size:28px}.music-hint{top:70px;right:15px;padding:8px 12px}.music-hint p{font-size:12px}}@media(max-width:480px){section{padding:40px 15px}.hero-title-img{max-width:300px}.main-photo{width:280px;height:380px;box-shadow:0 6px 10px #0003}.photo-tape{width:110px;height:50px}.map-buttons{flex-direction:column}.map-btn{width:100%}.modal-close{top:5px;right:5px;font-size:30px;width:35px;height:35px}.gallery-modal-swiper .swiper-button-next,.gallery-modal-swiper .swiper-button-prev{width:18px;height:18px}.gallery-modal-swiper .swiper-button-next:after,.gallery-modal-swiper .swiper-button-prev:after{font-size:16px}.gallery-modal-swiper .swiper-pagination{bottom:20px}.wedding-date-section{padding:40px 20px}.date-text{font-size:20px}.time-text{font-size:18px}.calendar{padding:20px}.calendar-header h3{font-size:18px}.calendar-date{font-size:12px}.calendar-date.wedding-day{font-size:14px}.countdown-item{padding:12px 8px;min-width:60px}.countdown-value{font-size:22px}.countdown-unit{font-size:9px}.countdown-divider{font-size:20px;padding:0 2px}.music-control-fixed{width:40px;height:40px;top:10px;right:10px}.music-icon{font-size:20px}.music-off-icon{font-size:26px}.music-hint{top:60px;right:10px;padding:6px 10px}.music-hint p{font-size:11px}}
