:root{--paper:#f6f5ee;--ink:#344b3c;--muted:#737b6e;--line:#d9ded2;--green:#3d5545;--serif:'Songti SC','Noto Serif CJK SC','Source Han Serif SC','SimSun',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.8 -apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #9c804d;outline-offset:5px}header{height:108px;margin:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:22px;letter-spacing:3px}.brand small{display:block;font:8px/2 sans-serif;letter-spacing:2px}.sprig{width:33px;height:43px;fill:none;stroke:var(--ink);stroke-width:1.3}nav{display:flex;gap:36px;font-size:13px}nav a:hover,.text-link:hover{color:#8a794f}.header-cta{font-size:13px;border-bottom:1px solid var(--ink);padding:6px 0}.header-cta span{margin-left:20px}.hero{padding:60px 5.5% 62px;display:grid;grid-template-columns:48% 52%;align-items:center}.eyebrow,.section-number{font:10px/1.6 sans-serif;letter-spacing:2.6px}.eyebrow{display:flex;align-items:center;gap:15px}.tiny-line{width:28px;height:1px;background:var(--ink)}h1,h2,h3,p{margin:0}h1{font:clamp(46px,5.1vw,80px)/1.45 var(--serif);letter-spacing:2px;margin:26px 0 5px;font-weight:400}.serif-italic{color:#7a886a}.english-title{font:italic 30px/1.5 Georgia,serif;color:#7d886f;margin:2px 0 26px}.hero-intro{font-size:14px;line-height:2.1;color:#737a6e}.hero-actions{display:flex;gap:24px;align-items:center;margin:32px 0 42px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 23px;border:1px solid transparent;font-size:13px;letter-spacing:1px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--green);color:var(--paper)}.primary:hover{background:#293e30}.text-link{font-size:12px}.hero-meta{display:flex;gap:32px;border-top:1px solid var(--line);padding-top:23px;margin-right:42px}.meta-label{display:block;font-size:9px;letter-spacing:1.1px;color:var(--muted);margin-bottom:8px}.hero-meta strong{font-size:13px;font-weight:400}.hero-visual{position:relative;align-self:stretch;min-height:610px}.hero-visual>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:57%;border-radius:43% 43% 0 0;inset:0}.image-caption{position:absolute;bottom:24px;left:28px;right:28px;color:#fff;display:flex;align-items:center;justify-content:space-between;font:9px/1.6 sans-serif;letter-spacing:1.8px;text-shadow:0 1px 6px #23352b}.image-caption svg{width:58px;fill:none;stroke:#fff;stroke-width:1}.photo-note{position:absolute;right:18px;top:51%;writing-mode:vertical-rl;color:white;font-size:9px;letter-spacing:3px;text-shadow:0 1px 3px #344b3c}.round-seal{position:absolute;left:-40px;top:67%;width:88px;height:88px;border-radius:50%;background:#eee9d9;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 0 7px #eee9d944;transform:rotate(-12deg);font:7px/1.6 sans-serif;letter-spacing:2px;border:1px solid #8b987a66}.seal-center{font:italic 33px/1.2 Georgia,serif;letter-spacing:0}.ribbon{padding:22px 10%;border-block:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font:13px var(--serif);letter-spacing:4px}.ribbon i{font-size:16px;color:#8e997f;font-style:normal}.section{padding:105px 8%}.invitation{display:grid;grid-template-columns:18% 60% 22%;padding-block:110px}.section-number{color:#77836d;font-size:9px;letter-spacing:2px}.section-aside{display:flex;flex-direction:column;gap:55px}.vertical-note{writing-mode:vertical-rl;font:12px var(--serif);letter-spacing:4px;color:#8c967f}.invitation h2{margin-top:26px}h2{font:38px/1.65 var(--serif);font-weight:400;letter-spacing:2px}.underline{border-bottom:1px solid #a5ae94;padding-bottom:6px}.invitation-text{margin-top:31px;font-size:13px;line-height:2.2;color:#747d70}.invitation-text>p+p{margin-top:19px}.invitation-sign{color:var(--ink);padding-top:9px}.invitation-sign span{display:block;font:italic 22px Georgia,serif;color:#8b987c;margin-top:11px}.botanical{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:30px}.botanical svg{width:147px;stroke:#a4ae97;stroke-width:1;fill:none}.botanical span{font:italic 16px/1.5 Georgia,serif;text-align:center;color:#8d987e;margin-top:15px}.day{background:#eaece2}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:60px}.section-heading h2{margin-top:18px}.section-heading>p{font-size:12px;line-height:2;color:#76816f;margin-bottom:9px}.timeline{display:grid;grid-template-columns:repeat(4,1fr)}.timeline article{padding:0 28px;border-right:1px solid #cbd2c1}.timeline article:first-child{padding-left:0}.timeline article:last-child{border:0;padding-right:0}.timeline-top{height:74px;display:flex;align-items:flex-start;justify-content:space-between}.timeline-top>span{font:italic 18px Georgia,serif;color:#8e9b7f}.timeline svg{width:37px;height:37px;fill:none;stroke:#718266;stroke-width:1.1}.schedule-label{font:8px sans-serif;letter-spacing:2px;color:#7d8b72}.timeline h3{font:20px/1.7 var(--serif);font-weight:400;margin:14px 0}.timeline p{font-size:12px;color:#78816f;line-height:2;min-height:74px}.time-tbd{display:block;font-size:10px;letter-spacing:1px;margin-top:26px;color:#65745a}.quote-band{text-align:center;padding:70px 20px;border-bottom:1px solid var(--line);background:#f0efe5}.quote-band .eyebrow{display:block;font-size:8px;color:#829076}.quote-band p{font:27px/1.9 var(--serif);letter-spacing:3px;margin:19px 0}.quote-tail{font:8px sans-serif;letter-spacing:3px;color:#8a957e}.mobile-only{display:none}.guide{display:grid;grid-template-columns:45% 55%;gap:30px}.guide h2{margin:18px 0 25px}.guide-intro>p{font-size:13px;color:#7a8473;line-height:2.2}.palette{display:flex;gap:9px;align-items:center;margin-top:32px;flex-wrap:wrap}.palette>span{width:25px;height:25px;border-radius:50%;background:var(--swatch);border:1px solid #8d947a22}.palette small{font:7px sans-serif;letter-spacing:1.4px;display:block;width:100%;color:#8a957e;margin-top:6px}.faqs{border-top:1px solid var(--line);margin-top:4px}.faqs details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:23px 0;font-size:14px}summary::-webkit-details-marker{display:none}summary i{font:italic 12px Georgia,serif;color:#9aa48d;margin-right:24px}.plus{font:23px Georgia,serif;color:#8b987c;transition:transform .2s}details[open] .plus{transform:rotate(45deg)}details>div{padding:0 35px 24px 43px;font-size:12px;color:#7b8374;line-height:2.1}.rsvp{background:var(--green);color:#f3f1e7;display:grid;grid-template-columns:46% 54%;gap:30px}.rsvp .section-number{color:#c2cbb7}.rsvp h2{font-size:40px;margin:20px 0 25px}.rsvp h2 span{color:#c8d1b6}.rsvp-copy>p{color:#d2dac9;font-size:13px;line-height:2.1}.rsvp-wave{display:block;width:135px;height:34px;stroke:#a7b697;stroke-width:1;fill:none;margin-top:30px}.rsvp-copy>small{display:block;font-size:10px;color:#c0cbb5;line-height:1.9;margin-top:24px}form{padding-top:10px}label{display:block;font-size:12px;color:#e0e5d6;letter-spacing:.5px}label>span{color:#bfcfae}input,select,textarea{display:block;width:100%;border:1px solid #7c8b7270;background:#ffffff06;color:#f6f5ee;border-radius:0;padding:12px 13px;margin:10px 0 21px;font-size:13px;outline:none;min-height:46px}input::placeholder,textarea::placeholder{color:#b8c4ac}input:focus,select:focus,textarea:focus{border-color:#d5dfc9}select{color-scheme:dark}select option{background:#344b3c}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.light{background:#e9eddc;color:#344b3c;width:100%;margin-top:3px}.light:hover{background:#fbfbed}.form-note{font-size:9px;color:#c0cbb5;margin-top:12px}footer{text-align:center;padding:65px 22px 32px}.footer-title{font:27px var(--serif);letter-spacing:5px}.footer-title span{display:block;font:italic 20px Georgia,serif;color:#839274;letter-spacing:0;margin-top:14px}footer>p{font-size:11px;color:#818b77;margin:24px 0 36px}.footer-bottom{font-size:9px;color:#8a9380;border-top:1px solid var(--line);padding-top:21px;display:block;letter-spacing:1px}dialog{width:min(540px,calc(100% - 32px));border:1px solid #cdd6c1;background:var(--paper);color:var(--ink);padding:40px;max-height:90vh}dialog::backdrop{background:#19291fc2;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:14px;top:8px;font:28px sans-serif;background:none;border:0;color:var(--ink);padding:5px 9px}dialog h2{font-size:27px;margin:20px 0 8px}dialog>p{font-size:12px;color:var(--muted)}#receipt{background:#eeefe6;color:var(--ink);line-height:1.9;border:1px solid var(--line);margin:20px 0}dialog .button{width:100%}.copy-status{min-height:24px;margin-top:12px;font-size:11px!important}.field-row[hidden]{display:none}
@media(min-width:1600px){body{max-width:1680px;margin:auto}.hero-visual{min-height:680px}}@media(max-width:1100px){header{margin-inline:5%}nav{gap:20px}.hero{padding-inline:5%;grid-template-columns:49% 51%}h1{font-size:53px}.hero-visual{min-height:570px}.hero-meta{gap:20px;margin-right:25px}.hero-actions{gap:15px}.text-link{font-size:11px}.section{padding-inline:6%}.timeline article{padding-inline:20px}.timeline h3{font-size:18px}.invitation{grid-template-columns:18% 58% 24%}.section-number{letter-spacing:1px}.botanical svg{width:125px}}@media(max-width:760px){html{scroll-padding-top:25px}.header{height:84px;margin-inline:6%;gap:10px}.brand{font-size:19px;gap:8px}.brand small{font-size:6px;letter-spacing:1.4px}.sprig{width:26px;height:34px}nav{display:none}.header-cta{font-size:11px}.header-cta span{margin-left:10px}.hero{padding:35px 6% 42px;display:flex;flex-direction:column;align-items:stretch}.hero-copy{padding:0 0 32px}.hero .eyebrow{font-size:8px;letter-spacing:2px}h1{font-size:clamp(42px,10vw,68px);margin-top:18px;line-height:1.4}.english-title{font-size:26px;margin-top:9px;margin-bottom:18px}.hero-intro{font-size:12px;line-height:2}.hero-actions{margin:24px 0 28px;gap:22px}.button{padding:12px 18px;font-size:12px}.text-link{font-size:11px}.hero-meta{margin-right:0;padding-top:18px;gap:26px}.meta-label{font-size:8px}.hero-meta strong{font-size:12px}.hero-visual{min-height:0;height:440px}.hero-visual>img{border-radius:45% 45% 0 0;object-position:60%}.round-seal{width:70px;height:70px;left:auto;right:17px;top:-20px;font-size:6px}.seal-center{font-size:26px}.image-caption{left:18px;right:18px;font-size:7px;letter-spacing:1px}.ribbon{padding:18px 6%;letter-spacing:1px;font-size:10px}.ribbon i{font-size:11px}.section{padding:65px 7%}.invitation{grid-template-columns:1fr;position:relative;overflow:hidden}.section-aside{display:block}.vertical-note{display:none}.invitation-body{position:relative;z-index:1}.invitation .eyebrow{margin-top:24px;font-size:9px}.invitation h2{margin-top:16px}h2{font-size:30px;line-height:1.65;letter-spacing:1px}.invitation-text{font-size:12px;line-height:2.2;margin-top:23px}.botanical{position:absolute;right:-5px;bottom:62px;opacity:.43;padding:0;z-index:0;pointer-events:none}.botanical svg{width:115px}.botanical span{display:none}.invitation-sign span{font-size:20px}.section-heading{display:block;margin-bottom:37px}.section-heading>p{margin-top:22px;font-size:11px}.section-heading h2{margin-top:14px}.timeline{grid-template-columns:1fr 1fr;gap:32px 0}.timeline article{padding:0 20px!important}.timeline article:nth-child(odd){padding-left:0!important}.timeline article:nth-child(even){border:0;padding-right:0!important}.timeline-top{height:60px}.timeline svg{width:30px;height:30px}.timeline h3{font-size:17px;margin:11px 0}.timeline p{font-size:11px;min-height:64px}.schedule-label{font-size:7px;letter-spacing:1.5px}.time-tbd{font-size:9px;margin-top:17px}.quote-band{padding:44px 15px}.quote-band p{font-size:23px;letter-spacing:2px;margin:15px 0}.mobile-only{display:block}.quote-tail{font-size:7px;letter-spacing:2px}.guide{grid-template-columns:1fr;gap:34px}.guide h2{margin:15px 0 18px}.guide-intro>p{font-size:12px}.palette{margin-top:23px}.palette small{width:auto;margin:0 0 0 5px}.palette>span{width:21px;height:21px}.faqs{margin:0}summary{font-size:13px;padding-block:20px}details>div{font-size:11px;padding-left:37px;padding-right:16px}.rsvp{grid-template-columns:1fr;gap:30px}.rsvp h2{font-size:32px;margin:18px 0}.rsvp-copy>p{font-size:12px}.rsvp-wave{display:none}.rsvp-copy>small{font-size:9px;margin-top:20px}.field-row{gap:13px}label{font-size:10px}input,select,textarea{font-size:12px;margin-bottom:18px;padding:11px 10px}footer{padding-top:48px}.footer-bottom{font-size:8px;letter-spacing:.3px}dialog{padding:31px 23px}dialog h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Confirmed mountain garden wedding details. */
.hero-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px}.hero-meta>div{min-width:0}.meta-extra{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:5px}.venue-address{margin-top:35px;padding-top:23px;border-top:1px solid var(--line);max-width:310px}.venue-address strong{font:18px/1.8 var(--serif);font-weight:400}.venue-address>p{font-size:12px;color:var(--muted);line-height:2;margin-top:10px}.venue-address .venue-hint{font-size:10px;margin-top:6px}.text-button{border:0;border-bottom:1px solid #87977a;background:none;color:var(--ink);padding:7px 0;font-size:11px;margin-top:10px;letter-spacing:.5px}.text-button span{margin-left:16px}#address-status{min-height:22px;font-size:10px;margin-top:7px}.guide{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.timeline .time-tbd{font-size:10px;letter-spacing:0}.timeline p{min-height:96px}.hero-visual>img{object-position:61%}.quote-band .eyebrow{font-size:8px;letter-spacing:2px}
@media(max-width:760px){.guide{grid-template-columns:1fr}.hero-meta{gap:15px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.hero-meta strong{font-size:11px}.meta-extra{font-size:9px}.venue-address{max-width:none;margin-top:27px;padding-top:20px}.venue-address>p{font-size:12px}.timeline p{min-height:91px}.timeline .time-tbd{font-size:9px}.english-title{font-size:24px}.hero-visual>img{object-position:61%}}
