:root{--ink:#302b29;--rose:#ad7062;--cream:#fbf5f0;--line:#e4d3c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 system-ui,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #805548;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,4.4vw,4.8rem);margin-bottom:25px}h2{font-size:clamp(2.2rem,3.6vw,3.8rem);margin-bottom:25px}.notice{text-align:center;background:#392f2c;color:#fff;font-size:14px;letter-spacing:.12em;padding:9px}header{padding:16px 5%;display:flex;align-items:center;gap:30px;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.logo{width:210px;display:block}nav{display:flex;gap:24px;margin-left:auto}nav a{font-size:14px}nav a:hover{color:var(--rose)}.button{display:inline-block;background:var(--rose);color:white;padding:14px 25px;border:1px solid var(--rose);border-radius:6px;font-size:14px;letter-spacing:.04em}.button:hover{background:#8f594d}.outline{background:transparent;color:var(--ink);border-color:#84716b}.outline:hover{background:#f2e4dc}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1.15fr;background:var(--cream);min-height:560px;overflow:hidden}.hero-copy{padding:75px 8% 65px 11%;align-self:center}.hero-copy>p:not(.eyebrow){max-width:450px}.eyebrow{text-transform:uppercase;font-size:13px;letter-spacing:.17em;color:#835347;margin-bottom:20px}.hero-image{width:100%;height:100%;object-fit:cover;object-position:40% center}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 20px}.location{font-size:14px;color:#71665f}.section{padding:80px 6%;max-width:1550px;margin:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.section-head p:last-child{max-width:390px;color:#72665e}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.card{border-bottom:1px solid var(--line);padding-bottom:22px}.card img{width:100%;height:220px;object-fit:cover;border-radius:4px;transition:transform .3s}.card:hover img{transform:translateY(-4px)}.card h3{font:25px/1.3 Georgia,serif;margin:15px 0 8px}.card p{font-size:15px;color:#72665e;max-width:350px;margin-bottom:12px}.card a{color:#8a5245;font-size:14px;text-decoration:underline;text-underline-offset:4px}.custom{background:var(--cream);display:grid;grid-template-columns:1fr 1.2fr;gap:65px;align-items:center}.custom p{max-width:470px}.custom-images{display:grid;grid-template-columns:1fr 1fr;gap:15px}.custom-images img{width:100%;height:180px;object-fit:cover;border-radius:4px}.custom-images img:first-child{grid-row:span 2;height:375px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery button{padding:0;border:0;background:var(--cream);cursor:pointer;text-align:left;color:var(--ink);font:16px Georgia,serif}.gallery img{display:block;width:100%;height:190px;object-fit:cover}.gallery span{display:block;padding:14px}.gallery-note{font-size:14px;color:#72665e;margin-top:22px}.about{text-align:center;border-top:1px solid var(--line)}.about p{max-width:710px;margin:0 auto 20px}.about .eyebrow{margin-bottom:22px}.contact{background:#f0e2da;display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact p{max-width:500px}.handle{margin:14px 0 0;font-size:14px}.steps{align-self:center;border-left:1px solid #c5a899;padding-left:50px}.steps h3{font:27px Georgia,serif}.steps ol{padding-left:22px}.steps li{padding-left:12px;margin-bottom:24px}.steps strong,.steps span{display:block}.steps span{font-size:15px;margin-top:4px}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 6%;font-size:14px}footer>span:first-child{font:20px Georgia,serif}dialog{border:0;border-radius:8px;padding:40px 25px 20px;max-width:90vw;max-height:90vh;background:var(--cream)}dialog::backdrop{background:#211915bd}dialog img{display:block;max-width:75vw;max-height:65vh;min-width:280px;image-rendering:auto}dialog p{margin:15px 0 0;font:24px Georgia,serif}.close{position:absolute;right:10px;top:3px;font-size:28px;border:0;background:none;cursor:pointer}@media(max-width:1050px){header{gap:15px}.header-quote{display:none}nav{gap:18px}.hero{min-height:480px}.hero-copy{padding:45px 8%}.section{padding:60px 5%}.cards{gap:20px}.card img{height:190px}.gallery{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.notice{font-size:12px}.logo{width:180px}header{padding:12px 5%;flex-wrap:wrap}.menu{display:block;margin-left:auto;border:1px solid var(--line);padding:9px 15px;border-radius:5px;background:white;font:14px system-ui}nav{display:none;width:100%;flex-direction:column;padding:10px 0}nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 6%}.hero-image{height:280px;object-position:center}.section-head{display:block}.section-head p:last-child{max-width:100%}.cards{grid-template-columns:repeat(2,1fr);gap:25px 16px}.card img{height:160px}.card h3{font-size:22px}.custom,.contact{grid-template-columns:1fr;gap:30px}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img{height:150px}.steps{border-left:0;border-top:1px solid #c5a899;padding:30px 0 0}.section{padding:48px 6%}footer{flex-wrap:wrap}footer>*{width:45%}.custom-images img:first-child{height:335px}.custom-images img{height:160px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card img{transition:none}}
/* Preview design, rebuilt as independent accessible page elements. */
body{background:#fbf5f0;font-family:Georgia,serif}header{max-width:1490px;margin:auto;padding:17px 6%;gap:25px}nav{gap:23px}nav a{font-size:14px}.logo{width:195px}.hero{max-width:1490px;margin:auto;min-height:320px;grid-template-columns:1fr 1.35fr}.hero-copy{padding:28px 5% 22px 14%}h1{font-size:clamp(2.4rem,3.6vw,3.7rem);margin-bottom:12px}.hero-copy .eyebrow{font-size:13px;margin-bottom:9px;max-width:310px}.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.35;margin-bottom:12px}.actions{margin:16px 0 8px}.hero-image{max-height:400px}.button{font-family:Georgia,serif;cursor:pointer;text-transform:uppercase;letter-spacing:.09em;font-size:12px}.section{background:white}.section#keepsakes{padding:10px 2.5% 25px;max-width:1490px}.section#keepsakes>.section-head{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.cards{grid-template-columns:repeat(9,minmax(0,1fr));gap:10px}.card{border:0;background:#f8eee7;padding-bottom:0;position:relative}.card img{height:110px;border-radius:0}.card h3{font-size:16px;text-align:center;margin:0;padding:9px 4px;line-height:1.2;min-height:55px}.card p{display:none}.card a{position:absolute;inset:0;font-size:0}.card a:focus-visible{outline:3px solid #805548;outline-offset:0}.card:hover img{transform:none}.card:hover{background:#efddd1}.social-strip{margin-top:17px;border-radius:20px;background:#f8eee7;display:grid;grid-template-columns:1fr 1fr 1fr;padding:20px}.social-strip>*{text-align:center;padding:0 15px;border-right:1px solid #b5907f}.social-strip>*:last-child{border-right:0}.social-strip strong,.social-strip span{display:block}.social-strip strong{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#8e5747}.social-strip span{font-size:17px;margin-top:5px}.social-strip a:hover{text-decoration:underline}.contact-instagram{display:inline-block;margin:15px;text-decoration:underline}.location{font-style:italic}.custom,.contact{background:#f8eee7}.gallery-note,.privacy-note{font-size:14px;color:#75635b}#quote-dialog{width:650px;padding:38px;overflow:auto}#quote-dialog h2{font-size:32px}label{display:block;margin:16px 0;font-size:16px}input,select,textarea{display:block;width:100%;font:16px/1.5 system-ui,sans-serif;padding:10px;border:1px solid #b99c8d;border-radius:4px;background:white;color:#302b29;margin-top:6px}#quote-result .button{margin-right:8px;margin-bottom:10px}#copy-status{margin-top:12px;font-size:14px}@media(max-width:1050px){header{padding:15px 3%;gap:15px}nav{gap:14px}.hero-copy{padding:30px 7%}.cards{grid-template-columns:repeat(5,minmax(0,1fr))}.card img{height:130px}.hero-image{height:100%;max-height:none}}@media(max-width:720px){header{padding:12px 5%}.hero-copy{padding:30px 6%}.hero-image{height:250px}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.card img{height:110px}.card h3{font-size:16px}.social-strip{grid-template-columns:1fr;padding:0 18px}.social-strip>*{border-right:0;border-bottom:1px solid #d6bfb1;padding:16px 0}.social-strip>*:last-child{border-bottom:0}#quote-dialog{padding:32px 20px}h1{font-size:2.7rem}}

:root{--rose:#b17d6e;--cream:#fbf4ef;--line:#dfc9bd}.brand-banner{max-width:1490px;margin:auto;background:#faf2ed;text-align:center}.brand-banner a{display:block;max-width:950px;margin:auto}.brand-banner img{display:block;width:100%;height:auto}.eyebrow{color:#88563d}.button{background:#aa7160;border-color:#aa7160}.button:hover{background:#89573f}.button.outline{background:transparent;color:var(--ink);border-color:#947868}.button.outline:hover{background:#efddd1}.social-strip strong{color:#88563d}header{border-top:1px solid #dfc9bd}@media(max-width:720px){.brand-banner a{max-width:100%}.brand-banner img{width:100%}}
.brand-banner{width:100%;max-width:none}.brand-banner a{width:100%;max-width:none}.brand-banner img{width:100%;height:auto}
footer{align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);background:#fbf4ef}.footer-brand{flex-basis:100%;display:flex;justify-content:center;margin:10px 0 20px}.footer-brand img{display:block;width:180px;height:auto;border-radius:50%}footer>span:nth-child(2){font:20px Georgia,serif}@media(max-width:720px){.footer-brand{width:100%}.footer-brand img{width:150px}}
.contact-heading{display:flex;align-items:center;gap:24px;margin-bottom:25px}.contact-heading h2{margin:0;flex:1}.contact-logo{display:block;width:160px;height:auto;border-radius:50%;flex-shrink:0}@media(max-width:1050px){.contact-heading{gap:15px}.contact-logo{width:120px}}@media(max-width:400px){.contact-logo{width:90px}.contact-heading h2{font-size:1.9rem}}
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}.gallery-filters button{border:1px solid #c9aa9a;background:white;color:#684b3d;padding:10px 16px;border-radius:30px;font:14px/1.4 system-ui,sans-serif;cursor:pointer}.gallery-filters button:hover{background:#f7e9df}.gallery-filters button[aria-pressed="true"]{background:#89573f;border-color:#89573f;color:white}#gallery-count{font:14px system-ui,sans-serif;color:#72665e;margin-bottom:20px}
.language-switch{display:flex;gap:10px;flex-shrink:0;font:14px system-ui,sans-serif}.language-switch a{padding:7px 5px}.language-switch [aria-current="page"]{color:#89573f;border-bottom:2px solid #89573f}.language-switch a:hover{text-decoration:underline}header{flex-wrap:wrap}html[lang="fr"] .card h3{font-size:14px}html[lang="fr"] .hero-copy{padding-left:8%}@media(max-width:720px){.language-switch{margin-left:auto}.menu{margin-left:auto}html[lang="fr"] .contact-heading h2{font-size:2rem}}

.pricing{border-top:1px solid var(--line)}.pricing-table-wrap{max-width:950px}.pricing-table{width:100%;border-collapse:collapse;font-size:1rem}.pricing-table caption{text-align:left;font-size:.875rem;color:#72665e;caption-side:bottom;padding:15px 0}.pricing-table th,.pricing-table td{padding:20px 24px;text-align:left;border-bottom:1px solid var(--line)}.pricing-table thead{background:var(--cream)}.pricing-table thead th{font-weight:600}.pricing-table tbody th{font-weight:500}.pricing-table td{font-variant-numeric:tabular-nums;font-weight:600;color:#88563d}.pricing-note{max-width:950px;padding:24px;background:var(--cream);border-radius:6px;margin-top:12px}.pricing-note p{max-width:720px;margin-bottom:18px}@media(max-width:720px){.pricing-table th,.pricing-table td{padding:16px 10px}.pricing-table thead th{font-size:.875rem}.pricing-note{padding:20px}}

.pricing-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.pricing-columns h3{font:1.5rem/1.3 Georgia,serif;margin-bottom:20px}.pricing-adult .pricing-table th{width:76%}.pricing-adult .pricing-table td{white-space:nowrap}.pricing-note{max-width:none}@media(max-width:850px){.pricing-columns{grid-template-columns:1fr;gap:32px}}

.contact-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.social-message{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;min-height:46px;border-radius:7px;font-size:.875rem;font-weight:600;text-decoration:none;color:#fff;line-height:1.3;transition:filter .15s}.social-facebook{background:#0866ff}.social-instagram{background:linear-gradient(120deg,#a52bb9,#c92668,#b34a19)}.social-message:hover{filter:brightness(.9);text-decoration:none}.social-message:focus-visible{outline:3px solid #443330;outline-offset:4px}.floating-social{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:20;display:flex;gap:8px;max-width:calc(100vw - 32px)}.floating-social .social-message{border-radius:30px;box-shadow:0 4px 16px #44333030}footer{padding-bottom:90px}@media(max-width:480px){.floating-social{right:16px;bottom:max(14px,env(safe-area-inset-bottom))}.floating-social .social-message{padding:12px 16px}.contact-actions{align-items:stretch}.contact-actions>*{width:100%}}

.frame-pricing{margin-top:48px}.frame-pricing h3{font:1.5rem/1.3 Georgia,serif;margin-bottom:20px}.frame-pricing .pricing-table td{white-space:nowrap}.frame-pricing .pricing-table a{white-space:normal;color:inherit}.frame-pricing .pricing-table th{width:75%}@media(max-width:480px){.frame-pricing .pricing-table th{width:65%}}
