/* Additive visual layer. No markup, functionality, visibility or data changes. */
:root { --sf-gold:#957339; --sf-ink:#26261f; --sf-line:#e4dfd4; --sf-cream:#fcfaf6; }
body { background:#fcfaf6!important; color:#26261f; }
.sf-header { background:#fcfaf6; border-color:#e4dfd4; }
.sf-header-inner { max-width:1280px; padding:22px 5%; gap:24px; }
.sf-brand img { width:64px; height:64px; }
.sf-brand strong { font-family:Georgia,'Times New Roman',serif; font-weight:400; text-transform:none; letter-spacing:-.6px; font-size:27px; }
.sf-brand-copy { gap:8px; }
.sf-brand small { color:#716f66; font-size:10px; letter-spacing:.24em; }
.sf-nav { gap:22px; }
.sf-saved { border:1px solid #d8cebb; border-radius:28px; padding:9px 13px; }
.sf-admin-nav { background:#f2eee5; border-color:#e4dfd4; }
.sf-admin-nav .selected { background:#26261f; color:#fff8ec; box-shadow:none; }
.sf-section-title h1,.sf-section-title h2,.sf-contact h2,.sf-banner h2,.sf-steps h3,.sf-couples-grid h3,.sf-workspace h2,.sf-modal>header h2,.cwr-modal-shell h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.5px; }
.sf-collections { padding-top:38px; }
.sf-collections,#gallery-section,.sf-public-sections>section { scroll-margin-top:128px; }
.sf-section-title { padding-bottom:26px; }
.sf-section-title h1,.sf-section-title h2 { font-size:38px; }
.sf-section-title p { color:#716f66; line-height:1.7; }
.sf-eyebrow { color:#957339; letter-spacing:.22em; }
.sf-banner-row { gap:18px; margin-bottom:18px; }
.sf-banner { border-radius:4px; border-color:#ded4c0; min-height:330px; }
.sf-banner h2 { font-size:34px; line-height:1.15; }
.sf-banner-copy { padding:32px 28px; }
.sf-banner-cta { border-radius:3px; padding:11px 15px; letter-spacing:.2px; }
.sf-banner.dark { background:#242820; border-color:#42483b; }
.sf-banner.dark .sf-banner-shade { background:linear-gradient(90deg,rgba(36,40,32,.97),rgba(36,40,32,.83) 30%,rgba(36,40,32,.18)); }
.sf-banner.light .sf-banner-shade { background:linear-gradient(0deg,#fcfaf6,rgba(252,250,246,.97) 22%,rgba(252,250,246,0) 60%),linear-gradient(90deg,rgba(252,250,246,.97),rgba(252,250,246,.88) 30%,rgba(252,250,246,.08) 75%); }
.sf-footnote { color:#716f66; padding-bottom:24px; }
.sf-collection-filter { padding-top:22px; }
.sf-public-sections { border-color:#e4dfd4; }
.sf-public-sections>section { padding-block:48px; border-color:#e4dfd4; }
.sf-steps p,.sf-faq p,.sf-contact p { color:#716f66; line-height:1.8; }
.sf-steps h3 { font-size:22px; }
.sf-faq details { border-color:#e4dfd4; padding-block:20px; }
.sf-faq summary { font-size:16px; }
.sf-couple-photos { border-radius:4px; }
.sf-more { border-radius:3px; padding:12px 22px; }
.sf-workspace { background:#fcfaf6; }
.sf-workspace-heading { padding-bottom:14px; }
.sf-content-panel,.sf-edit-card { border-color:#e4dfd4; border-radius:6px; box-shadow:0 4px 18px #26261f04; }
.sf-content-panel>summary { font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.sf-modal,.cwr-modal-shell { border-color:#e4dfd4; box-shadow:0 20px 80px #26261f2b; }
.sf-modal>header,.sf-modal>footer { background:#fcfaf6; border-color:#e4dfd4; }
.sf-field input:not([type=range]),.sf-field select,.sf-field textarea,.sf-design-search>input { border-color:#cbc5b8; border-radius:4px; }
.sf-toolbar button,.sf-upload { border-radius:4px; }
.sf-savebar { background:#fcfaf6; border-color:#e4dfd4; }
.cb-gallery-title h2,.rf-wizard h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.5px; }
.cb-gallery-title h2 { font-size:36px; }
.cb-gallery-title p { color:#716f66; }
.cb-gallery-controls { background:#fcfaf6; border-color:#e4dfd4; }
.cb-search-row input,.cb-filter-toggle,.cb-help,.cb-filter select { border-color:#cbc5b8; border-radius:4px; }
.cb-sizebar,.cb-filters { background:#f5f1e8; border-color:#e4dfd4; }
.rf-stepper { border-color:#d9d0bf; border-radius:4px; }
.cb-direct-cards { gap:28px 20px; }
.cb-direct-cards>.group { background:transparent; border-color:#e4dfd4; border-radius:4px; box-shadow:none; }
.cb-direct-cards>.group:hover { box-shadow:0 8px 24px #26261f10; }
.cb-direct-cards h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:19px; white-space:normal; line-height:1.35; }
.cb-direct-cards>.group>.p-4 { padding:18px 12px; }
.cb-direct-cards .text-rose-600 { color:#806334; font-style:normal; }
.cwr-modal-shell { border-radius:8px; }
.cwr-modal-header,.cwr-modal-scroll { background:#fcfaf6!important; }
.cwr-modal-header h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.cwr-modal-price,.cwr-modal-controls { border-color:#ded4c0; border-radius:5px; box-shadow:none; }
.rf-price-row { border-color:#e4dfd4; }
.cwr-modal-footer a,.cwr-modal-footer button { background:#26261f; border-color:#26261f; color:#fffaf0; border-radius:4px; }
.sf-contact { background:#242820; color:#faf7ec; padding-inline:24px!important; border-radius:4px; }
.sf-contact h2 { color:#faf7ec; font-size:38px; }
.sf-contact .sf-eyebrow { color:#c5aa78; }
.sf-contact p { color:#d1d2c9; }
.sf-contact-links a { color:#f2e6cd; border-color:#747a68; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:2px solid #957339; outline-offset:3px; }
@media(min-width:768px) {
  main.sf-main { max-width:1280px!important; padding-inline:5%!important; }
}
@media(max-width:1000px) {
  .sf-header-inner { gap:16px; padding-inline:24px; }
  .sf-nav { gap:14px; }
  .sf-brand strong { font-size:24px; }
  .sf-banner h2 { font-size:29px; }
}
@media(max-width:767px) {
  .sf-header-inner { padding:18px 16px; gap:10px; min-height:96px; }
  .sf-brand { gap:10px; }
  .sf-brand img { width:54px; height:54px; }
  .sf-brand strong { font-size:22px; max-width:180px; }
  .sf-brand small { font-size:8px; letter-spacing:.17em; }
  .sf-saved { padding:7px 9px; }
  .sf-collections { padding-top:28px; }
  .sf-collections,#gallery-section,.sf-public-sections>section { scroll-margin-top:106px; }
  .sf-section-title h1,.sf-section-title h2 { font-size:31px; }
  .sf-banner.force-mobile { border-radius:4px; }
  .sf-banner.force-mobile h2 { font-family:Georgia,'Times New Roman',serif; font-size:29px; }
  .sf-public-sections { padding-inline:16px; }
  .sf-public-sections>section { padding-block:34px; }
  .sf-steps h3 { font-size:20px; }
  .sf-faq summary { font-size:14px; }
  .cb-gallery-title h2 { font-size:29px; }
  .cb-direct-cards { gap:18px 12px; }
  .cb-direct-cards h3 { font-size:16px; }
  .cb-direct-cards>.group>.p-4 { padding:14px 8px; }
  .cwr-modal-shell { border-radius:0; }
  .cwr-modal-header h3 { flex:1; min-width:0; white-space:normal; overflow:visible; justify-content:flex-start; text-align:left; font-size:18px; line-height:1.3; }
  .cwr-modal-header h3 button,.cwr-modal-header>button { flex-shrink:0; }
  .sf-contact h2 { font-size:32px; }
}

/* Mobile brand, aligned contact panel and dedicated FAQs — local preview. */
.sf-brand-copy{min-width:0}
.sf-brand strong{white-space:nowrap;max-width:none}
.sf-nav>a,.sf-mobile-nav>a{font:inherit;color:inherit;text-decoration:none}
.sf-mobile-nav>a{display:block;padding:12px}
.sf-public-sections>.sf-contact{margin-inline:-24px;width:calc(100% + 48px);box-sizing:border-box}
.sf-faq-all{text-align:center;margin-top:28px}
.sf-faq-all a{display:inline-block;padding:12px 20px;border:1px solid var(--sf-line);text-decoration:none}
.sf-faq-page{padding:32px 24px 48px;max-width:800px}
.sf-faq-page h1{font:400 clamp(30px,5vw,44px)/1.15 Georgia,serif;color:#242820}
.sf-faq-back{display:inline-block;margin-bottom:32px}
.sf-faq-page .sf-section-title p{margin:18px auto 28px;max-width:480px;line-height:1.6}
.sf-faq-search{display:block;font-size:13px}
.sf-faq-search input{display:block;width:100%;border:1px solid #d9cdbb;border-radius:4px;padding:13px 14px;margin-top:8px;background:#fff;font:inherit;font-size:16px}
.sf-faq-result{font-size:12px;color:#6b655b;margin:16px 0}
.sf-faq-help{margin-top:32px;line-height:1.7}
.sf-featured-choice{display:flex;align-items:center;gap:10px;padding:12px 0}
.sf-featured-choice input{width:18px;height:18px;accent-color:#9a6a2c}
.sf-featured-count{font-size:13px;font-weight:600}
@media(max-width:767px){
 .sf-header-inner{padding:16px 12px;gap:8px;min-height:80px}
 .sf-brand{gap:8px}
 .sf-brand img{width:44px;height:44px;flex-shrink:0}
 .sf-brand strong{font-size:clamp(16px,5.05vw,22px);letter-spacing:-.65px;max-width:none}
 .sf-brand-copy{gap:0}
 .sf-saved{flex-shrink:0;padding:6px 8px!important}
 .sf-menu{flex-shrink:0}
 .sf-public-sections>.sf-contact{margin-inline:-16px;width:calc(100% + 32px)}
 .sf-faq-page{padding:28px 16px 40px}
}
@media(max-width:350px){.sf-header-inner{gap:6px;padding-inline:10px}.sf-brand{gap:6px}.sf-brand img{width:38px;height:38px}.sf-saved{padding:5px 6px!important}}

/* Shared design-action styling: ivory, muted gold and charcoal. */
.cwr-modal-shell{--cwr-action-line:#d8cbb6;--cwr-action-ink:#5c4c34;--cwr-action-radius:4px}
.cwr-modal-toolbar{padding:0 0 12px;gap:8px;margin-top:20px!important}
.cwr-modal-toolbar>.cwr-action{min-width:0;min-height:52px;padding:8px 4px;background:#faf9f6;border:1px solid var(--cwr-action-line);border-radius:var(--cwr-action-radius);color:var(--cwr-action-ink);font:500 12px/1.25 Lato,sans-serif;box-shadow:none;transition:background .15s,border-color .15s}
.cwr-modal-toolbar>.cwr-action:hover{background:#f1ece2;border-color:#a98a56}
.cwr-modal-toolbar>.cwr-action>span{white-space:nowrap}
.cwr-modal-toolbar>.cwr-action>svg{width:17px;height:17px;flex-shrink:0}
.cwr-modal-toolbar>.cwr-action.cwr-inquiry-trigger{grid-column:1 / -1;flex-direction:row;gap:8px;min-height:48px;padding:12px 16px;background:#faf9f6;border:1px solid var(--cwr-action-line);border-radius:var(--cwr-action-radius);color:var(--cwr-action-ink);font-size:13px;font-weight:600}
.cwr-modal-toolbar>.cwr-action.cwr-inquiry-trigger>svg{width:18px;height:18px}
.cwr-modal-toolbar .cwr-copy-menu{right:0;bottom:calc(100% + 10px);width:300px;max-width:100%;box-sizing:border-box;border-color:var(--cwr-action-line);border-radius:var(--cwr-action-radius);background:#faf9f6}
.cwr-modal-toolbar .cwr-copy-menu button{border-radius:2px;background:transparent}
.cwr-modal-toolbar .cwr-copy-menu button:hover,.cwr-modal-toolbar .cwr-copy-menu button:focus{background:#f1ece2}
/* Reserve the same scrollbar gutter as the quote, so the sticky action aligns. */
.cwr-modal-footer{left:0!important;right:0!important;transform:none!important;width:100%!important;max-width:none!important;box-sizing:border-box;overflow-y:auto;scrollbar-gutter:stable;padding:12px 16px!important;background:#faf9f6!important;border-top:1px solid #e5ddd0}
.cwr-modal-footer>button{display:flex;align-items:center;justify-content:center;gap:8px!important;height:48px!important;min-height:48px;padding:12px 16px!important;background:#242820!important;border:1px solid #242820!important;border-radius:var(--cwr-action-radius)!important;color:#fffaf0!important;font:600 13px/1.25 Lato,sans-serif!important;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important;backdrop-filter:none!important}
.cwr-modal-footer>button:hover{background:#363b30!important;border-color:#363b30!important}
.cwr-modal-footer>button:disabled{opacity:.6;cursor:wait}
.cwr-modal-footer>button>svg{width:18px;height:18px;color:#d3b87f;flex-shrink:0}
@media(min-width:768px){.cwr-modal-toolbar>.cwr-action{min-height:48px}.cwr-modal-footer{padding-inline:24px!important}}
@media(max-width:350px){.cwr-modal-footer{padding-inline:10px!important}.cwr-modal-toolbar{gap:6px}}
@media(prefers-reduced-motion:reduce){.cwr-modal-toolbar>.cwr-action{transition:none}}

/* Match note text and document links to the controls' inner left edge. */
.cwr-modal-shell .cwr-notes{padding-inline:18px}
@media(min-width:768px){.cwr-modal-shell .cwr-notes{padding-inline:20px}}
@media(max-width:350px){.cwr-modal-shell .cwr-notes{padding-inline:14px}}
