/* Warm window light, an aged photographic album, espresso, parchment, and antique gold. */
:root{--paper:#211b15;--white:#2e261d;--ink:#eee4d1;--muted:#c2b49b;--olive:#9b885f;--olive-light:#30271e;--line:#51442f;--accent:#c5aa73}
body{background:var(--paper);color:var(--ink)}
.site-header.scrolled{background:#211b15f2;color:var(--ink);box-shadow:0 1px 0 #66533955}.navigation{color:inherit}.scrolled .nav-inquire:hover{color:#d5bc89}.navigation.is-open{background:var(--paper);color:var(--ink)}
.hero-shade{background:linear-gradient(90deg,#120d085c,#120d0810 78%),linear-gradient(180deg,#120d0838,transparent 30%,transparent 65%,#120d0866)}
.folio-label p,.gallery-count{color:var(--muted)}.prologue-photo{background:#cfbc96;box-shadow:0 15px 40px #0003}.prologue-photo figcaption{color:#534325}
.chapter-index small,.chapter-index b{color:var(--accent)}.filter-button[aria-pressed=true]{color:var(--ink);border-color:var(--accent)}.photo-button{background:#2d241a}.view-photo{background:#211b15e8;color:var(--ink)}.portfolio-note a{color:var(--ink)}
.experience{background:#2c241b}.experience-intro,.step p{color:var(--muted)}.step,.step:first-child{border-color:#584832}.text-link{border-color:#665239}.about-mark{border-color:#66523966;background-color:#2a2218;box-shadow:inset 0 0 0 12px #2a2218,inset 0 0 0 13px #66523966}.about-mark>span{color:#c9ae79;text-shadow:0 1px 0 #080600}.about-mark .ampersand{color:#dfccab}.about-mark>small{color:#beab86}
.session{border-color:var(--line)}.session-price small,.investment-note{color:var(--muted)}.questions details,.questions details:last-child{border-color:var(--line)}
.inquiry{background:#2b2218}.inquiry-form-wrap{background:#33291d;border-color:#665239;box-shadow:10px 10px 0 -2px #2b2218,10px 10px 0 -1px #665239}.form-heading{border-color:var(--line)}.form-heading>p{color:var(--ink)}label{color:var(--ink)}input,select,textarea{color:var(--ink);border-color:#79674a}input::placeholder,textarea::placeholder{color:#b9aa8d}select option{background:#33291d;color:var(--ink)}input[type=date]{color-scheme:dark}.inquiry-result textarea{background:#211b15;border-color:#67543a}.contact-link{border-color:#9b805655}.form-note,.copy-status{color:var(--muted)}.button-dark{color:var(--ink);border-color:#b69c6c}.button-dark:hover{color:#dcc58f}.site-footer{background:#15100c}.footer-top>p{color:#c9b795}.footer-bottom{border-color:#6a563a;color:#c0ae8c}.lightbox{background:#18120dfb}.lightbox::backdrop{background:#18120d}

/* The still artwork and animation share one scene and the original photo colors. */
.antique-intro{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;min-height:0;background:#17110d;isolation:isolate;color:#ead9b5}
.antique-intro[open]{display:flex;justify-content:center;align-items:center}
.antique-intro::backdrop{background:transparent}
.antique-intro::before{content:"";position:absolute;inset:-8%;background:url('assets/antique-album-scene.webp') center/cover no-repeat;filter:blur(32px) brightness(.52);opacity:1;z-index:-2}
.antique-intro::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 25%,#0f09095e 100%);filter:none;z-index:-1;pointer-events:none}
.antique-scene{position:relative;width:min(100vw,calc(100dvh * 2 / 3));height:auto;aspect-ratio:2/3;flex-shrink:0;margin:0}
.antique-album-button{position:absolute;inset:0;padding:0;border:0;display:block;width:100%;height:100%;background:none;cursor:pointer;outline-offset:-7px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.antique-album-button:disabled{opacity:1;cursor:progress}
.antique-scene-photo,.antique-page-prints{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.antique-page-prints{overflow:visible;pointer-events:none;mix-blend-mode:normal}
.antique-page-prints image{pointer-events:none;filter:none}
.printed-name{font:500 103px var(--serif);fill:#493622;letter-spacing:2px}
.printed-subtitle{font:500 30px var(--sans);fill:#735638;letter-spacing:8px}
.printed-note{font:italic 55px var(--serif);fill:#694b2b}
.printed-invitation{font:500 31px var(--sans);fill:#674a2c;letter-spacing:2px}
.printed-location{font-size:23px;letter-spacing:5px}
.album-animation{position:absolute;inset:0;display:none;width:100%;height:100%;pointer-events:none;z-index:1}
.antique-intro.is-animating .album-animation{display:block}
.antique-intro.is-animating .antique-scene{visibility:hidden}
.antique-intro .intro-skip{position:absolute;right:25px;bottom:23px;z-index:3;margin:0;padding:0;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d7bd8670;border-radius:50%;background:#271b1166;color:#ead9b5;font:22px/1 var(--sans);transition:opacity .25s,background .2s;touch-action:manipulation}
.antique-intro .intro-skip>span{margin:0}
.antique-intro .intro-skip:hover{background:#5b402866}
.antique-intro.is-zooming .intro-skip{opacity:0;pointer-events:none}
body{overflow-x:hidden}
.gallery[data-filter=Families],.gallery[data-filter=Celebrations]{grid-template-columns:minmax(0,1fr);max-width:850px;margin-inline:auto}
@media(max-width:760px){
 .antique-intro::before{filter:blur(20px) brightness(.72);background-position:center}
 .antique-intro .intro-skip{right:17px;bottom:17px;width:36px;height:36px}
 .inquiry-form-wrap{box-shadow:6px 6px 0 -2px #2b2218,6px 6px 0 -1px #665239}
 .navigation{background:var(--paper);color:var(--ink)}
 .hero-shade{background:linear-gradient(180deg,#170d0738,transparent 35%,#170d0710 60%,#170d0770),linear-gradient(90deg,#170d0726,transparent 85%)}
}

/* Keep the kiss in the opening photograph visible across viewport shapes. */
.hero-photo{object-position:50% 40%}
.hero-copy{top:auto;bottom:13%}
.hero h1{font-size:clamp(64px,7vw,110px)}
@media(max-width:760px){.hero-copy{top:auto;bottom:16%}.hero h1{font-size:clamp(58px,14vw,76px)}}

/* Cream editorial lettering in the window light and on the table below the album. */
.scene-lettering{fill:#f4e8ce;filter:drop-shadow(0 3px 9px #140a04e6)}
.scene-name{font:italic 500 96px var(--serif);letter-spacing:1px}
.scene-photography{font:500 26px var(--sans);fill:#edddbc;letter-spacing:10px}
.scene-invitation{font:500 32px var(--sans);letter-spacing:2px}

/* Raised cream lettering: a fine shaded edge, light rim, and soft cast shadow. */
.scene-lettering{fill:#f4e4c4;stroke:#23150de6;stroke-width:3.2;paint-order:stroke fill;filter:drop-shadow(-.5px -.9px 0 #fff9e78c) drop-shadow(0 3px 6px #120a04d9)}
.scene-name{font-size:104px}
.scene-photography{font-size:30px;fill:#f4e4c4}
.scene-invitation{font-size:34px}

/* A single drawn arrow replaces platform-dependent emoji and text glyphs. */
.direction-icon{display:inline-block;width:21px;height:21px;flex:0 0 21px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.direction-icon--east{transform:rotate(45deg)}
.direction-icon--south{transform:rotate(135deg)}
.direction-icon--west{transform:rotate(225deg)}
.direction-icon--north{transform:rotate(-45deg)}
.view-photo .direction-icon{width:15px;height:15px;margin-left:8px}
.chapter-index .direction-icon{width:22px;height:22px}
.scroll-cue .direction-icon{width:22px;height:22px}
.lightbox-arrow{display:grid;place-items:center}
.lightbox-arrow .direction-icon{width:28px;height:28px}
.footer-bottom .direction-icon,.edit-inquiry .direction-icon{width:16px;height:16px;margin-inline:5px}

/* Keep photo-viewer controls and copy legible against espresso. */
.lightbox{color:#f4e4c4}
.lightbox-close,.lightbox-arrow{color:#f4e4c4;border-color:#c5aa73a6;background:#34291a80;width:46px;height:46px;display:grid;place-items:center}
.lightbox-close:hover,.lightbox-arrow:hover{background:#58462a99;border-color:#e0c997}
.close-icon{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;pointer-events:none}
.lightbox-arrow .direction-icon{stroke-width:1.7}
.lightbox-caption h3{color:#f4e4c4;font-weight:500}
.lightbox-caption p{color:#d5c9b4;font-size:11px;line-height:1.6}
.lightbox-caption>span{color:#f4e4c4;font-size:12px}
/* Warm metal outlines keep social links in the album's visual language. */
.social-connect{margin-top:30px}.social-heading{font:500 10px/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#c5aa73!important;margin:0 0 16px!important}.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px}.social-link{display:inline-flex;align-items:center;gap:11px;font:400 12px/1.4 var(--sans);letter-spacing:.02em;color:#eadfc9;text-decoration:none;min-height:44px}.social-medallion{width:42px;height:42px;display:grid;place-items:center;border:1px solid #b99d675e;border-radius:50%;color:#d6bd87;background:#c5aa7307;transition:color .2s,border-color .2s,background .2s}.social-icon{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.social-icon--facebook{stroke-width:1.6}.social-icon-dot{fill:currentColor;stroke:none}.social-link:hover .social-medallion{color:#f4e4c4;border-color:#d6bd87;background:#c5aa7317}.social-link:focus-visible{outline:2px solid #d6bd87;outline-offset:5px;border-radius:3px}.footer-social{display:flex;align-items:center;justify-content:space-between;padding-block:25px 35px}.footer-social .social-heading{margin:0!important}@media(max-width:760px){.footer-social{align-items:flex-start;flex-direction:column;gap:16px;padding-block:5px 32px}.social-connect{margin-top:25px}.social-links{gap:16px 24px}.social-link{font-size:12px}.social-heading{font-size:9px}}
/* Explicit light footer colors prevent the former light theme's paper color from becoming dark text. */
.site-footer{color:#eee4d1}.site-footer .footer-wordmark,.site-footer .footer-top>.text-link{color:#eee4d1}.site-footer .footer-wordmark>span{color:#d5c9b4;font-size:9px}.site-footer .footer-top>.text-link{border-color:#a58d63;font-size:12px}.site-footer .footer-top>.text-link:hover,.site-footer .footer-wordmark:hover{color:#f7edda}.site-footer .footer-bottom{color:#d5c9b4;font-size:10px;line-height:1.7}.site-footer .footer-bottom>a:hover,.site-footer .footer-bottom>button:hover{color:#f4e4c4}@media(max-width:760px){.site-footer .footer-bottom{font-size:10px;gap:17px 22px}.site-footer .footer-bottom>button{font-size:11px;min-height:44px}.site-footer .footer-bottom>a{min-height:44px;display:inline-flex;align-items:center}.site-footer .footer-top>.text-link{font-size:12px}.site-footer .footer-wordmark>span{font-size:9px}}
