:root{--ink:#101f3a;--gold:#a88747;--cream:#faf7ef;--line:#c5cbd3}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}.page{background:linear-gradient(120deg,#fffdf8,#faf6eb);border:1px solid #c4ac7b;max-width:1060px;margin:28px auto;padding:0 24px 35px}.hero{grid-template-columns:1.05fr 1fr;min-height:390px;margin:0 -24px;display:grid;position:relative;overflow:hidden}.hero-copy{z-index:1;align-self:center;padding:48px 24px 50px 44px}.eyebrow{letter-spacing:.17em;margin:0 0 16px;font-size:12px}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.06}h1{margin:0 0 24px;font-size:clamp(36px,4.5vw,56px)}.intro{max-width:420px;font-size:20px;line-height:1.55}.portrait{object-fit:cover;object-position:center 18%;width:100%;height:430px;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 17%);mask-image:linear-gradient(90deg,#0000 0%,#000 17%)}.ornament{color:var(--gold);justify-content:center;align-items:center;gap:14px;font-size:24px;line-height:1;display:flex}.ornament span{background:var(--gold);flex:1;max-width:180px;height:1px}.form-card{z-index:2;background:#fff;border:1px solid #d6c3a0;border-radius:10px;margin-top:-22px;padding:32px 36px;position:relative}label{margin-top:25px;font-size:17px;font-weight:600;display:block}form>label:first-child{margin-top:0}.optional,.required{color:#596274;font-size:14px;font-weight:400}.help{color:#596274;margin:5px 0 10px;font-size:15px;line-height:1.5}input:not([type=checkbox]),textarea,select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:5px;padding:12px 14px}textarea{resize:vertical;min-height:140px;line-height:1.65}:is(input:focus,textarea:focus,select:focus,button:focus-visible,summary:focus-visible){outline-offset:3px;outline:3px solid #b79555}::placeholder{color:#757d87}.upload{text-align:center;background:#fbfcfd;border:1px dashed #9da8b6;border-radius:7px;padding:20px}.upload svg{margin:0 auto 8px;display:block}.choose{color:var(--ink);margin:0;font-weight:500}.upload input[type=file]{background:0 0;border:0;max-width:330px;padding:12px 0;font-size:14px}.upload .help{overflow-wrap:anywhere;margin:0}details{background:#faf6ee;border:1px solid #dfd1b8;border-radius:6px;margin:24px 0 20px}summary{cursor:pointer;padding:14px 18px;font-family:Georgia,serif;font-size:19px}.note{padding:0 20px 20px}.checkbox{align-items:flex-start;gap:12px;font-size:16px;font-weight:400;display:flex}.checkbox input{width:22px;height:22px;accent-color:var(--ink);flex:none;margin:2px 0}.privacy{color:#596274;margin:18px 0 22px;font-size:14px}.primary,.secondary{font:inherit;cursor:pointer;border-radius:6px;padding:13px 24px}.primary{background:var(--ink);color:#fff;border:1px solid var(--ink);width:100%;font-family:Georgia,serif;font-size:23px}.primary:disabled{opacity:.65;cursor:default}.secondary{border:1px solid var(--line);color:var(--ink);background:#fff;font-size:16px}.deadline{text-align:center;color:#596274;margin:14px 0 0;font-size:14px}.service{text-align:center;padding:30px 12px 5px}.service .eyebrow{margin:22px 0 10px}.service h2{margin:0 0 12px;font-size:46px}.service p{margin:4px 0}.service-time{font-family:Georgia,serif;font-size:22px}.church{font-family:Georgia,serif;font-size:24px}.error{color:#862c20;background:#fff0ed;border-left:3px solid #ad4f3e;padding:12px}.notice{background:#f4f0e6;padding:12px 16px;font-size:15px}.honeypot{position:absolute;left:-10000px}.thanks{text-align:center;max-width:600px;margin:auto;padding:30px 0}.thanks h2{font-size:36px}.thanks-mark{color:var(--gold);font-size:40px}.thanks p{margin-bottom:28px}@media (max-width:650px){body{font-size:16px}.page{border:0;margin:0;padding:0 16px 28px}.hero{grid-template-columns:1fr;min-height:0;margin:0 -16px}.hero-copy{text-align:center;padding:30px 25px 12px}.eyebrow{font-size:12px}.desktop{display:none}h1{font-size:38px}.intro{margin:16px auto;font-size:18px}.portrait{object-position:center 22%;height:275px;-webkit-mask-image:linear-gradient(#000 75%,#0000);mask-image:linear-gradient(#000 75%,#0000)}.form-card{margin-top:-20px;padding:25px 20px}.service h2{font-size:38px}.service-time{font-size:20px}summary{font-size:18px}.checkbox{font-size:15px}textarea,input,select{font-size:16px}}@media (prefers-reduced-motion:no-preference){button{transition:background .15s}button:not(:disabled):hover{filter:brightness(1.12)}}
