.ob-builder{--navy:#07386d;--green:#1d6b57;--line:#d7e0e8;--soft:#f4f7f8;color:#17344f;max-width:1380px;margin:0 auto 70px}.ob-title{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:34px 40px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#fff 55%,#eef5f1)}.ob-title>div>span{font-size:13px;letter-spacing:.12em;color:var(--green);font-weight:900}.ob-title h1{font-size:36px;line-height:1.25;margin:8px 0}.ob-title p{font-size:16px;color:#617386}.title-chips{display:flex;gap:9px;flex-wrap:wrap}.title-chips b{background:#fff;border:1px solid #cadbd3;padding:11px 15px;border-radius:999px;color:#356755}.ob-errors{margin:20px 0;padding:18px 22px;border-radius:12px;background:#fff1f1;color:#a12222}.ob-steps{display:grid;grid-template-columns:repeat(5,1fr);margin:28px 0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.ob-steps span{display:flex;justify-content:center;align-items:center;gap:10px;padding:18px 8px;background:#fff;border-right:1px solid var(--line);font-weight:700}.ob-steps span:last-child{border:0}.ob-steps b,.ob-heading i{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:#e7edf2;color:var(--navy);font-style:normal}.ob-steps .active{background:#eef5fb;color:var(--navy)}.ob-steps .active b,.ob-heading i{background:var(--navy);color:#fff}.ob-form{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px}.ob-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;margin-bottom:22px;box-shadow:0 6px 24px rgba(32,55,75,.035)}.ob-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px}.ob-heading h2{font-size:22px;margin:2px 0 5px}.ob-heading p{margin:0;color:#748392}.template-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.template-card{position:relative;text-align:left;padding:0;border:2px solid #e0e6ea;border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;transition:.2s}.template-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px #17344f1b}.template-card.selected{border-color:var(--green);box-shadow:0 0 0 3px #1d6b5718}.template-card img{display:block;width:100%;height:180px;object-fit:cover;filter:saturate(.8)}.template-card span{display:block;padding:13px 12px}.template-card strong,.template-card small{display:block}.template-card small{margin-top:5px;color:#748392;line-height:1.45}.template-card em{position:absolute;right:8px;top:8px;padding:5px 8px;background:#fff;border-radius:20px;color:#71808f;font-size:11px;font-style:normal}.template-card.selected em{background:var(--green);color:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.span2{grid-column:1/-1}.field{display:block;min-width:0}.field b,.field legend{display:block;margin:0 0 9px;font-size:15px;font-weight:800}.field input,.field select,.field textarea,.family-row input,.family-row select{width:100%;min-height:56px;border:1px solid #cbd6df;border-radius:9px;background:#fff;padding:14px 16px;font-size:16px;color:#17344f;outline:none;transition:.15s}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus,.family-row input:focus,.family-row select:focus{border-color:#237b67;box-shadow:0 0 0 4px #237b6718}.field fieldset,fieldset.field{border:0;padding:0;margin:0}.segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segment input,.visibility input{position:absolute;opacity:0}.segment span{height:56px;display:flex;align-items:center;justify-content:center;border:1px solid #cbd6df;border-radius:9px;cursor:pointer;font-weight:800}.segment input:checked+span{background:var(--green);border-color:var(--green);color:#fff}.date-control{display:grid;grid-template-columns:1fr 78px;border:1px solid #cbd6df;border-radius:9px;overflow:hidden;background:#fff;cursor:pointer}.date-control input{border:0!important;border-radius:0!important;box-shadow:none!important;cursor:pointer;background:transparent}.date-control button{border:0;border-left:1px solid #d7e0e8;background:#eef5f2;color:var(--green);font-weight:900;cursor:pointer}.family-row{display:grid;grid-template-columns:180px 1fr 52px;gap:10px;margin-bottom:12px}.family-row button{border:1px solid #e0c9c9;border-radius:9px;background:#fff5f5;color:#b33;font-size:24px}.add-family{width:100%;height:52px;border:1px dashed #9bb7ab;border-radius:9px;background:#f4faf7;color:var(--green);font-weight:900;cursor:pointer}.writer{margin-top:22px}.visibility{display:grid;grid-template-columns:1fr 1fr;gap:14px}.visibility span{display:flex;flex-direction:column;gap:5px;padding:20px;border:1px solid #cbd6df;border-radius:11px;cursor:pointer}.visibility small{color:#748392}.visibility input:checked+span{border:2px solid var(--green);background:#f3faf7}.expires{display:block;margin-top:20px;max-width:520px}.consent{display:flex;align-items:flex-start;gap:12px;margin-top:24px;padding:18px;background:#f7f9fa;border-radius:10px;font-size:15px}.consent input{width:21px;height:21px}.form-actions{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.form-actions button{height:60px;border-radius:10px;font-size:17px;font-weight:900;cursor:pointer}.form-actions .secondary{background:#fff;border:1px solid var(--navy);color:var(--navy)}.form-actions .primary{border:0;background:var(--navy);color:#fff}.preview-sticky{position:sticky;top:24px;border:1px solid var(--line);border-radius:16px;background:#f7f8f6;padding:20px}.preview-label{display:flex;justify-content:space-between;margin-bottom:16px}.preview-label span{color:#7b8893}.preview-phone{border:9px solid #1f2932;border-radius:34px;background:#fff;overflow:hidden;box-shadow:0 18px 40px #1636542b}.preview-paper{position:relative;min-height:555px;background:#fff}.preview-paper>img{width:100%;height:555px;object-fit:cover;opacity:.42}.preview-paper>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;text-shadow:0 1px 4px #fff}.preview-paper strong{font-size:25px}.preview-paper p{line-height:1.8}.preview-sticky>p{font-size:12px;text-align:center;color:#778693}.ob-calendar{position:fixed;z-index:10000;width:430px;padding:20px;background:#fff;border:1px solid #c8d4dc;border-radius:16px;box-shadow:0 24px 70px #092c4c38}.cal-head{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;margin-bottom:14px}.cal-head strong{text-align:center;font-size:20px}.cal-head button{height:44px;border:0;border-radius:9px;background:#eef3f5;font-size:22px}.cal-week,.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.cal-week span{padding:9px 0;color:#778491;font-size:13px}.cal-days button{height:48px;border:0;border-radius:9px;background:#f7f9fa;font-size:15px;cursor:pointer}.cal-days button:hover,.cal-days button.today{background:#e4f2ec;color:var(--green);font-weight:900}.cal-days button.selected{background:var(--green);color:#fff}.cal-days button.blank{visibility:hidden}.cal-time{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px;padding-top:14px;border-top:1px solid #e2e7eb}.cal-time select{height:48px;border:1px solid #ccd6df;border-radius:8px;padding:0 12px}.cal-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.cal-actions button{height:48px;border-radius:8px;border:1px solid var(--navy);background:#fff;color:var(--navy);font-weight:900}.cal-actions .confirm{background:var(--navy);color:#fff}
@media(max-width:1100px){.ob-form{grid-template-columns:1fr}.ob-preview{display:none}.template-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.ob-title{display:block;padding:24px}.ob-title h1{font-size:28px}.title-chips{margin-top:18px}.ob-steps{grid-template-columns:1fr 1fr}.ob-steps span{border-bottom:1px solid var(--line)}.ob-card{padding:20px}.template-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.family-row{grid-template-columns:1fr}.visibility{grid-template-columns:1fr}.ob-calendar{left:12px!important;right:12px!important;width:auto;max-width:none}.cal-days button{height:45px}}@media(max-width:450px){.template-grid{grid-template-columns:1fr}.template-card{display:grid;grid-template-columns:110px 1fr}.template-card img{height:135px}.form-actions{grid-template-columns:1fr}}
/* Reference-style mobile obituary refinements */
.ob-builder{background:#f5f5f2;padding:26px;border-radius:22px}.ob-title{max-width:1080px;margin:0 auto;background:#202942;color:#fff;border:0;border-radius:0;text-align:center;justify-content:center;min-height:150px}.ob-title>div:first-child>span{color:#e1cf9f}.ob-title p{color:#d8dee7}.title-chips{display:none}.ob-steps{max-width:1080px;margin:20px auto 28px;background:transparent;border:0}.ob-steps span{background:transparent;border:0;position:relative;font-size:13px;color:#8b9298}.ob-steps span:not(:last-child):after{content:'';position:absolute;right:-12%;width:24%;height:1px;background:#ccd1d3}.ob-form{max-width:1080px;margin:0 auto;grid-template-columns:minmax(0,700px) 340px}.ob-card{border:0;border-radius:12px;padding:28px;box-shadow:0 4px 20px rgba(40,45,50,.08)}.template-grid{grid-template-columns:repeat(3,1fr)}.template-card img{height:285px;object-fit:contain;background:#f7f7f5;padding:12px}.template-card:nth-child(n+4){grid-column:auto}.preview-sticky{background:#fff;border:0;box-shadow:0 5px 24px rgba(38,45,50,.09)}.preview-paper>img{opacity:1}.preview-paper>div{background:rgba(255,255,255,.12);text-shadow:0 1px 8px #fff}.form-actions{position:sticky;bottom:0;z-index:30;background:#f5f5f2;padding:14px 0 4px}
@media(max-width:1100px){.ob-builder{padding:18px}.ob-form{max-width:760px}.ob-preview{display:block;order:-1}.preview-sticky{position:relative;max-width:360px;margin:0 auto 20px}.preview-phone{display:none}.preview-help{display:none}.template-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.ob-builder{padding:0;background:#f4f4f1;border-radius:0}.ob-title{margin:0 -15px;padding:25px 20px;min-height:132px}.ob-title h1{font-size:24px}.ob-title p{font-size:13px}.ob-steps{display:flex;justify-content:center}.ob-steps span{font-size:0;padding:12px 16px}.ob-steps span b{font-size:12px}.ob-card{padding:20px 16px;border-radius:10px}.template-grid{grid-template-columns:1fr 1fr}.template-card{display:block}.template-card img{height:230px}.form-actions{margin:0 -15px;padding:12px 15px;background:#fff;box-shadow:0 -5px 18px rgba(0,0,0,.08)}}
/* 2026-09-02 portal alignment and readability */
.ob-builder{max-width:100%;padding:34px 40px 54px;background:#f6f7f5;border:1px solid #e3e6e4;border-radius:20px}.ob-title,.ob-steps,.ob-form{max-width:1240px}.ob-title{min-height:164px;border-radius:14px}.ob-title h1{font-size:34px;letter-spacing:-.035em}.ob-title p{margin:10px 0 0;line-height:1.7}.ob-form{grid-template-columns:minmax(0,840px) 370px;gap:30px;align-items:start}.ob-card{padding:32px 34px;margin-bottom:24px}.ob-heading{min-height:46px}.ob-heading h2{line-height:1.35;letter-spacing:-.025em}.ob-heading p{line-height:1.65}.template-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.template-card img{height:240px;padding:8px}.template-card span{min-height:76px}.template-card strong{font-size:15px;line-height:1.4}.template-card small{font-size:12px;white-space:normal;word-break:keep-all}.field b,.field legend{line-height:1.5}.field input,.field select,.field textarea,.family-row input,.family-row select{line-height:1.5}.date-control{min-height:58px}.date-control button{font-size:14px}.preview-sticky{padding:22px}.preview-phone{width:310px;margin:0 auto}.preview-paper,.preview-paper>img{min-height:530px;height:530px}.preview-paper>img{opacity:1}.preview-paper>div{top:158px;bottom:80px;justify-content:flex-start;padding:32px 28px;background:transparent;text-shadow:none}.preview-paper strong{font-size:24px;line-height:1.45;margin-top:38px}.preview-paper p{font-size:14px;line-height:1.75;max-width:220px;margin:18px auto}.preview-paper small{display:block;margin-top:32px;font-size:12px}.form-actions{position:static;padding:0;background:transparent}.ob-calendar{font-size:15px}.cal-week span,.cal-days button{line-height:1}
@media(max-width:1280px){.ob-builder{padding:28px}.ob-form{grid-template-columns:minmax(0,760px) 340px}.template-grid{grid-template-columns:repeat(3,1fr)}.template-card img{height:270px}}
@media(max-width:1100px){.ob-builder{max-width:820px;margin-left:auto;margin-right:auto}.ob-form{grid-template-columns:1fr}.ob-preview{display:block}.preview-sticky{max-width:390px}.template-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.ob-builder{padding:0 0 28px;border:0}.ob-title{border-radius:0}.ob-card{padding:22px 18px}.template-grid{grid-template-columns:1fr 1fr}.template-card img{height:230px}.preview-sticky{display:none}.form-actions{position:sticky;padding:12px 15px}.ob-heading p{font-size:13px}.field input,.field select,.field textarea,.family-row input,.family-row select{font-size:16px}}

/* 2026-09-02 facility picker and account fields */
.facility-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px;background:#f3f7f5;border:1px solid #dce7e1;border-radius:12px;margin-bottom:10px}.facility-picker .field select{background:#fff}.picker-help{margin:0 0 22px;color:#65788a;font-size:13px}.bank-box{margin-top:26px;padding:24px;border:1px solid #d9e3dd;border-radius:13px;background:linear-gradient(135deg,#f8fbf9,#fffaf3)}.bank-box h3{margin:0 0 5px;font-size:19px}.bank-box h3 small{display:inline-block;margin-left:6px;padding:3px 8px;border-radius:20px;background:#e7eee9;color:#52705f;font-size:11px}.bank-box>div>p{margin:0 0 18px;color:#6d7b84}.bank-grid{display:grid;grid-template-columns:.8fr 1.4fr .8fr;gap:13px}.facility-picker select:disabled{background:#edf1f2;color:#8a969e}.ob-form select{appearance:auto}
@media(max-width:720px){.facility-picker,.bank-grid{grid-template-columns:1fr}.facility-picker{padding:15px}.bank-box{padding:18px}}
