@media (max-width:1199px){:root{--container-padding:1.5rem}.nav-links{gap:1.5rem}.nav-links a{font-size:.85rem}.hero-names{font-size:clamp(2.5rem, 8vw, 5rem)}.about-grid{gap:var(--space-md)}.about-image-main img{height:350px}.timeline-card{width:calc(50% - 60px);padding:1.5rem}.timeline-marker{width:70px;height:70px}.timeline-date{font-size:1.5rem}.wear-grid{grid-template-columns:repeat(2,1fr)}.things-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item:first-child,.gallery-item:nth-child(6){grid-column:span 1;grid-row:span 1;aspect-ratio:1}}@media (max-width:767px){:root{--space-lg:3rem;--space-xl:4rem;--space-xxl:5rem}.cypress-tree{display:none}.nav-links,.nav-rsvp{display:none}.nav-toggle{display:flex}.nav.scrolled::after{content:'';position:absolute;bottom:0;left:0;right:0;height:20px;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 20' preserveAspectRatio='xMidYMax slice'%3E%3Cg fill='%235B6B4F'%3E%3Cellipse cx='20' cy='18' rx='3' ry='12'/%3E%3Cellipse cx='40' cy='17' rx='3.5' ry='14'/%3E%3Cellipse cx='62' cy='18' rx='3' ry='11'/%3E%3Cellipse cx='82' cy='16' rx='4' ry='15'/%3E%3Cellipse cx='105' cy='18' rx='3' ry='12'/%3E%3Cellipse cx='128' cy='17' rx='3.5' ry='13'/%3E%3Cellipse cx='150' cy='18' rx='3' ry='11'/%3E%3Cellipse cx='172' cy='16' rx='4' ry='15'/%3E%3Cellipse cx='195' cy='18' rx='3' ry='12'/%3E%3Cellipse cx='218' cy='17' rx='3.5' ry='14'/%3E%3Cellipse cx='240' cy='18' rx='3' ry='11'/%3E%3Cellipse cx='262' cy='16' rx='4' ry='15'/%3E%3Cellipse cx='285' cy='18' rx='3' ry='12'/%3E%3Cellipse cx='308' cy='17' rx='3.5' ry='13'/%3E%3Cellipse cx='330' cy='18' rx='3' ry='11'/%3E%3Cellipse cx='352' cy='16' rx='4' ry='15'/%3E%3Cellipse cx='375' cy='18' rx='3' ry='12'/%3E%3Cellipse cx='398' cy='17' rx='3.5' ry='14'/%3E%3C/g%3E%3C/svg%3E");background-repeat:repeat-x;background-position:center bottom;background-size:auto 100%}@keyframes hamburgerNudge{0%,100%{transform:scale(1) rotate(0)}15%{transform:scale(1.15) rotate(-5deg)}30%{transform:scale(1.1) rotate(5deg)}45%{transform:scale(1.05) rotate(-3deg)}60%{transform:scale(1) rotate(0)}}.nav-toggle.attention-nudge{animation:hamburgerNudge .8s cubic-bezier(.36,.07,.19,.97) forwards}.nav-toggle.attention-nudge span{background-color:var(--color-accent);box-shadow:0 0 8px rgba(196,164,132,.5)}.nav.scrolled .nav-toggle.attention-nudge span{background-color:var(--color-accent);box-shadow:0 0 8px rgba(196,164,132,.5)}.nav-logo{font-size:1.25rem}.hero{min-height:100vh}.hero-content{padding:0 1rem}.hero-names{font-size:2.5rem}.hero-date{font-size:1.125rem}.hero-location{font-size:.875rem}.countdown{gap:1rem;margin-top:2rem}.countdown-number{font-size:2rem}.countdown-label{font-size:.65rem}.section-title{font-size:2rem}.section-subtitle{font-size:1rem;margin-bottom:var(--space-md)}.about-grid{grid-template-columns:1fr}.about-text{order:2}.about-images{order:1}.about-image-main img{height:300px}.about-image-secondary img,.about-image-travel img{height:150px}.oakley-image{width:150px;height:150px}.oakley-caption{font-size:1.125rem}.timeline{padding-left:70px}.timeline-line{left:30px;transform:translateX(0)}.timeline-item{flex-direction:row!important;margin-bottom:var(--space-md)}.timeline-marker{left:0;transform:translateX(0);width:60px;height:60px;z-index:2}.timeline-day{font-size:.6rem}.timeline-date{font-size:1.25rem}.timeline-card{width:calc(100% - 70px);margin-left:auto!important;margin-right:0!important;text-align:left!important;padding:1.25rem}.timeline-card h3{font-size:1.25rem}.timeline-time{font-size:.85rem}.dress-code{font-size:.75rem;padding:.35rem .75rem}.wear-grid{grid-template-columns:1fr;gap:1rem}.wear-card{padding:1.5rem}.wear-code{font-size:1.25rem}.packing-tips{padding:1.5rem}.passport-notice{padding:2rem}.passport-notice-title{font-size:1.5rem}.passport-notice-actions{flex-direction:column;gap:.75rem}.passport-notice-link{justify-content:center}.skyscanner-widget-wrapper{padding:1rem}.google-flights-option{padding:1.5rem}.flights-buttons{flex-direction:column;align-items:center}.google-flights-button{padding:.875rem 1.5rem;font-size:.9rem;width:100%;max-width:100%}.travel-tabs{position:relative}.tab-buttons{display:flex;flex-direction:column;gap:.5rem;border-bottom:none;padding-bottom:0;margin-bottom:1.5rem;background:var(--color-villa-cream);border-radius:var(--radius-lg);padding:.75rem}.tab-button{display:flex;align-items:center;gap:.75rem;flex:none;width:100%;padding:1rem 1.25rem;font-size:.95rem;font-weight:500;text-align:left;background:var(--color-white);border-radius:var(--radius-md);border:1px solid transparent;color:var(--color-text-secondary);margin-bottom:0;transition:all .25s cubic-bezier(.4, 0, .2, 1);box-shadow:0 1px 3px rgba(0,0,0,.04)}.tab-button:hover{border-color:var(--color-primary);color:var(--color-text)}.tab-button.active{background:var(--color-dark);color:var(--color-white);border-color:var(--color-dark);box-shadow:0 4px 12px rgba(26,24,20,.15);transform:scale(1.02)}.tab-button .tab-icon{display:block;flex-shrink:0;opacity:.6;transition:opacity .25s ease}.tab-button.active .tab-icon,.tab-button:hover .tab-icon{opacity:1}.tab-button span{flex:1}.tab-button.active::after{content:'';width:6px;height:6px;border-radius:50%;background:var(--color-primary);flex-shrink:0;animation:tabPulse 2s ease-in-out infinite}@keyframes tabPulse{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.tab-content{animation:tabSlideIn .35s cubic-bezier(.4,0,.2,1)}@keyframes tabSlideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.airport-table{overflow-x:auto}.airport-row{grid-template-columns:1fr 1fr;gap:.5rem;font-size:.9rem}.airport-header{display:none}.passport-table{font-size:.9rem}.passport-table td,.passport-table th{padding:.75rem .5rem}.stay-hero{height:300px}.stay-content{padding:2rem 1.5rem}.stay-content h3{font-size:1.5rem}.things-grid{grid-template-columns:1fr;gap:1.5rem}.thing-card{display:flex;flex-direction:row}.thing-image{width:120px;height:120px;flex-shrink:0}.thing-content{padding:1rem}.thing-content h3{font-size:1.125rem}.thing-content p{font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.faq-question{font-size:1.125rem;padding:1.25rem 0}.rsvp{padding:var(--space-xl) 0}.rsvp .section-title{font-size:1.75rem}.rsvp-button{padding:1rem 2rem;font-size:.9rem}.registry-content p:first-of-type{font-size:1.25rem}.footer{padding:var(--space-md) 0}.footer-names{font-size:1.5rem}}@media (max-width:575px){:root{--container-padding:1rem}body{font-size:1rem}.hero-names{font-size:2rem}.hero-date{font-size:1rem}.countdown{gap:.75rem}.countdown-number{font-size:1.75rem}.timeline{padding-left:60px}.timeline-line{left:25px}.timeline-marker{width:50px;height:50px}.timeline-card{width:calc(100% - 60px)}.tab-button{padding:.875rem 1rem;font-size:.9rem}.tab-buttons{padding:.5rem}.thing-card{flex-direction:column}.thing-image{width:100%;height:180px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1400px){:root{--container-max:1320px}.hero-names{font-size:8rem}.section-title{font-size:4rem}.about-image-main img{height:500px}.about-image-secondary img,.about-image-travel img{height:250px}}@media print{.countdown,.mobile-menu,.nav,.registry-button,.rsvp-button,.scroll-indicator{display:none!important}.hero{height:auto;min-height:auto;padding:2rem 0}.hero-background{display:none}.hero-content{color:#000}.section{padding:2rem 0;page-break-inside:avoid}body{background:#fff;color:#000}a{text-decoration:underline}}@media (hover:none){.gallery-item:hover img,.thing-card:hover,.wear-card:hover{transform:none}.faq-question,.nav-links a,.tab-button{min-height:44px;display:flex;align-items:center}}@media (max-height:500px) and (orientation:landscape){.hero{min-height:100vh}.hero-content{padding-top:80px}.hero-names{font-size:2rem}.countdown{margin-top:1rem}.scroll-indicator{display:none}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}