/* Still Beating — Day palette (ivory) for the wedding side; video sections stay night. Darkroom direction, shared by /weddings, /planners, /photographers.
   Matches the homepage: Instrument Serif + Inter Tight, near-black, ember accent. */
:root{--bg:#f6f1e8;--panel:#fbf8f2;--ink:#1f1a16;--soft:#4a423b;--muted:#5f564e;--dim:#8a8077;--line:#d9d0c3;--hair:#e8e0d4;--ember:#d9542f;--ember2:#c9471f;--mat:#fbf8f2;--matink:#1a1613;--night:#0b0a09}
*{box-sizing:border-box}html,body{overflow-x:hidden;max-width:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter Tight',system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--ember2)}a:hover{color:#a63a16}
.serif{font-family:'Instrument Serif',Georgia,serif;font-weight:400}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
header.top{max-width:1240px;margin:0 auto;padding:22px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:600;letter-spacing:.02em}
.beat{width:26px;height:30px;flex:0 0 auto;display:inline-block;background:url(/brand/mark-header-day.svg) center/contain no-repeat;transform-origin:50% 60%;animation:sbBeat 1.4s ease-in-out infinite}
nav.main{display:flex;flex-wrap:wrap;gap:24px;font-size:15px}nav.main a{color:#6b625a;text-decoration:none}nav.main a.on,nav.main a:hover{color:var(--ink)}
.pill{padding:12px 20px;border:1px solid var(--line);border-radius:999px;color:var(--ink);text-decoration:none;font-size:15px;display:inline-block}
.btn{display:inline-block;padding:16px 26px;border-radius:999px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:16px;font-family:inherit;background:none;cursor:pointer}
.btn.primary{background:var(--ember);color:#fff8f0;border-color:var(--ember);font-weight:600}
.btn.primary:hover{background:#c9471f;color:#fff8f0}
.eyebrow{margin:0 0 18px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ember2)}
h1{margin:0;font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(48px,6.4vw,96px);line-height:.96;letter-spacing:-.01em}
h1 em{font-style:italic;color:var(--ember2)}
h2{margin:0 0 40px;font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,64px);line-height:1}
h3{margin:0 0 10px;font-size:21px;font-weight:600}
.lead{margin:28px 0 36px;max-width:520px;font-size:19px;line-height:1.55;color:#4a423b}
.body{margin:0;font-size:16px;line-height:1.6;color:var(--muted)}
.hero{max-width:1240px;margin:0 auto;padding:32px 24px 96px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:64px}
@media (min-width:1000px){.hero>.copy{padding-top:56px}}
.hero>.copy{flex:1 1 420px;min-width:0}.hero>.art{flex:0 1 min(500px,56vh);min-width:0;margin:0 auto;width:100%}
.ctas{display:flex;flex-wrap:wrap;gap:14px}
section.sec{max-width:1240px;margin:0 auto;padding:96px 24px}
section.sec.tight{padding-top:48px}
.ecg{display:block;width:100%;height:80px}
.ecg path{stroke-dasharray:1400;animation:sbDraw 4s ease-out infinite;fill:none;stroke:var(--ember);stroke-width:2}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px}
.step{border-top:1px solid var(--line);padding-top:24px}
.step .num{margin:0 0 18px;font-family:'Instrument Serif',Georgia,serif;font-size:56px;color:var(--ember2);line-height:1}
.rows{display:flex;flex-direction:column}
.row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 40px;padding:28px 0;border-top:1px solid var(--hair)}
.rows .row:last-child{border-bottom:1px solid var(--hair)}
.row h3{margin:0;flex:0 0 300px;font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:40px}
.row p{margin:0;flex:1 1 360px;font-size:17px;line-height:1.55;color:var(--muted)}
.row .price{margin:0;font-size:15px;color:var(--dim);flex:0 0 auto}
.row .price b{display:block;font-family:'Instrument Serif',Georgia,serif;font-size:34px;font-weight:400;color:var(--ink);line-height:1}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px 56px}
.panel{background:var(--panel);border:1px solid var(--hair);border-radius:16px;padding:28px}
.panel .k{margin:0 0 12px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember2)}
.split{position:relative;overflow:hidden;background:var(--night);color:#f2ece4}
.split .eyebrow{color:#ff6a4d}.split .btn.primary{background:#ff5a3c;border-color:#ff5a3c;color:#140806}
.split .in{position:relative;max-width:1240px;margin:0 auto;padding:120px 24px;display:flex;flex-wrap:wrap;gap:48px;align-items:end;justify-content:space-between}
.split .bgv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3;filter:saturate(1.1)}
.split .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,10,9,.94) 0%,rgba(11,10,9,.6) 60%,rgba(11,10,9,.35) 100%)}
.split h2{margin:0;font-size:clamp(44px,6vw,80px);line-height:.98}
.split p{margin:24px 0 0;max-width:540px;font-size:18px;line-height:1.6;color:#d9d1c6}
table.cmp{width:100%;border-collapse:collapse;font-size:16px}
table.cmp th,table.cmp td{text-align:left;padding:16px 12px;border-top:1px solid var(--hair);vertical-align:top}
table.cmp th{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-weight:500;border-top:0}
table.cmp td:first-child{color:var(--dim)}
table.cmp .hi{color:var(--ink)}table.cmp .em{color:var(--ember2)}
/* the mat-framed print (same object as the homepage hero) */
.print{position:relative;background:#2a221c;padding:14px;box-shadow:0 40px 90px rgba(60,40,20,.28),0 2px 0 rgba(255,255,255,.06) inset;transform:rotate(-1deg)}
.print .mat{background:var(--mat);padding:30px 30px 24px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.print .img{position:relative;aspect-ratio:4/5;overflow:hidden;background:#120c10;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.print .img svg,.print .img video,.print .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.print .cap{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;color:#2a2521}
.print .cap .t{margin:0;font-family:'Instrument Serif',Georgia,serif;font-size:22px;line-height:1.1;color:var(--matink)}
.print .cap .s{margin:6px 0 0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6e655c}
.print .cap .studio{margin:0;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#6e655c}
.print .tag{position:relative;width:34px;height:34px;flex:0 0 auto}
.print .tag i{position:absolute;inset:0;border:2px solid var(--ember);border-radius:50%;opacity:0;transform-origin:50% 50%;animation:sbRing 6s ease-out infinite}
.print .tag i+i{animation-delay:.35s}
.print .tag b{position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--matink);background:var(--mat)}
.print .tag b:before{content:"";position:absolute;inset:7px;border-radius:50%;border:1.5px solid var(--matink)}
.print .tag b:after{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--matink)}
.print .foot{display:flex;justify-content:space-between;margin-top:14px;padding-top:10px;border-top:1px solid rgba(26,22,19,.15);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#8f857b}
.glow{position:absolute;left:50%;top:-120px;width:620px;height:620px;margin-left:-310px;border-radius:50%;background:radial-gradient(closest-side,rgba(217,120,80,.16),rgba(246,241,232,0));pointer-events:none}
figcaption{margin-top:6px;font-size:13px;color:var(--dim);text-align:center}
/* form (same as homepage) */
.sb-f{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
.sb-f label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin:0 0 8px}
.sb-f input,.sb-f select,.sb-f textarea{width:100%;box-sizing:border-box;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);font:inherit;font-size:16px}
.sb-f input:focus,.sb-f select:focus,.sb-f textarea:focus{outline:2px solid var(--ember);outline-offset:1px;border-color:var(--ember)}
.sb-f textarea{min-height:120px;resize:vertical}
.sb-f .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sb-f .full{grid-column:1/-1}
.sb-f .msg{margin:0;font-size:15px;color:var(--muted);min-height:1.4em}.sb-f .msg.err{color:#b8381a}
.sb-f button[disabled]{opacity:.6}
.inq{display:flex;flex-wrap:wrap;gap:48px 80px;align-items:start}.inq>.copy{flex:1 1 320px;min-width:0}.inq>form{flex:1 1 460px;min-width:0}
footer.foot{max-width:1240px;margin:0 auto;padding:64px 24px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;font-size:14px;color:var(--dim)}footer.foot p{margin:0}
.rise{animation:sbRise .9s cubic-bezier(.2,.7,.2,1) both}.rise2{animation-delay:.15s}.rise3{animation-delay:.3s}
@keyframes sbBeat{0%,100%{transform:scale(1)}8%{transform:scale(1.18)}16%{transform:scale(1)}24%{transform:scale(1.1)}32%{transform:scale(1)}}
@keyframes sbDraw{0%{stroke-dashoffset:1400}55%,100%{stroke-dashoffset:0}}
@keyframes sbRise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes sbRing{0%,70%{transform:scale(.4);opacity:0}74%{opacity:.9}94%,100%{transform:scale(2.8);opacity:0}}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}
@media (max-width:700px){.row h3{flex-basis:100%}.hero{padding-top:32px;gap:40px}section.sec{padding:64px 24px}.split .in{padding:80px 24px}}
/* ---- tap-to-play loop (same 12 s choreography as the homepage) ---- */
@keyframes sbPhone{0%,10%{transform:translate(140px,160px) rotate(16deg) scale(.9);opacity:0}18%,26%{transform:translate(0,0) rotate(-5deg) scale(1);opacity:1}34%,92%{transform:translate(-120px,-120px) rotate(0) scale(1.7);opacity:1}100%{transform:translate(140px,160px) rotate(16deg) scale(.9);opacity:0}}
@keyframes sbScreen{0%,28%{opacity:0}34%,92%{opacity:1}100%{opacity:0}}
@keyframes sbDim{0%,30%{opacity:0}36%,92%{opacity:.45}100%{opacity:0}}
@keyframes sbRing12{0%,20%{transform:scale(.4);opacity:0}24%{opacity:.9}44%,100%{transform:scale(2.8);opacity:0}}
@keyframes sbBar{0%,34%{transform:scaleX(0)}92%,100%{transform:scaleX(1)}}
@keyframes sbChip{0%,34%{opacity:0;transform:translateY(6px)}38%,92%{opacity:1;transform:none}100%{opacity:0}}
.print .img .dim{position:absolute;inset:0;background:var(--night);opacity:0;animation:sbDim 12s ease-in-out infinite;z-index:1}
.print .tag i{animation:sbRing12 12s ease-out infinite}
.sb-phone{position:absolute;right:-6px;bottom:54px;width:132px;height:268px;border-radius:26px;background:var(--night);padding:8px;box-sizing:border-box;box-shadow:0 30px 70px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.08);opacity:0;transform-origin:50% 100%;animation:sbPhone 12s cubic-bezier(.4,.6,.2,1) infinite;z-index:3}
.sb-phone .scr{position:relative;width:100%;height:100%;border-radius:19px;overflow:hidden;background:#15120f}
.sb-phone video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;animation:sbScreen 12s ease-in-out infinite}
.sb-phone .chip{position:absolute;left:8px;top:8px;margin:0;padding:3px 7px;border-radius:999px;background:rgba(11,10,9,.75);color:#f2ece4;font-size:6px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;animation:sbChip 12s ease-in-out infinite}
.sb-phone .track{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.18)}
.sb-phone .bar{height:100%;background:var(--ember);transform-origin:0 50%;animation:sbBar 12s linear infinite}
.sb-phone .notch{position:absolute;left:50%;top:6px;width:34px;height:5px;margin-left:-17px;border-radius:3px;background:var(--night)}
@media (prefers-reduced-motion:reduce){.sb-phone{opacity:1;transform:translate(-120px,-120px) scale(1.7)}.sb-phone video{opacity:1}.print .img .dim{opacity:.45}}

.ql{display:flex;align-items:center;gap:14px;min-width:0}
.qr{display:block;width:64px;height:64px;line-height:0;flex:0 0 auto}.qr img{width:100%;height:100%;display:block}
.try-d,.try-m{color:var(--ink);font-weight:500}.try-m{display:none}@media (pointer:coarse){.try-d{display:none}.try-m{display:inline}}
.sb-phone .scr:before{content:"Hold near the seal";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-top:44px;box-sizing:border-box;color:#f2ece4;font:600 7.5px 'Inter Tight',system-ui,sans-serif;letter-spacing:.06em;background:radial-gradient(circle at 50% 44%,#ff5a3c 0 5px,transparent 5.5px),radial-gradient(circle at 50% 44%,transparent 0 15.5px,rgba(242,236,228,.85) 16px 17.5px,transparent 18px),radial-gradient(120% 70% at 50% 32%,#3a2e25 0%,#1c1714 62%,#15120f 100%)}
.sb-phone .scr:after{content:"";position:absolute;left:50%;top:44%;width:36px;height:36px;margin:-18px 0 0 -18px;border:1.5px solid #ff5a3c;border-radius:50%;box-sizing:border-box;opacity:0;animation:sbPing 1.6s ease-out infinite}
.sb-phone .scr>*{z-index:1}
@keyframes sbPing{0%{transform:scale(1);opacity:.8}100%{transform:scale(2.1);opacity:0}}
@media (max-width:820px){header.top{padding:12px 16px;gap:8px 12px}nav.main{order:3;flex:1 0 100%;flex-wrap:nowrap;gap:18px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;font-size:14px;padding-bottom:2px}nav.main::-webkit-scrollbar{display:none}}
/* full-frame print: photo edge to edge, one small Living Seal */
.print.full{padding:12px}.print.full .img{aspect-ratio:2/3;box-shadow:none}
.print.full .over{position:absolute;z-index:2;left:6%;right:26%;bottom:5%;color:#fff8f0;text-shadow:0 1px 8px rgba(0,0,0,.7);pointer-events:none}
.print.full .over .t{margin:0;font-family:'Instrument Serif',Georgia,serif;font-size:clamp(20px,5.4vw,26px);line-height:1.05}
.print.full .over .s{margin:5px 0 0;font-size:9px;letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.print.full .seal{position:absolute;z-index:2;right:5%;bottom:4%;width:clamp(56px,9vw,68px);aspect-ratio:1;display:block;line-height:0}
.print.full .seal img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.print.full .seal i{position:absolute;inset:0;border:2px solid var(--ember);border-radius:50%;opacity:0;pointer-events:none;animation:sbRing12 12s ease-out infinite}
.print.full .seal i+i{animation-delay:.35s}
.print .img .dim{pointer-events:none}
@keyframes sbPhone{0%,10%{transform:translate(140px,160px) rotate(16deg) scale(.9);opacity:0}18%,26%{transform:translate(0,0) rotate(-5deg) scale(1);opacity:1}34%,92%{transform:translate(-34px,-118px) rotate(0) scale(1.3);opacity:1}100%{transform:translate(140px,160px) rotate(16deg) scale(.9);opacity:0}}
@keyframes sbDim{0%,30%{opacity:0}36%,92%{opacity:.22}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.sb-phone{transform:translate(-34px,-118px) scale(1.3)}.print .img .dim{opacity:.22}}
