.landing-hero{display:grid;grid-template-columns:1fr 1fr .85fr;align-items:center;gap:45px;max-width:1400px;margin:50px auto 65px;padding:0 50px}.hero-copy{text-align:right}.hero-copy h1{font-size:clamp(45px,4.4vw,67px);line-height:1.04;letter-spacing:-.8px}.hero-copy h1 em{color:#ad8777}.hero-copy .lead{font-size:15px;line-height:1.9;margin:24px 0 28px}.hero-copy .primary{display:inline-block;text-decoration:none}.hero-small{font-size:11px;color:var(--muted);margin-top:16px}.landing-hero .photo-arch{height:520px}.hero-book{text-align:center}.hero-book>img{display:block;width:100%;max-width:260px;margin:22px auto;box-shadow:6px 13px 30px #a3816d18;border:1px solid #e5d6ca}.hero-book>a{font-size:13px;text-underline-offset:5px}.hero-book>p:last-child{font-family:Romance;font-size:21px;font-style:italic;line-height:1.5;color:#a18472}.book-value{max-width:1160px;padding:48px 0;margin:40px auto 75px;display:grid;grid-template-columns:1fr 1.4fr;gap:100px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.book-value h2,.section-intro h2,.photo-story h2,.book-faq h2,.form-invitation h2{font-family:Romance;font-size:49px;line-height:1.1;font-weight:500;margin:14px 0 24px}.book-value h2 em,.section-intro h2 em,.photo-story h2 em,.form-invitation h2 em{font-weight:500;color:#ad8777}.book-value p{font-size:15px;line-height:1.9}.book-catalog{max-width:1300px;margin:0 auto 85px;padding:0 40px}.section-intro{text-align:center;max-width:640px;margin:0 auto 45px}.section-intro>p:last-child{font-size:15px;line-height:1.8;color:var(--muted)}.page-catalog{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.contents-card{padding:30px 27px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fffaf650}.page-no{font-family:Romance;font-size:45px;color:#b18b78;line-height:1;display:block;margin-bottom:20px}.page-no small{font-family:Sans;font-size:9px;letter-spacing:1.4px;vertical-align:middle;padding-left:12px}.contents-card h3{font-family:Romance;font-size:29px;line-height:1.1;margin:0 0 17px;font-weight:500}.contents-card p{font-size:13px;line-height:1.85;margin:0;color:#867164}.real-sample{background:#f2e8df;padding:65px 40px 70px;text-align:center}.sample-triptych{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:center}.sample-triptych img{width:100%;display:block;border:1px solid #dac6b6;box-shadow:5px 12px 25px #a3816d17}.sample-triptych>img:first-child{transform:rotate(-2deg)}.sample-triptych>img:last-child{transform:rotate(2deg)}.sample-link{display:inline-block;margin-top:40px;text-decoration:none;background:#fffaf650;padding:15px 30px}.photo-story{max-width:1160px;margin:90px auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.photo-story>figure{margin:0}.photo-story img{width:100%;height:520px;object-fit:cover;object-position:50% 69%}.photo-story p{font-size:15px;line-height:1.9}.photo-story ol{padding-left:20px;font-size:14px;line-height:2.25}.photo-story li::marker{color:#b18b78;font-family:Romance;font-size:24px}.book-faq{max-width:850px;margin:70px auto 85px;padding:0 20px}.book-faq h2{font-size:42px}.book-faq details{border-top:1px solid var(--line);padding:18px 0}.book-faq summary{font-family:Romance;font-size:25px;line-height:1.25;cursor:pointer}.book-faq details p{font-size:14px;line-height:1.85;margin:17px 0 4px;color:var(--muted)}.entry-form{max-width:1050px;display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center;margin:0 auto 75px;padding:45px 35px;scroll-margin-top:25px}.form-invitation p{font-size:15px;line-height:1.9;max-width:390px}.form-invitation .form-signed{font-family:Romance;font-style:italic;font-size:27px;color:#ad8777;margin-top:35px}.account-panel{max-width:1150px;margin:55px auto;padding:45px 50px;background:#fffaf5;border:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.account-heading h2{font-family:Romance;font-size:40px;line-height:1.15;margin:20px 0}.account-heading h2 em{font-weight:500;color:#ad8777}.account-heading p:last-child{font-size:15px;line-height:1.9}.account-actions label{font-size:14px}.account-actions #save-status{font-size:14px;color:var(--gold)}.link-row{display:flex;gap:12px;align-items:center}.link-row input{margin:0;min-width:0;font-size:12px}.link-row .primary{padding:10px 16px;font-size:12px;min-height:44px}.account-actions .field-note{font-size:12px;line-height:1.85}.photo-editor{border-top:1px solid var(--line);padding-top:24px;margin-top:25px}.photo-button{display:inline-block;border:1px solid #b4947d;padding:13px 19px;color:var(--ink);cursor:pointer;font-size:14px}.photo-button:hover{background:#f4e8dc}#photo-status{font-size:13px;color:var(--gold)}#crop-controls{margin-top:20px}#crop-controls label{font-size:12px}#crop-controls input[type=range]{min-height:25px;padding:0;border:0;accent-color:#ad8777}.photo-buttons{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.photo-buttons .outline{margin-top:10px;padding:10px 18px;font-size:12px}.result-cover-photo{height:360px;aspect-ratio:.75}.result-cover-photo img{object-position:50% 50%}dialog{border:1px solid var(--line);background:#fffaf6;color:var(--ink);max-width:540px;width:calc(100% - 35px);padding:35px}dialog::backdrop{background:#58412d60;backdrop-filter:blur(4px)}dialog h2{font-family:Romance;font-size:34px;margin:22px 0}.dialog-close{float:right}dialog .primary{margin-top:15px}header{gap:20px}header #open-book{margin-left:auto}header .header-note{margin:auto}.primary:disabled{opacity:.5;cursor:wait}
@media(max-width:1100px){.landing-hero{gap:30px;padding:0 30px;grid-template-columns:1fr 1fr}.hero-copy h1{font-size:55px}.hero-book{display:none}.landing-hero .photo-arch{max-width:370px;margin:auto}.book-value{margin:40px 40px 65px;gap:50px}.photo-story{margin:75px 40px;gap:50px}.photo-story img{height:500px}.account-panel{margin:40px 30px;padding:35px;gap:35px}.account-heading h2{font-size:36px}.page-catalog{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){header{gap:15px;flex-wrap:wrap}header .brand{margin-right:auto}header #open-book{margin-left:0}.landing-hero{display:flex;flex-direction:column;padding:0 25px;margin:28px auto 45px;gap:20px}.hero-copy{text-align:center}.hero-copy h1{font-size:48px;line-height:1.02}.hero-copy .eyebrow{font-size:10px}.hero-copy .lead{font-size:14px;margin:20px 0 24px}.hero-small{font-size:11px}.landing-hero .wedding-photo{width:100%;padding:15px 25px 0}.landing-hero .photo-arch{height:390px;max-width:290px}.wedding-photo figcaption{font-size:24px}.book-value{display:block;margin:35px 24px 55px;padding:25px 0}.book-value h2,.section-intro h2,.photo-story h2,.form-invitation h2{font-size:38px}.book-value p{font-size:14px}.book-catalog{padding:0 23px;margin-bottom:55px}.section-intro{margin-bottom:30px}.section-intro>p:last-child{font-size:14px}.page-catalog{display:block}.contents-card{display:grid;grid-template-columns:48px 1fr;gap:17px;padding:25px 20px}.page-no{font-size:38px;margin:0}.page-no small{display:none}.contents-card h3{font-size:27px;margin-bottom:12px}.contents-card p{font-size:13px}.real-sample{padding:40px 23px 45px}.sample-triptych{grid-template-columns:1fr 1fr;gap:16px}.sample-triptych img:first-child{grid-column:1/-1;max-width:210px;margin:0 auto 10px;transform:rotate(-2deg)}.sample-triptych img:last-child{transform:none}.sample-link{font-size:13px;padding:13px 18px}.photo-story{display:flex;flex-direction:column;gap:25px;margin:55px 25px}.photo-story img{height:390px;object-position:50% 67%}.photo-story figure{width:100%}.photo-story p{font-size:14px}.photo-story ol{font-size:13px}.book-faq{margin:40px auto 50px;padding:0 25px}.book-faq h2{font-size:36px}.book-faq summary{font-size:24px}.book-faq details p{font-size:14px}.entry-form{display:block;margin:0 auto 50px;padding:15px 24px;scroll-margin-top:20px}.form-invitation{text-align:center}.form-invitation p{font-size:14px}.form-invitation .form-signed{display:none}.entry-form .form-card{margin-top:25px}.account-panel{display:block;margin:35px 18px;padding:27px 24px}.account-heading h2{font-size:34px}.account-actions{margin-top:25px}.link-row{display:block}.link-row .primary{margin-top:12px}.photo-button{font-size:13px}.account-actions .field-note{font-size:12px}.result-cover-photo{height:180px;width:135px}.book-title{margin-top:10px}.reading{padding-top:40px}.form-invitation h2{font-size:36px}.method{padding:0 25px}.method summary{font-size:25px}}
.hero-book>img{height:auto}

.arcana-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.arcana-card{display:flex;flex-direction:column;align-items:center;padding:16px 8px;background:#f6e8da;border-radius:14px}.arcana-card strong{font-family:var(--display,serif);font-size:36px;color:#97755f}.arcana-card span{font-size:12px;color:#886e5c}.chapter[data-kind="dedication"]{background:linear-gradient(135deg,#f3dfd0,#fbf6ed 55%,#e8eddf);border:2px solid #e5cbbb;padding:32px;border-radius:24px}

.book-stack{position:relative;width:min(100%,270px);height:390px;margin:20px auto 6px;isolation:isolate}.stack-sheet{position:absolute;top:30px;left:6px;width:78%;aspect-ratio:707/1000;background:#fffaf0 url('/book-stationery-v1.png') center/100% 100%;border:1px solid #d5bd91;box-shadow:2px 4px 9px #79634420;transform:translate(calc(var(--sheet)*5px),calc(var(--sheet)*-3px)) rotate(calc((var(--sheet) - 3)*2deg));overflow:hidden}.stack-heading{display:block;width:52%;height:5px;background:#7b796150;margin:23% auto 12%;filter:blur(1.4px)}.stack-lines{display:block;width:65%;height:42px;margin:0 auto 13px;background:repeating-linear-gradient(to bottom,#77756955 0 1px,transparent 1px 6px);filter:blur(1.2px)}.stack-lines.short{width:51%;height:30px}.stack-cover{box-shadow:5px 9px 18px #79634425}.stack-cover img{display:block;width:100%;height:auto;filter:none}.stack-caption{display:block;font-size:11px;letter-spacing:1.2px;color:#937f60}.hero-book>p:last-child{margin-top:16px}@media(max-width:1100px){.hero-book{display:block;grid-column:1/-1;max-width:320px;margin:8px auto 0}.book-stack{height:365px}}@media(max-width:700px){.hero-book{width:100%;margin:12px auto 0}.book-stack{height:365px}}
header .brand{font-size:clamp(27px,2.73vw,41px);line-height:.98;gap:18px}header .brand small{font-family:Book;font-size:.68em;letter-spacing:1px}header .header-note{display:none}@media(max-width:700px){header .brand{font-size:24px;gap:10px;flex-basis:100%}header .brand small{font-size:.7em}header #open-book{margin-right:auto}}
.stack-sheet:nth-child(1){transform:translate(0px,0px) rotate(-8deg)}.stack-sheet:nth-child(2){transform:translate(5px,-3px) rotate(-6deg)}.stack-sheet:nth-child(3){transform:translate(10px,-6px) rotate(-4deg)}.stack-sheet:nth-child(4){transform:translate(15px,-9px) rotate(-2deg)}.stack-sheet:nth-child(5){transform:translate(20px,-12px) rotate(0deg)}.stack-sheet:nth-child(6){transform:translate(25px,-15px) rotate(2deg)}.stack-sheet:nth-child(7){transform:translate(30px,-18px) rotate(4deg)}.stack-sheet:nth-child(8){transform:translate(35px,-21px) rotate(6deg)}.stack-sheet:nth-child(9){transform:translate(40px,-24px) rotate(8deg)}
body{position:relative;isolation:isolate}body::before,body::after{content:"";position:fixed;top:20vh;width:clamp(90px,11vw,160px);height:76vh;background:url("/wedding-floral-margin-v1.png") center/contain no-repeat;z-index:0;pointer-events:none;opacity:.86}body::before{left:-65px}body::after{right:-65px;transform:scaleX(-1)}body>header,body>main,body>footer{position:relative;z-index:1}@media(max-width:700px){body::before,body::after{width:90px;height:65vh;top:25vh;opacity:.55}body::before{left:-64px}body::after{right:-64px}}

.unknown-time{display:flex;align-items:center;gap:10px;margin:4px 0 22px;cursor:pointer}.unknown-time input[type=checkbox]{display:inline-block;flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#a9896c}.form-card #partners>h2{font-size:30px;line-height:1.15}

header .brand{white-space:nowrap;line-height:1.1;flex-shrink:0}header .brand>span{display:block}.header-branch{display:block;object-fit:contain;width:clamp(130px,20vw,280px);height:66px;flex-shrink:1;margin:0 auto}header #open-book{margin-left:0;flex-shrink:0}@media(max-width:900px){header .brand{font-size:28px;gap:10px}.header-branch{width:150px;height:52px}}@media(max-width:700px){header{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:18px 22px}header .brand{grid-column:1/-1;font-size:clamp(17px,4.7vw,24px);gap:8px;flex-basis:auto}.header-branch{width:160px;height:38px;margin:0;justify-self:start}header #open-book{margin:0;justify-self:end;font-size:13px}}

.city-results:empty{display:none}.city-results{display:grid;gap:6px;margin:-4px 0 16px}.city-results button{display:block;width:100%;text-align:left;border:1px solid #dfd0bd;background:#fffcf7;border-radius:4px;padding:10px 12px;font-size:14px;line-height:1.4;text-decoration:none;color:#665e48}.city-results button:hover,.city-results button:focus-visible{background:#eee7d8;border-color:#b7986d}

.book-title{border:0;outline:0;background:#f6eee4;box-shadow:0 12px 40px #8e795315;padding:80px 75px;overflow:hidden;isolation:isolate}.result-botanical-frame{position:absolute;inset:0;z-index:0;pointer-events:none}.result-branch{position:absolute;width:210px;height:70px;object-fit:contain;opacity:.9}.result-branch.top-left{left:8px;top:9px;transform:rotate(-9deg)}.result-branch.top-right{right:8px;top:9px;transform:scaleX(-1) rotate(-9deg)}.result-branch.bottom-left{left:8px;bottom:9px;transform:scaleY(-1) rotate(-9deg)}.result-branch.bottom-right{right:8px;bottom:9px;transform:scale(-1) rotate(-9deg)}.book-title>.result-cover-photo,.book-title>.result-cover-copy{position:relative;z-index:1}@media(max-width:700px){.book-title{padding:64px 24px}.result-branch{width:125px;height:44px}.result-branch.top-left,.result-branch.top-right{top:9px}.result-branch.bottom-left,.result-branch.bottom-right{bottom:9px}}

.calculation-source{font-size:12px;line-height:1.75;color:#8c7968}.book-title .calculation-source{max-width:550px;font-size:11px;margin:12px auto 22px}.chapter .calculation-source{padding:12px 15px;margin:0 0 24px;background:#f6eee3;border-radius:5px;color:#877360;font-size:12px;line-height:1.75}.share-link-area{margin:18px 0}.share-link-area>p{font-size:13px;margin:0 0 10px}.share-links{display:flex;gap:10px;flex-wrap:wrap}.share-links>a{display:inline-block;text-decoration:none;padding:9px 17px;border:1px solid #cfb898;background:#faf4e9;border-radius:4px;font-size:13px;color:#766449}.share-links>a:hover{background:#eee3d1}

.family-tree-panel{text-align:center;padding:24px;background:#fcf8ef;border-radius:20px}.family-tree-image{display:block;width:min(100%,320px);height:auto;margin:0 auto}.family-tree-panel h3{font:italic 36px Georgia,serif;color:#42543a;margin:10px}.family-tree-panel p{max-width:600px;margin:16px auto}.family-motto{font:italic 25px Georgia,serif;color:#946c38;margin:24px auto;max-width:650px}
