:root{--ink:#173d49;--gold:#97743b;--cream:#fffcf6;--pale:#eef0e9;--line:#d9ddd3;--muted:#64736f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 'Avenir Next','Segoe UI',Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}[hidden]{display:none!important}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #b58d42;outline-offset:4px}.wrap{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}.site-header{padding:22px 4.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.site-header>a:last-child{font-size:14px;text-decoration:none}.wordmark{text-decoration:none;font-weight:700;display:flex;gap:12px;align-items:center;letter-spacing:2px;font-size:15px}.wordmark>span{display:flex;flex-direction:column}.wordmark small{font-size:9px;letter-spacing:3px;color:var(--gold)}.hero{position:relative;min-height:555px;overflow:hidden;background:#f8f1df;display:flex;align-items:center}.hero-art{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center top}.hero-copy{position:relative;padding:70px 6%;max-width:760px;background:linear-gradient(90deg,rgba(255,252,246,.92),rgba(255,252,246,.55) 74%,transparent)}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;color:var(--gold);margin:0 0 18px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h1{font-size:clamp(44px,4.6vw,66px);margin-bottom:24px;letter-spacing:-1.8px}h1 em{font-weight:400}h2{font-size:35px;margin-bottom:20px}h3{font-size:18px;line-height:1.35}.hero-copy>p:not(.eyebrow){max-width:445px;font-size:17px;margin-bottom:30px}.button{display:inline-flex;gap:22px;justify-content:center;align-items:center;padding:15px 23px;border-radius:5px;border:1px solid var(--ink);background:var(--ink);color:white;text-decoration:none;font-size:14px;font-weight:600;cursor:pointer}.button:hover{background:#275564}.button:disabled{opacity:.65;cursor:wait}.director{display:flex;gap:30px;align-items:center;margin-top:40px;margin-bottom:64px}.director img{width:104px;height:122px;object-fit:cover;border-radius:4px;border:1px solid #cdbb98;padding:4px}.director .eyebrow{margin-bottom:8px}.director h2{font-size:28px;margin-bottom:10px}.director p:last-child{margin:0;max-width:820px;font-size:14px}.registration-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:64px;align-items:start}.trip-details{font-size:14px}.trip-details h2{font-size:36px}.rates{margin:26px 0 12px}.rates>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.rates strong{font-size:20px}.small,.hint,.privacy{font-size:12px;color:var(--muted)}.trip-details h3{margin-top:30px;margin-bottom:14px}.timeline{list-style:none;padding:0 0 0 15px;border-left:1px solid #ccb78f;margin:22px 0}.timeline li{position:relative;padding:0 0 22px 10px}.timeline li:before{content:'';position:absolute;left:-20px;top:7px;width:8px;height:8px;background:var(--gold);border-radius:50%}.timeline li strong,.timeline li span{display:block}.timeline li span{font-size:13px;color:var(--muted);margin-top:5px}.flight-note{background:var(--ink);color:var(--cream);padding:26px;border-radius:6px;margin:34px 0 20px}.flight-note .eyebrow{color:#e8cea1;font-size:9px}.flight-note h3{margin-top:0}.flight-note>strong{font-size:12px;color:#e8cea1}.flight-note p{font-size:13px}.flight-note .small{color:#d5ddd8;font-size:11px;margin-bottom:0}.extras summary{cursor:pointer;font-weight:600}.extras p{font-size:13px;margin-top:12px}.form-card{background:white;border:1px solid var(--line);border-radius:10px;padding:36px;box-shadow:0 14px 60px #183d4c06}.form-card h2{font-size:35px;margin-bottom:15px}.intro{font-size:13px;color:var(--muted);margin-bottom:30px}fieldset{border:0;margin:0 0 30px;padding:0}legend{font-weight:700;font-size:16px;margin-bottom:19px;width:100%;border-top:1px solid var(--line);padding-top:22px}legend span{color:var(--gold);font-size:12px;margin-right:12px}label{display:block;font-size:12px;font-weight:600;margin-bottom:17px}label>span{color:var(--gold)}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #cfd6d0;border-radius:4px;background:#fffefb;color:var(--ink);margin-top:6px;font-size:14px;min-height:45px}input::placeholder,textarea::placeholder{color:#91a09a;font-size:13px}textarea{resize:vertical}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.traveler{padding:17px 16px 0;background:#f5f6f1;border-radius:5px;margin-bottom:12px}.traveler-head{display:flex;justify-content:space-between;font-size:12px;margin-bottom:12px}.remove{background:none;border:0;color:#8a5348;text-decoration:underline;cursor:pointer;font-size:11px}.add-person{width:100%;padding:12px;background:transparent;border:1px dashed #afbcaf;border-radius:4px;color:var(--ink);cursor:pointer;font-size:13px}.add-person:disabled{opacity:.5;cursor:default}.hint{margin:8px 0 17px}.check{display:flex;gap:12px;align-items:flex-start;font-weight:400;line-height:1.6;margin-bottom:17px}.check input{width:18px;height:18px;flex-shrink:0;margin:2px 0 0;accent-color:var(--ink)}.check span{color:var(--ink)}.submit{width:100%}.privacy{text-align:center;margin:14px 0 0;font-size:11px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{padding:12px;color:#8e332d;background:#fff0ed;border:1px solid #e9b9af;font-size:13px}.success{text-align:center;padding:22px 0}.success h3{font:32px Georgia,serif}.success-icon{width:60px;height:60px;background:var(--pale);border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;font-size:28px}.reference{font:24px monospace;letter-spacing:3px;padding:15px;border:1px dashed var(--gold);margin:20px 0}.success p{font-size:14px}.contact-band{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:80px;margin-bottom:60px;padding-top:38px;border-top:1px solid var(--line)}.contact-band h2{font-size:31px}.contact-band p:last-child{font-size:13px;margin-bottom:0}.contact-band .eyebrow{margin-bottom:12px}footer{display:flex;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.admin{max-width:1100px;padding:40px 25px;margin:auto}.admin h1{font-size:48px}.admin-heading{display:flex;align-items:center;justify-content:space-between;margin-top:35px}.record{border:1px solid var(--line);background:white;padding:20px;margin:15px 0;border-radius:6px}.record summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px}.record summary span{font-size:12px;color:var(--muted)}.record p{margin-top:15px}.notes{white-space:pre-wrap}.empty{margin:40px 0;background:var(--pale);padding:35px}.muted{color:var(--muted)}@media(max-width:900px){.registration-layout{grid-template-columns:1fr;gap:32px}.hero-copy{max-width:85%;padding-left:6%}.hero-art{object-position:65% top}.director{margin-bottom:40px}.form-card{padding:30px}.contact-band{flex-direction:column;align-items:flex-start}.trip-details h2 br{display:none}.flight-note{margin-top:20px}}@media(max-width:560px){.wrap{padding-left:20px;padding-right:20px}.site-header{padding:16px 20px}.site-header>a:last-child{font-size:11px}.wordmark{font-size:11px;gap:6px}.wordmark small{font-size:8px}.hero{min-height:580px;align-items:flex-end}.hero-art{object-position:67% top}.hero-copy{padding:42px 24px;max-width:100%;background:linear-gradient(0deg,var(--cream) 15%,#fffcf6e8 70%,#fffcf66b)}h1{font-size:43px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-copy .eyebrow{font-size:9px}.director{align-items:flex-start;gap:17px;margin-top:30px}.director img{width:72px;height:88px}.director h2{font-size:25px}.director p:last-child{font-size:12px}.director .eyebrow{font-size:8px;letter-spacing:1px}.form-card{padding:24px 18px}.registration-layout{padding-left:14px;padding-right:14px}.trip-details{padding:0 8px}.field-grid{grid-template-columns:1fr;gap:0}h2,.form-card h2{font-size:30px}.contact-band{margin-top:48px;margin-bottom:40px}.button{font-size:12px}.record summary,.admin-heading{display:block}.record summary span{display:block}.admin h1{font-size:36px}footer{font-size:9px}.check{font-size:12px}}

.room-choice{background:#f5f6f1;border:1px solid var(--line);border-radius:6px;padding:16px 16px 2px;margin-bottom:12px}.room-choice .traveler-head{margin-bottom:8px}.room-choice label{margin-bottom:13px}.room-choice .remove{font-size:12px}.room-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.room-stat{background:white;border:1px solid var(--line);padding:15px;border-radius:7px}.room-stat strong{display:block;font-size:27px}.room-stat small{display:block;font-size:12px;color:var(--muted)}.floor-block{border:1px solid var(--line);padding:15px;background:white;margin:16px 0;border-radius:7px}.room-tile-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}.room-tile{padding:12px;border:1px solid var(--line);border-radius:5px;background:#fff}.room-tile.assigned{background:#f3f2ed;border-color:#c6d0cb}.room-tile b{display:block}.room-tile small{display:block;color:var(--muted);font-size:11px}.room-tile .reserved{font-size:12px;margin-top:8px;color:#6c583d}.assign-form{padding:18px;border-radius:6px;border:1px solid var(--line);background:#f7f8f3;margin-top:18px}.assign-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}.assign-form label{margin-bottom:0}.assign-form button{margin-top:13px}.admin-message{padding:13px;background:#f0f5ec;border:1px solid #cddfca;margin:15px 0}.admin-error{background:#ffefed;border-color:#efb3ac}.room-request-list{margin:10px 0 2px;padding-left:23px}.admin-heading{gap:18px;flex-wrap:wrap}@media(max-width:650px){.room-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Organizer room dashboard v2 */
.admin .organizer-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.admin .organizer-topbar form{margin:0}
.admin .room-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0 30px}
.admin .room-stat{background:#fff;border:1px solid #deded5;border-radius:12px;padding:20px 22px}
.admin .room-stat strong{font-size:34px;line-height:1.1;display:block;color:#163d48}
.admin .room-stat small{display:block;margin-top:8px;color:#607271;font-size:13px}
.admin .floor-block{border:1px solid #deded5;border-radius:16px;background:#fff;padding:24px;margin:22px 0}
.admin .floor-block h3{margin:0 0 17px;font-size:23px}
.admin .room-tile-wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.admin .room-tile{background:#fff;border:1px solid #e0e4df;border-radius:12px;padding:16px 18px;min-width:0}
.admin .room-tile.assigned{background:#f7f3ed;border-color:#d9b77d}
.admin .room-tile-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.admin .room-tile-head b{font-size:17px;color:#153f4d}
.admin .room-bed-type{color:#516763;font-size:13px;margin-top:11px}
.admin .room-status{display:inline-flex;align-items:center;border-radius:99px;padding:5px 10px;font-size:11px;font-weight:750}
.admin .room-status.is-available{background:#e9f3e9;color:#28644b}
.admin .room-status.is-assigned{background:#f0e4ce;color:#7c541d}
.admin .room-assignment-id{margin-top:12px;font-size:12px;color:#6e5d47;overflow-wrap:anywhere}
.admin .assign-form{padding:20px;border-radius:12px}
.admin .assign-grid{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
@media(max-width:920px){.admin .room-tile-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}.admin .room-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.admin .room-tile-wrap{grid-template-columns:1fr}.admin .floor-block{padding:16px}.admin .room-stat{padding:16px}.admin .organizer-topbar{align-items:flex-start}.admin .room-summary{gap:9px}}

/* Payment ledger in organizer dashboard */
.admin .payment-panel{background:#fafbf9;border:1px solid #e1e4db;border-radius:14px;padding:21px;margin:26px 0}
.admin .payment-panel h3{margin:0 0 6px}
.admin .payment-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.admin .payment-metrics>div{background:white;border:1px solid #e5e7df;border-radius:10px;padding:13px}
.admin .payment-metrics strong{display:block;font-size:20px;color:#153f4d}
.admin .payment-metrics small{display:block;font-size:12px;margin-top:5px;color:#677b78}
.admin .payment-entry{border-top:1px solid #e1e4db;margin-top:20px;padding-top:18px}
.admin .payment-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.admin .payment-entry label{display:block;font-weight:650;font-size:13px;margin:0 0 12px}
.admin .payment-entry input,.admin .payment-entry select{width:100%;display:block;margin:7px 0 0;border:1px solid #cbd6d1;border-radius:8px;padding:11px;min-width:0;background:#fff;color:#183c48}
.admin .payment-table{width:100%;border-collapse:collapse;font-size:13px;display:table}
.admin .payment-table th,.admin .payment-table td{padding:10px;border-bottom:1px solid #e2e6e1;text-align:left;overflow-wrap:anywhere}
.admin .payment-notice{color:#89511b;font-weight:600}
@media(max-width:980px){.admin .payment-metrics,.admin .payment-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin .payment-metrics,.admin .payment-fields{grid-template-columns:1fr}.admin .payment-table{display:block;overflow-x:auto;white-space:nowrap}.admin .payment-panel{padding:14px}}

/* Payment metrics and corrections v2 */
.admin .payment-metric{border-top:4px solid #1b4756!important}
.admin .payment-metric.deposit{border-top-color:#c89c48!important}
.admin .payment-metric.received{border-top-color:#388763!important;background:#f3faf4}
.admin .payment-metric.received strong{color:#27714e}
.admin .payment-metric.remaining{border-top-color:#cb8a45!important;background:#fffbf4}
.admin .payment-metric.remaining strong{color:#985b24}
.admin .payment-metric.remaining.fully-paid{border-top-color:#388763!important;background:#f3faf4}
.admin .payment-metric.remaining.fully-paid strong{color:#27714e}
.admin .payment-transfer-note{color:#50696a;font-size:13px}
.admin .payment-table td{vertical-align:top}
.admin .payment-table .voided-payment{color:#8a9590;background:#f7f7f4}
.admin .payment-void-label{font-size:12px;color:#86574d;font-weight:700}
.admin .payment-void-note{font-size:12px;color:#86574d}
.admin .payment-edit{min-width:160px;margin-bottom:6px;border:1px solid #dce1dc;border-radius:7px;padding:5px 8px;background:#fff}
.admin .payment-edit summary{font-weight:700;cursor:pointer}
.admin .payment-edit form{padding-top:10px}
.admin .payment-edit label{display:block;margin-bottom:9px;font-size:12px}
.admin .payment-edit input,.admin .payment-edit select{width:100%;padding:7px;margin-top:4px;min-height:34px}
.admin .payment-edit .button{padding:9px 12px;font-size:12px;white-space:normal}
.admin .payment-edit .payment-void-button{background:#875b50}
.admin .payment-history{font-size:12px;margin-top:8px}
@media(max-width:740px){.admin .payment-edit{min-width:130px}}

/* Responsive payment history and protected test archive */
.admin .payment-table-responsive{width:100%;table-layout:auto;font-size:13px}
.admin .payment-table-responsive th,.admin .payment-table-responsive td{overflow-wrap:normal;word-break:normal;white-space:normal;vertical-align:top;padding:12px 9px}
.admin .payment-table-responsive th:nth-child(1){width:13%}
.admin .payment-table-responsive th:nth-child(2){width:13%}
.admin .payment-table-responsive th:nth-child(3){width:11%}
.admin .payment-table-responsive th:nth-child(4){width:12%}
.admin .payment-table-responsive th:nth-child(5){width:32%}
.admin .payment-table-responsive th:nth-child(6){width:19%}
.admin .payment-table-responsive th{white-space:nowrap;font-size:12px}
.admin .payment-table-responsive .payment-edit{min-width:0;width:100%;box-sizing:border-box}
.admin .payment-table-responsive td:nth-child(4){white-space:nowrap}
.admin .test-archive{margin-top:20px;border-top:1px solid #e3e5df;padding-top:14px}
.admin .test-archive summary{cursor:pointer;font-weight:700;color:#7a5340}
.admin .test-archive form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding-top:10px}
.admin .test-archive label{display:grid;gap:6px;font-size:13px}
.admin .test-archive input{padding:10px;border:1px solid #cbd6d1;border-radius:8px}
.admin .archived-tests{border:1px solid #d9dfd9;border-radius:12px;padding:17px;margin:25px 0;background:#fff}
.admin .archived-tests>summary{cursor:pointer;font-weight:700}
.admin .archived-test-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e4e8e1}
.admin .archived-test-row .button{padding:8px 14px}
@media(max-width:900px){
.admin .payment-table-responsive,.admin .payment-table-responsive tbody,.admin .payment-table-responsive tr,.admin .payment-table-responsive td{display:block;width:100%;box-sizing:border-box}
.admin .payment-table-responsive thead{display:none}
.admin .payment-table-responsive tr{border:1px solid #dfe5dd;border-radius:12px;margin:12px 0;padding:10px 14px;background:#fff}
.admin .payment-table-responsive tr.voided-payment{background:#f7f7f4}
.admin .payment-table-responsive td{display:grid;grid-template-columns:minmax(100px,34%) minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #eef1ed;white-space:normal!important;overflow-wrap:anywhere}
.admin .payment-table-responsive td:last-child{border:0}
.admin .payment-table-responsive td::before{content:attr(data-label);font-size:12px;font-weight:700;color:#61736f}
.admin .payment-table-responsive .payment-edit{max-width:350px}
}
@media(max-width:480px){.admin .payment-table-responsive td{grid-template-columns:95px minmax(0,1fr)}}

/* Registration overview — visual only; does not affect room, payment or archive forms */
.admin .record > .registration-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 24px}
.admin .registration-contact{display:flex;flex-direction:column;gap:3px;min-width:0}
.admin .registration-contact-label{font-size:10px;letter-spacing:.14em;font-weight:800;color:#9a773f}
.admin .registration-contact strong{font-size:clamp(21px,2vw,27px);line-height:1.25;color:#153e4b}
.admin .registration-summary-sub{font-size:13px;color:#6c7975;font-weight:400}
.admin .registration-summary-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;color:#647570;font-size:12px;font-weight:400}
.admin .registration-overview{padding:8px 24px 4px}
.admin .registration-contact-details{display:flex;gap:10px 24px;flex-wrap:wrap;color:#50666c;font-size:14px;margin:0 0 22px;overflow-wrap:anywhere}
.admin .registration-contact-details a{text-decoration:underline;text-underline-offset:3px}
.admin .registration-overview-section{margin:0 0 24px}
.admin .registration-overview-section h3{font-size:19px;margin:0 0 12px;color:#173e4b}
.admin .registration-section-count{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;font-size:12px;font-weight:750;border-radius:99px;background:#edf1ef;color:#526b64;min-width:24px;padding:3px 8px;margin-left:6px}
.admin .participant-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.admin .participant-list li{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid #e3e7e3;border-radius:10px;padding:13px 16px;margin:0;min-width:0}
.admin .participant-list li strong{font-size:15px;color:#153e4b;overflow-wrap:anywhere}
.admin .participant-list li span{font-size:12px;color:#697b77}
.admin .registration-room-requests{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:11px}
.admin .registration-room-request{border:1px solid #dedfda;background:#fff;border-radius:12px;padding:15px 17px;min-width:0}
.admin .registration-request-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.admin .registration-request-top strong{font-size:14px;color:#163c49}
.admin .registration-room-tag{border-radius:99px;padding:4px 9px;font-size:11px;font-weight:750}
.admin .registration-room-tag.pending{background:#f8eedc;color:#815e2a}
.admin .registration-room-tag.assigned{background:#e8f3eb;color:#28644b}
.admin .registration-request-bed{font-size:15px;color:#173e4b;font-weight:650;margin-top:12px}
.admin .registration-request-assignment{font-size:12px;color:#647571;margin-top:6px}
@media(max-width:640px){.admin .record > .registration-summary{padding:17px}.admin .registration-summary-meta{align-items:flex-start}.admin .registration-overview{padding:7px 14px}.admin .participant-list{grid-template-columns:1fr}}

/* Contact details beside primary contact in registration heading */
.admin .registration-summary-right{display:flex;flex-direction:column;gap:12px;align-items:flex-end;min-width:0;max-width:56%}
.admin .registration-summary-contact-lines{display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:100%}
.admin .registration-summary-contact-lines>span{display:flex;gap:12px;align-items:baseline;justify-content:flex-end;max-width:100%;font-size:14px;color:#173f4b;overflow-wrap:anywhere;word-break:break-word;text-align:right}
.admin .registration-contact-kind{font-size:10px;font-weight:800;letter-spacing:.08em;color:#9a773f;white-space:nowrap}
@media(max-width:700px){.admin .record>.registration-summary{display:flex;flex-direction:column;align-items:flex-start}.admin .registration-summary-right{max-width:100%;align-items:flex-start;width:100%}.admin .registration-summary-contact-lines{align-items:flex-start}.admin .registration-summary-contact-lines>span{text-align:left;justify-content:flex-start}.admin .registration-summary-meta{align-items:flex-start}}

/* Registration contact header v3: three equal-intent columns */
.admin .record > summary.registration-summary.registration-summary-three {
 display:grid; grid-template-columns:minmax(175px,1fr) minmax(240px,1.3fr) minmax(180px,1fr);
 align-items:center; column-gap:30px; row-gap:12px;
}
.admin .registration-summary-three .registration-summary-contact-lines {
 display:flex; flex-direction:column; align-items:flex-start; justify-self:center;
 gap:10px; min-width:0; max-width:100%;
}
.admin .registration-summary-three .registration-contact-entry {
 display:flex; flex-direction:column; gap:3px; align-items:flex-start;
 min-width:0; text-align:left; overflow-wrap:anywhere;
}
.admin .registration-summary-three .registration-contact-kind {font-size:10px;line-height:1.4}
.admin .registration-summary-three .registration-contact-entry>span:last-child {font-size:14px;line-height:1.4;color:#173f4b}
.admin .registration-summary-three .registration-summary-meta {justify-self:end;text-align:right;align-items:flex-end;min-width:0}
@media (max-width:760px) {
 .admin .record > summary.registration-summary.registration-summary-three {grid-template-columns:minmax(0,1fr);row-gap:16px;}
 .admin .registration-summary-three .registration-summary-contact-lines {justify-self:start;align-items:flex-start;}
 .admin .registration-summary-three .registration-summary-meta {justify-self:start;text-align:left;align-items:flex-start;}
}

/* Contact header: phone and email side by side on wider screens. */
.admin .record > summary.registration-summary.registration-summary-three {
  grid-template-columns:minmax(170px,1fr) minmax(0,2.3fr) max-content;
  column-gap:24px;
}
.admin .registration-summary-three .registration-summary-contact-lines {
  display:grid; grid-template-columns:minmax(145px,.8fr) minmax(0,1.3fr);
  align-items:start; justify-self:stretch;
  width:100%; max-width:none; gap:20px;
}
.admin .registration-summary-three .registration-contact-entry {
  display:flex; flex-direction:column; align-items:flex-start;
  gap:4px; width:100%; text-align:left;
}
.admin .registration-summary-three .registration-contact-kind {
  display:block; font-size:12px; font-weight:800; letter-spacing:.075em;
  color:#95723a; line-height:1.4;
}
.admin .registration-summary-three .registration-contact-entry > span:last-child,
.admin .registration-summary-three .registration-contact-entry a {
  display:block; font-size:18px; line-height:1.42; font-weight:650;
  color:#153e4b; overflow-wrap:anywhere; word-break:normal;
  text-align:left; text-decoration:none;
}
.admin .registration-summary-three .registration-contact-entry a:hover {text-decoration:underline;}
@media (min-width:761px) and (max-width:1000px) {
  .admin .record > summary.registration-summary.registration-summary-three {
    grid-template-columns:minmax(170px,1fr) minmax(0,2.3fr);
  }
  .admin .registration-summary-three .registration-summary-meta {
    grid-column:1 / -1; flex-direction:row; flex-wrap:wrap;
    gap:6px 18px; justify-self:start; text-align:left; align-items:flex-start;
  }
}
@media (max-width:760px) {
  .admin .record > summary.registration-summary.registration-summary-three {
    grid-template-columns:minmax(0,1fr);
  }
  .admin .registration-summary-three .registration-summary-contact-lines {
    justify-self:start; max-width:100%;
  }
}
@media (max-width:600px) {
  .admin .registration-summary-three .registration-summary-contact-lines {
    grid-template-columns:minmax(0,1fr); gap:15px;
  }
}

/* Payment reminder settings, schedule and delivery history. */
.reminder-overview{margin:24px 0;padding:0;border:1px solid #cfdcd5;border-radius:14px;background:#f5f8f4;color:#193f49}.reminder-overview>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;font-weight:700}.reminder-overview>summary:before{content:'+';font-size:20px}.reminder-overview[open]>summary:before{content:'−'}.reminder-overview>summary>span:first-child{flex:1}.reminder-content{padding:0 22px 18px}.reminder-content>p{margin:0 0 14px}.reminder-dates{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.reminder-dates>div{display:grid;gap:8px;padding:16px;background:#fff;border:1px solid #dae4dc;border-radius:10px}.reminder-dates span{font-size:14px}.reminder-badge{display:inline-block;flex:none;padding:5px 10px;border-radius:20px;background:#e3eee1;color:#2d573b;font-size:12px;font-weight:700}.reminder-paused{background:#f7e9ca;color:#70551c}.reminder-record{border-top:1px solid #dce3dd;margin-top:22px;padding-top:20px}.reminder-record-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.reminder-record h4{margin:0;font-size:16px}.reminder-record .hint{margin:10px 0}.reminder-toggle{border:1px solid #b9cac0;background:white;color:#234d43;padding:9px 13px;border-radius:7px;font:inherit;font-size:13px;cursor:pointer}.reminder-toggle:hover{background:#eef4eb}.reminder-toggle:focus-visible,.reminder-overview>summary:focus-visible{outline:3px solid #b89b61;outline-offset:3px}.reminder-history-details{margin-top:14px;font-size:13px}.reminder-history-details>summary{cursor:pointer;padding:7px 0}.reminder-history{list-style:none;padding:0;margin:12px 0}.reminder-history li{display:grid;gap:5px;padding:10px 0;border-bottom:1px solid #dce3dd}.reminder-history span{font-size:12px;color:#647169}@media(max-width:650px){.reminder-dates{grid-template-columns:1fr}.reminder-overview>summary{padding:16px}.reminder-content{padding:0 16px 16px}.reminder-toggle{width:100%}}

/* Explicit total includes the contact person only when traveling. */
.traveler-total{background:#eaf2eb;border:1px solid #c7d8ca;border-left:4px solid #3d6953;border-radius:8px;padding:14px 16px;margin:18px 0;color:#234b3d;font-size:17px;font-weight:700}.traveler[data-contact="true"]{border:1px solid #c5d6c7}.traveler[data-contact="true"] .person-name[readonly]{background:#f3f5ef;color:#27413a}.contact-traveling{margin:12px 0}.contact-traveling strong{color:#173e48}
