:root{--cream: #FBF7F1;--cream-deep: #F4EBDE;--card: #FFFFFF;--ink: #3D3229;--ink-soft: #5C4F43;--heading: #1b344d;--muted: #8A7A6A;--terracotta: #C96F4A;--terracotta-dark: #A9553A;--blush: #F7E2D4;--gold: #E3A857;--sage: #9BAA8D;--line: #E8DECF;--shadow: 0 10px 30px rgba(93, 70, 50, .1);--shadow-soft: 0 4px 14px rgba(93, 70, 50, .08);--radius: 18px;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Nunito Sans", -apple-system, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--cream);color:var(--ink);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;display:block}.container{width:min(1120px,92%);margin:0 auto}h1,h2,h3,h4{text-wrap:balance}p,li,blockquote,figcaption,.lead,.section-intro,.footer-tagline{text-wrap:pretty}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.15;color:var(--heading)}h1{font-size:clamp(calc((2.4rem + 2pt)*.95),calc((5.5vw + 2pt)*.95),calc((4.2rem + 2pt)*.95));letter-spacing:-.01em}h2{font-size:clamp(calc((1.8rem + 2pt)*.95),calc((3.6vw + 2pt)*.95),calc((2.6rem + 2pt)*.95));letter-spacing:-.01em}h3{font-size:calc((1.25rem + 2pt)*.95)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--terracotta);margin-bottom:1rem}.lead{font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink-soft);max-width:42em}.section-intro{max-width:40em;color:var(--ink-soft)}.btn{display:inline-block;font-family:var(--font-body);font-weight:700;font-size:1rem;padding:.85rem 1.8rem;border-radius:999px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;cursor:pointer;border:none}.btn-primary{background:var(--terracotta);color:#fff;box-shadow:0 6px 18px #c96f4a59}.btn-primary:hover{background:var(--terracotta-dark);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--terracotta-dark);box-shadow:inset 0 0 0 2px var(--terracotta)}.btn-ghost:hover{background:var(--blush);transform:translateY(-2px)}.site-header{position:sticky;top:0;z-index:50;background:#fbf7f1eb;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav-wrap{display:flex;align-items:center;gap:1.1rem;padding:.65rem 0}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--ink);margin-right:auto}.brand-mark{width:42px;height:42px;flex-shrink:0}.brand-logo{height:110.4px;width:auto;display:block;flex-shrink:0}.site-footer .brand-logo{height:103.2px}.brand-name{font-family:var(--font-display);font-weight:700;font-size:1.25rem;line-height:1.1}.brand-sub{display:block;font-family:var(--font-body);font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--terracotta)}.site-nav{display:flex;align-items:center;gap:1.05rem}.site-nav a{text-decoration:none;color:var(--ink-soft);font-weight:600;font-size:.9rem;white-space:nowrap;padding:.25rem 0;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.site-nav a:hover{color:var(--terracotta-dark)}.site-nav a.active{color:var(--terracotta-dark);border-bottom-color:var(--terracotta)}.nav-cta{padding:.6rem 1.3rem;font-size:.92rem}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.4rem}.nav-toggle span{display:block;width:26px;height:3px;border-radius:3px;background:var(--ink);margin:5px 0;transition:transform .25s ease,opacity .25s ease}.nav-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero{position:relative;display:flex;align-items:center;min-height:min(92vh,860px);padding:clamp(4rem,12vh,8rem) 0;overflow:hidden;background:#2a1e14 url(/images/hero-poster.jpg) center / cover no-repeat}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#261c148c,#261c144d 42%,#261c14b8),linear-gradient(90deg,rgba(38,28,20,.55) 0%,rgba(38,28,20,.1) 55%,transparent 100%)}.hero-content{position:relative;z-index:2;max-width:46rem}.hero .eyebrow{color:var(--gold)}.hero h1{color:#fff}.hero .lead{color:#ffffffeb;margin:1.4rem 0 2.2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem}.hero .btn-ghost{color:#fff;box-shadow:inset 0 0 0 2px #ffffffbf}.hero .btn-ghost:hover{background:#ffffff24}.hero-note{margin-top:1.6rem;font-size:.92rem;color:#ffffffd1}.page-hero{padding:clamp(3rem,7vw,5rem) 0;background:radial-gradient(ellipse 60% 70% at 90% 0%,rgba(227,168,87,.16),transparent);border-bottom:1px solid var(--line)}.page-hero .lead{margin-top:1.2rem}.page-hero.has-video{position:relative;display:flex;align-items:center;min-height:min(72vh,640px);padding:clamp(3rem,9vh,6rem) 0;overflow:hidden;border-bottom:none;background:#2a1e14}.page-hero.has-video .hero-content{position:relative;z-index:2;max-width:46rem}.page-hero.has-video .eyebrow{color:var(--gold)}.page-hero.has-video h1{color:#fff}.page-hero.has-video .lead{color:#ffffffeb}.media-ph{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;color:#3d32298c}.media-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.media-ph:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(61,50,41,.22));pointer-events:none}.media-ph .ph-icon{width:54px;height:54px;opacity:.6}.media-ph .ph-caption{position:absolute;left:1rem;right:1rem;bottom:.9rem;z-index:1;color:#fff;font-size:.85rem;font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.35)}.ph-a{background:linear-gradient(135deg,#f3d9be,#e0b18b)}.ph-b{background:linear-gradient(135deg,#ead9c2,#c9a87f)}.ph-c{background:linear-gradient(135deg,#f7e2d4,#dfa98a)}.ph-d{background:linear-gradient(135deg,#e9e3d2,#b9bfa3)}.ph-e{background:linear-gradient(135deg,#f2e0ce,#d8ae92)}.ph-f{background:linear-gradient(135deg,#efe6da,#cbb39a)}.ph-g{background:linear-gradient(135deg,#e7dccb,#c4a585)}.hero-media{aspect-ratio:4 / 5;transform:rotate(2deg)}.hero-media-stack{position:relative}.hero-media-stack .media-chip{position:absolute;z-index:2;background:var(--card);border-radius:14px;box-shadow:var(--shadow);padding:.7rem 1rem;font-size:.86rem;font-weight:700;color:var(--ink-soft);display:flex;align-items:center;gap:.5rem}.media-chip svg{width:20px;height:20px;flex-shrink:0}.chip-top{top:-1.2rem;left:-1.6rem;transform:rotate(-3deg)}.chip-bottom{bottom:-1.2rem;right:-1rem;transform:rotate(2deg)}.section{padding:clamp(3.2rem,7vw,5.5rem) 0}.section-alt{background:var(--cream-deep)}.section-head{margin-bottom:2.6rem}.section-head h2:before{content:"";display:inline-block;width:1.05em;height:1.05em;margin-right:.5rem;vertical-align:-.16em;background:url(/images/SPV_paw_icon.png) no-repeat center / contain}.section-head h2.no-heading-icon:before{content:none}.section-head.center{text-align:center}.section-head.center .section-intro{margin:.9rem auto 0}.section-head:not(.center) .section-intro{margin-top:.9rem}.band{background:var(--ink);color:var(--cream);padding:clamp(2.6rem,5vw,4rem) 0}.band blockquote{font-family:var(--font-display);font-style:italic;font-size:clamp(1.35rem,3vw,2rem);line-height:1.4;max-width:28em;margin:0 auto;text-align:center}.band cite{display:block;margin-top:1.2rem;font-family:var(--font-body);font-style:normal;font-size:.85rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem}.card{background:var(--card);border-radius:var(--radius);padding:1.8rem;box-shadow:var(--shadow-soft);border:1px solid var(--line)}.card h3{margin-bottom:.6rem}.card p{color:var(--ink-soft);font-size:.98rem}.org-logo{display:block;height:44px;width:auto;max-width:100%;margin:0 auto 1.1rem;object-fit:contain}.card-icon{width:52px;height:52px;border-radius:14px;background:var(--blush);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}.card-icon svg{width:28px;height:28px}.card-link{display:inline-block;margin-top:.9rem;font-weight:700;font-size:.92rem;color:var(--terracotta-dark);text-decoration:none}.card-link:hover{text-decoration:underline}.moments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.moments-grid .media-ph{aspect-ratio:4 / 3}.moments-grid .tall{aspect-ratio:3 / 4;grid-row:span 2}.details-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;list-style:none}.details-list li{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem 1.2rem;font-weight:700;font-size:.92rem;color:var(--ink-soft);display:flex;align-items:center;gap:.6rem}.details-list .dot{width:9px;height:9px;border-radius:50%;background:var(--gold);flex-shrink:0}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(2.4rem,5vw,3.8rem) 0}.service-row+.service-row{border-top:1px solid var(--line)}.service-row .media-ph{aspect-ratio:3 / 2}.service-row.flip .service-media{order:2}.service-row h2{font-size:clamp(calc((1.6rem + 2pt)*.95),calc((3vw + 2pt)*.95),calc((2.1rem + 2pt)*.95));margin-bottom:.8rem}.service-row p{color:var(--ink-soft)}.service-tag{display:inline-block;background:var(--blush);color:var(--terracotta-dark);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:.3rem .8rem;border-radius:999px;margin-bottom:1rem}.milestone-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem;list-style:none}.milestone-chips li{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:.4rem 1rem;font-size:.88rem;font-weight:700;color:var(--ink-soft)}.remembrance{background:var(--cream-deep);border-radius:var(--radius);padding:clamp(2rem,5vw,3.2rem);text-align:center;border:1px solid var(--line)}.remembrance h2{font-size:calc((1.6rem + 2pt)*.95);margin-bottom:.8rem}.remembrance p{max-width:38em;margin:0 auto .8rem;color:var(--ink-soft)}.steps{counter-reset:step;display:grid;gap:1.4rem}.step{display:grid;grid-template-columns:64px 1fr;gap:1.4rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem 1.8rem;box-shadow:var(--shadow-soft)}.step-num{counter-increment:step;width:64px;height:64px;border-radius:50%;background:var(--blush);color:var(--terracotta-dark);font-family:var(--font-display);font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center}.step-num:before{content:counter(step)}.step h3{margin-bottom:.4rem}.step p{color:var(--ink-soft);font-size:.98rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;align-items:stretch}.price-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.8rem;box-shadow:var(--shadow-soft);display:flex;flex-direction:column}.price-card.featured{border:2px solid var(--terracotta);box-shadow:var(--shadow);position:relative}.price-card .flag{position:absolute;top:-.8rem;left:50%;transform:translate(-50%);background:var(--terracotta);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.3rem 1rem;border-radius:999px;white-space:nowrap}.price-card h3{margin-bottom:.3rem}.price{font-family:var(--font-display);font-size:2.2rem;font-weight:700;color:var(--terracotta-dark);margin:.6rem 0 .2rem}.price small{font-size:.95rem;color:var(--muted);font-family:var(--font-body);font-weight:600}.price-card ul{list-style:none;margin:1.2rem 0 1.6rem;flex-grow:1}.price-card li{padding:.45rem 0 .45rem 1.7rem;position:relative;font-size:.95rem;color:var(--ink-soft)}.price-card li:before{content:"";position:absolute;left:0;top:.85rem;width:9px;height:9px;border-radius:50%;background:var(--gold)}.pricing-note{margin-top:1.6rem;font-size:.9rem;color:var(--muted);text-align:center}.price-card .card-desc{color:var(--ink-soft);font-size:.96rem;margin:.4rem 0 .2rem}.price-card .includes-label{display:block;margin-top:1.2rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-dark)}.price-card .includes-label+ul{margin-top:.6rem}.price-card .ideal-for{margin:0 0 1.6rem;padding:.9rem 1.1rem;background:var(--cream-deep);border-radius:12px;font-size:.9rem;color:var(--ink-soft)}.price-card .ideal-for strong{color:var(--heading)}.gift-cert{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(1.6rem,4vw,3rem);align-items:center;background:var(--cream-deep);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(2rem,5vw,3.4rem)}.gift-cert h2{font-size:clamp(calc((1.6rem + 2pt)*.95),calc((3vw + 2pt)*.95),calc((2.1rem + 2pt)*.95));margin-bottom:.8rem}.gift-cert p{color:var(--ink-soft);margin-bottom:1rem;max-width:40em}.gift-cert .btn{margin-top:.4rem}.gift-card-visual{background:linear-gradient(135deg,var(--terracotta),var(--gold));border-radius:var(--radius);padding:clamp(1.8rem,4vw,2.4rem);color:#fff;box-shadow:var(--shadow);aspect-ratio:8 / 5;display:flex;flex-direction:column;justify-content:space-between}.gift-card-visual .gc-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;opacity:.9}.gift-card-visual .gc-title{font-family:var(--font-display);font-size:clamp(1.5rem,3.4vw,2rem);font-weight:700;line-height:1.15}.gift-card-visual .gc-foot{display:flex;justify-content:space-between;align-items:flex-end;font-size:.85rem;font-weight:700}.remote-offer{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.8rem,4vw,3.2rem);align-items:start;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--terracotta);border-radius:var(--radius);padding:clamp(2rem,5vw,3.4rem);box-shadow:var(--shadow-soft)}.remote-flag{position:absolute;top:-.8rem;left:clamp(2rem,5vw,3.4rem);background:var(--sage);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.3rem 1rem;border-radius:999px;white-space:nowrap}.remote-offer .eyebrow{color:var(--terracotta)}.remote-offer h2{font-size:clamp(calc((1.6rem + 2pt)*.95),calc((3vw + 2pt)*.95),calc((2.1rem + 2pt)*.95));margin-bottom:.35rem}.remote-tagline{font-family:var(--font-display);font-style:italic;font-size:clamp(1.05rem,2.2vw,1.3rem);color:var(--terracotta-dark);margin-bottom:1.1rem}.remote-intro p{color:var(--ink-soft);margin-bottom:1rem;max-width:40em}.remote-intro p strong{color:var(--heading)}.remote-price{margin:.2rem 0 1.3rem}.remote-price .price{margin:0}.remote-actions{display:flex;flex-wrap:wrap;gap:.8rem}.remote-details .includes-label{display:block;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-dark)}.remote-steps+.includes-label{margin-top:1.5rem}.remote-details .includes-label+*{margin-top:.8rem}.remote-steps{counter-reset:rstep;list-style:none;margin:0}.remote-steps li{counter-increment:rstep;position:relative;padding:0 0 .9rem 2.5rem;color:var(--ink-soft);font-size:.95rem}.remote-steps li:last-child{padding-bottom:0}.remote-steps li:before{content:counter(rstep);position:absolute;left:0;top:-.1rem;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--blush);color:var(--terracotta-dark);font-family:var(--font-display);font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center}.remote-steps strong{color:var(--heading)}.remote-list{list-style:none;margin:0}.remote-list li{position:relative;padding:.4rem 0 .4rem 1.6rem;font-size:.95rem;color:var(--ink-soft)}.remote-list li:before{content:"";position:absolute;left:0;top:.8rem;width:9px;height:9px;border-radius:50%;background:var(--gold)}.faq-list{max-width:780px;margin:0 auto}.faq-item{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-bottom:.8rem;box-shadow:var(--shadow-soft);overflow:hidden;transition:border-color .2s ease}.faq-item[open]{border-color:var(--terracotta)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;padding:1.2rem 1.5rem;font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--heading);cursor:pointer;list-style:none;user-select:none}.faq-question::-webkit-details-marker{display:none}.faq-question::marker{content:""}.faq-question:hover,.faq-item[open] .faq-question{color:var(--terracotta-dark)}.faq-chevron{flex-shrink:0;color:var(--terracotta);font-size:1.4rem;line-height:1;display:inline-block;transition:transform .3s ease;transform:rotate(0)}.faq-item[open] .faq-chevron{transform:rotate(90deg)}.faq-answer{padding:0 1.5rem 1.35rem}.faq-answer p{color:var(--ink-soft);font-size:.98rem;max-width:62ch}@media(prefers-reduced-motion:reduce){.faq-chevron,.faq-item{transition:none}}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}.about-grid .media-ph{aspect-ratio:4 / 5}.about-copy p{margin-bottom:1.1rem;color:var(--ink-soft)}.about-copy p strong{color:var(--ink)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2rem,5vw,4rem);align-items:start}.contact-form{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow-soft)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{margin-bottom:1.2rem}.field label{display:block;font-weight:700;font-size:.9rem;margin-bottom:.4rem}.field input,.field select,.field textarea{width:100%;font-family:var(--font-body);font-size:1rem;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.field textarea{resize:vertical;min-height:130px}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--terracotta);box-shadow:0 0 0 3px #c96f4a2e}.form-success{display:none;background:#eef3e7;border:1px solid var(--sage);border-radius:12px;padding:1rem 1.2rem;margin-top:1.2rem;font-weight:600;color:#4e5a40}.form-success.visible{display:block}.form-error{display:none;background:#fbe9e4;border:1px solid var(--terracotta);border-radius:12px;padding:1rem 1.2rem;margin-top:1.2rem;font-weight:600;color:#8a3b22}.form-error a{color:inherit;text-decoration:underline}.form-error.visible{display:block}.contact-aside .card+.card{margin-top:1.4rem}.cta-banner{background:linear-gradient(135deg,var(--terracotta),var(--terracotta-dark));border-radius:calc(var(--radius) + 6px);color:#fff;text-align:center;padding:clamp(2.6rem,6vw,4.2rem) clamp(1.5rem,5vw,4rem);box-shadow:var(--shadow)}.cta-banner h2{color:#fff;margin-bottom:.8rem}.cta-banner p{max-width:36em;margin:0 auto 1.8rem;color:#ffffffeb}.cta-banner .eyebrow{color:var(--blush)}.cta-banner .btn-primary{background:#fff;color:var(--terracotta-dark);box-shadow:0 6px 18px #0000002e}.cta-banner .btn-primary:hover{background:var(--cream)}.cta-banner.cta-blue{background:linear-gradient(135deg,#1b344d,#132436)}.cta-banner.cta-with-image{display:flex;align-items:center;gap:clamp(1.5rem,4vw,3rem);text-align:left;padding:clamp(1.4rem,3vw,2.2rem)}.cta-with-image .cta-image{flex:0 0 42%;align-self:stretch;width:42%;min-height:240px;object-fit:cover;border-radius:var(--radius);display:block}.cta-with-image .cta-content{flex:1;min-width:0}.cta-with-image .cta-content p{margin-left:0;margin-right:0}@media(max-width:820px){.cta-banner.cta-with-image{flex-direction:column;text-align:center}.cta-with-image .cta-image{flex:none;width:100%;min-height:200px;max-height:260px}.cta-with-image .cta-content p{margin-left:auto;margin-right:auto}}.cta-banner.cta-bg-video-box{position:relative;overflow:hidden;isolation:isolate}.cta-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.cta-bg-video-box:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,#c96f4adb,#a9553aeb)}.cta-bg-video-box.cta-blue:after{background:linear-gradient(135deg,#1b344ddb,#132436eb)}.cta-banner.cta-logo-watermark{position:relative;overflow:hidden;isolation:isolate}.cta-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(2.56);height:calc(100% - 2in);width:auto;max-width:82%;object-fit:contain;opacity:.05;z-index:0;pointer-events:none}.cta-logo-watermark .cta-content{position:relative;z-index:1}.workwith-intro{display:flex;align-items:center;gap:clamp(1.5rem,4vw,3rem);margin-bottom:2.6rem}.workwith-image{flex:0 0 calc((100% - 3.2rem) / 3);width:calc((100% - 3.2rem) / 3);height:auto;border-radius:var(--radius);display:block;box-shadow:var(--shadow)}.workwith-intro .section-head{flex:1;min-width:0;margin-bottom:0}@media(max-width:820px){.workwith-intro{flex-direction:column;text-align:center;margin-bottom:2rem}.workwith-image{width:100%}.workwith-intro .section-intro{margin-left:auto;margin-right:auto}}.cta-bg-video-box .cta-content{position:relative;z-index:2}.site-footer{background:var(--ink);color:#cdbfb1;padding:3.5rem 0 2rem;margin-top:clamp(3rem,7vw,5rem)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem}.site-footer .brand{color:var(--cream)}.site-footer .brand-sub{color:var(--gold)}.footer-tagline{margin-top:1rem;font-size:.95rem;max-width:24em}.site-footer h4{font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}.site-footer ul{list-style:none}.site-footer li{margin-bottom:.55rem}.site-footer a{color:#cdbfb1;text-decoration:none;font-size:.95rem}.site-footer a:hover{color:#fff}.footer-payments{border-top:1px solid rgba(255,255,255,.12);padding-top:1.7rem;margin-bottom:1.9rem}.footer-payments-label{display:block;font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}.pay-marks{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.4rem}.pay-mark{display:inline-flex;align-items:center;color:#cdbfb1;opacity:.82}.pay-mark svg{height:23px;width:auto;display:block}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:1.6rem;font-size:.85rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}.tagline-divider{overflow:hidden;padding:clamp(1.2rem,3.5vw,2.2rem) 0;background:var(--blush);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.tagline-track{display:flex;align-items:center;width:max-content;will-change:transform}.tagline-item{flex:0 0 auto;font-family:var(--font-display);font-weight:700;font-size:clamp(1.3rem,3vw,2.1rem);line-height:1.1;color:var(--heading);white-space:nowrap;padding:0 clamp(1.4rem,3vw,2.4rem)}.tagline-sep{flex:0 0 auto;width:clamp(22px,2.4vw,30px);height:clamp(22px,2.4vw,30px);color:var(--terracotta);opacity:.85}.tagline-sep svg{width:100%;height:100%;display:block;fill:currentColor}.tagline-sep img{width:100%;height:100%;object-fit:contain;display:block}.film-strip-wrap{overflow:hidden;width:100%;line-height:0;user-select:none;background:#1c1206}.film-strip{display:flex;flex-direction:column;width:max-content;will-change:transform}.film-perfs{height:24px;background-color:#1c1206;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='24'%3E%3Crect x='10' y='5' width='24' height='14' rx='3' fill='%23000'/%3E%3C/svg%3E");background-repeat:repeat-x;background-size:44px 24px;border-top:2px solid #2a1a0a;border-bottom:2px solid #2a1a0a}.film-frames{display:flex;align-items:stretch;border-top:3px solid #2a1a0a;border-bottom:3px solid #2a1a0a}.film-frame{width:280px;height:188px;flex-shrink:0;border-right:3px solid #1c1206;overflow:hidden;position:relative}.film-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.03);transition:filter .4s ease,transform .4s ease}.film-frame:hover img{filter:saturate(1.05) contrast(1.05);transform:scale(1.04)}.gallery-row-label{font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--terracotta-dark);margin-bottom:1.1rem;display:flex;align-items:center;gap:.6rem}.gallery-row-label:before{content:"";width:26px;height:2px;background:var(--terracotta);border-radius:2px}.gallery-row-label--top{margin-top:3rem}.gallery-grid{display:grid;gap:1.4rem;grid-template-columns:repeat(3,1fr)}.gallery-grid--vertical{grid-template-columns:repeat(4,1fr)}.gallery-item{display:flex;flex-direction:column;gap:.7rem}.video-thumb{position:relative;display:block;width:100%;padding:0;border:none;aspect-ratio:16 / 9;border-radius:var(--radius);overflow:hidden;cursor:pointer;background:var(--cream-deep);box-shadow:var(--shadow-soft)}.video-thumb--vertical{aspect-ratio:9 / 16}.thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.video-thumb:hover .thumb-img{transform:scale(1.05)}.video-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(38,28,20,.35));pointer-events:none}.play-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;width:58px;height:58px;border-radius:50%;background:#c96f4aeb;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #00000047;transition:transform .25s ease,background .25s ease}.play-badge svg{width:22px;height:22px;margin-left:3px;fill:#fff}.video-thumb:hover .play-badge{transform:translate(-50%,-50%) scale(1.12);background:var(--terracotta)}.video-thumb:focus-visible{outline:3px solid var(--terracotta);outline-offset:3px}.coming-soon{position:absolute;top:12px;left:12px;z-index:2;padding:6px 13px;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#fff;background:#c96f4aeb;border-radius:999px;box-shadow:0 4px 14px #00000047;pointer-events:none}.thumb-caption{font-size:.9rem;font-weight:700;color:var(--ink-soft)}.video-modal{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:1.5rem}.video-modal[hidden]{display:none}.modal-backdrop{position:absolute;inset:0;background:#1e140c9e;backdrop-filter:blur(2px);cursor:pointer}.modal-content{position:relative;z-index:1;width:100%;max-width:900px;animation:modalIn .22s ease}.modal-content.is-vertical{max-width:min(420px,calc(56.25vh - 3rem))}@keyframes modalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.modal-video{display:block;width:100%;border-radius:var(--radius);background:#000;box-shadow:0 24px 80px #0000008c}.modal-close{position:absolute;top:-2.9rem;right:0;width:40px;height:40px;border-radius:50%;background:#ffffff24;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease}.modal-close:hover{background:var(--terracotta);border-color:var(--terracotta);transform:scale(1.1)}@media(prefers-reduced-motion:reduce){.film-strip{transform:none!important}.film-frame img,.thumb-img,.play-badge{transition:none}}@media(max-width:960px){.grid-3,.values-grid,.pricing-grid,.details-list,.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:1080px){.nav-toggle{display:block}.nav-cta{display:none}.site-nav{position:absolute;top:100%;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0;padding:.6rem 4%;display:none;box-shadow:var(--shadow)}.site-nav.open{display:flex}.site-nav a{width:100%;padding:.85rem 0;border-bottom:1px solid var(--line);font-size:1.05rem}.site-nav a:last-child{border-bottom:none}.site-nav a.active{border-bottom-color:var(--line)}.hero-grid,.service-row,.about-grid,.gift-cert,.remote-offer,.contact-grid{grid-template-columns:1fr}.service-row.flip .service-media{order:0}.hero-media{max-width:420px;margin:0 auto}.chip-top{left:0}.chip-bottom{right:0}.moments-grid{grid-template-columns:1fr 1fr}.moments-grid .tall{grid-row:auto;aspect-ratio:4 / 3}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid--vertical{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){body{font-size:16px}.grid-3,.grid-2,.values-grid,.pricing-grid,.moments-grid,.details-list,.footer-grid,.form-row{grid-template-columns:1fr}.step{grid-template-columns:48px 1fr;padding:1.3rem}.step-num{width:48px;height:48px;font-size:1.2rem}.hero-actions .btn{width:100%;text-align:center}.gallery-grid{grid-template-columns:1fr}.gallery-grid--vertical{grid-template-columns:repeat(2,1fr)}.film-frame{width:200px;height:135px}.film-perfs{height:18px;background-size:34px 18px}.brand-logo,.site-footer .brand-logo{height:84px}}
