@font-face{font-family:'Work Sans';src:url('assets/WorkSans.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Work Sans';src:url('assets/WorkSans-Italic.ttf') format('truetype');font-style:italic;font-weight:100 900;font-display:swap}
body,button,input,select,textarea,.wip-print,.bkk-main{font-family:'Work Sans','Helvetica Neue',Helvetica,Arial,sans-serif}
.wip-intro h1{font-weight:500;font-style:italic;letter-spacing:-.035em}.wip-brand span{font-weight:200;font-style:normal}.wip-action[data-wip="flow:trial"],.wip-action[data-wip="flow:camps"]{background:#f3e8df}.wip-action[data-wip="flow:regular"]{background:#e4f3f1}.wip-action[data-wip="flow:packages"]{background:#e4e9df}.wip-action h2,.wip-action:nth-child(3) h2{font-size:18px}.wip-actions .wip-action p{font-size:13px}
.op-addresses{display:grid;grid-template-columns:1fr 1fr;gap:30px;width:100%;flex-basis:100%;padding-top:17px;border-top:1px solid #e1e4df;margin-top:15px;color:#5a6967;line-height:1.6}.op-addresses small{font-size:10px}.op-addresses strong{font-weight:500}.wip-footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.op-terms{font-size:11px;color:#5b6c69;line-height:1.7;background:#f0f2ec;padding:18px 22px;border-radius:12px;margin-top:22px}.op-terms h3{font-size:15px;margin:0 0 8px;font-weight:500}.op-terms p{margin:0;font-size:11px}.op-line{margin-top:22px;background:#e4f3f1}.op-line h2{font-size:25px}.op-discount{padding:16px;background:#f0f6f1;border:1px solid #dce7e0;border-radius:11px;margin:5px 0 22px}.op-discount h3{margin:0 0 12px;font-size:21px}.op-discount .summary-line{font-size:13px;gap:15px}.op-discount .summary-line strong{text-align:right}.op-discount .formfield{margin-top:15px}.op-discount .small{font-size:11px;line-height:1.6}.op-back{margin:25px 0 15px}.op-combo{margin:22px 0;padding:18px;border-radius:12px;background:#e4f3f1}.op-combo h3{font-size:21px;margin:0 0 10px}.op-combo .tabs{margin:15px 0 0}.wip-camp-days [data-activity="Art"]{background:#e3f1ec;color:#184d46;border-color:#007f82}.wip-camp-days [data-activity="Architecture"]{background:#dee8fa;color:#234d75;border-color:#648ac0}.wip-camp-days [data-activity] small{font-weight:500}.op-block{padding:15px 0;border-bottom:1px solid #e2e9e1}.op-auth{max-width:480px}.op-auth h2{font-size:28px}.op-auth .tabs .btn{flex:1}.op-auth form .btn{margin:5px 7px 0 0}.op-auth .tabs{display:flex}.op-auth input:disabled{background:#edf0eb;color:#8b9994}.op-occupancy{height:156px;display:flex;gap:6px;align-items:stretch;margin:20px 0 12px;border-bottom:1px solid #d3ddda;padding-bottom:3px}.op-occupancy-column{flex:1;display:flex;min-width:0;flex-direction:column;text-align:center}.op-count{font-size:11px;color:#536e68;min-height:19px}.op-bar-space{height:110px;display:flex;align-items:end;border-bottom:1px solid #dce4df}.op-bar-space i{display:block;width:100%;background:#91c8c1;border-radius:4px 4px 0 0;min-height:0}.op-bar-space i.at-capacity{background:#007f82}.op-occupancy-column small{font-size:9px;color:#526b65;padding-top:8px}
.op-invoice{color:#5a5a5a;background:white;border:1px solid #aaa;padding:30px 34px;max-width:740px;margin:auto;font-size:13px;line-height:1.4}.op-invoice-brand{display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.op-invoice-brand h1{font-size:27px;font-weight:500;color:#111;letter-spacing:-.05em;margin:0 0 5px}.op-invoice-brand p{font-size:11px;line-height:1.4;margin:0}.op-invoice-brand img{width:115px;height:90px;object-fit:contain}.op-invoice .op-invoice-title{font-size:44px;font-weight:600;color:#79a8b2;margin:8px 0 1px;letter-spacing:-.04em}.op-invoice-date{color:#ed1688;font-weight:600;font-size:14px;margin:0 0 23px}.op-invoice-details{display:grid;grid-template-columns:1.35fr 1fr 1.25fr;gap:18px;margin:0 0 24px;font-size:12px}.op-invoice-details strong{font-weight:600;display:block;font-size:13px}.op-invoice-details p{margin:4px 0 18px;overflow-wrap:anywhere}.op-invoice-table{width:100%;border-collapse:collapse;table-layout:fixed}.op-invoice-table th{color:#79a8b2;border-top:1px solid #aaa;border-bottom:0;background:white;text-align:right;font-size:13px;font-weight:600;padding:16px 5px 12px}.op-invoice-table th:first-child{width:49%;text-align:left}.op-invoice-table th:nth-child(2){width:9%}.op-invoice-table th:nth-child(3){width:20%}.op-invoice-table td{background:#dedede;padding:12px 5px;border:0;text-align:right;vertical-align:top;font-size:12px;white-space:normal;overflow-wrap:anywhere}.op-invoice-table td:first-child{text-align:left}.op-invoice-table small{display:block;margin-top:6px;font-size:10px;color:#555}.op-invoice-validity{padding:18px 5px 5px;background:#dedede;font-size:10px;color:#111;font-weight:500}.op-invoice-totals>div{display:flex;justify-content:space-between;gap:20px;padding:5px 6px 5px 38%;font-size:12px}.op-invoice-totals .op-grand{padding-left:6px;background:#c9c9c9;border-top:1px solid #333;color:#111;font-size:13px}.op-invoice-notes{font-size:9px;line-height:1.5;margin:20px 0;color:#555}.op-invoice-notes>strong{color:#999;font-size:11px}.op-invoice-notes p{margin:5px 0}.op-total-amount{display:flex;justify-content:flex-end;gap:40px;color:#ed1688;font-size:18px;margin:20px 0 8px}.op-total-amount strong{font-weight:600}.op-invoice-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.op-invoice-actions p{flex-basis:100%;font-size:11px;margin:0}.op-invoice .btn{font-size:13px}dialog:has(.op-invoice){max-width:820px;background:white;padding:25px}
@media(max-width:650px){.op-addresses{grid-template-columns:1fr;gap:12px}.op-occupancy{gap:3px}.op-count{font-size:10px}.op-occupancy-column small{font-size:7px;writing-mode:vertical-rl;align-self:center}.op-combo .tabs{flex-direction:column}.op-invoice{padding:18px 12px}.op-invoice-brand h1{font-size:20px}.op-invoice-brand img{width:75px;height:70px}.op-invoice-details{gap:8px;font-size:10px}.op-invoice-details strong{font-size:11px}.op-invoice-table th,.op-invoice-table td{font-size:10px}.op-total-amount{font-size:16px;gap:20px}dialog:has(.op-invoice){padding:12px}.wip-action h2,.wip-action:nth-child(3) h2{font-size:15px}.wip-actions .wip-action p{font-size:11px}}
@media print{@page{size:A4 portrait;margin:12mm}body{margin:0}dialog[open]{margin:0!important;border:0!important;max-height:none!important;overflow:visible!important;padding:0!important;inset:auto!important}.op-invoice{box-sizing:border-box;width:186mm;max-width:186mm;padding:8mm 9mm;margin:0;border:1px solid #aaa;font-size:11px;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.op-invoice-brand h1{font-size:26px}.op-invoice-brand img{width:105px;height:85px}.op-invoice-title{font-size:40px!important}.op-invoice-details{font-size:11px;margin-bottom:15px}.op-invoice-table th,.op-invoice-table td{font-size:11px}.op-invoice-notes{font-size:8px;line-height:1.4}.op-invoice-details p{margin-bottom:12px}.op-total-amount{font-size:18px;margin-top:18px}.no-print{display:none!important}}

.tabs .btn:not(.secondary){background:var(--teal);color:white;border-color:var(--teal)}.tabs .btn.secondary{background:white;color:var(--teal)}

.op-registration-line{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:24px;background:#dff3eb;border:1px solid #9acabc;margin:0 0 24px}.op-registration-line .eyebrow{font-size:10px;letter-spacing:.1em;margin:0 0 7px;color:#236654}.op-registration-line h2{font-size:26px;margin:0 0 9px;font-weight:500}.op-registration-line p{font-size:14px;line-height:1.55;margin-bottom:14px}.op-registration-line strong{font-weight:600}.op-registration-line .btn{background:#007f82;color:white}.op-line-symbol{display:grid;place-items:center;background:#06a955;color:white;width:62px;height:56px;border-radius:14px;font-size:16px;font-weight:600;margin-top:8px}.catalogue-camp-card>img[src$="bkk-holiday-art.jpg"]{object-position:50% 60%}.catalogue-camp-card>img[src$="bkk-holiday-architecture.jpg"]{object-position:50% 45%}@media(max-width:650px){.op-registration-line{grid-template-columns:1fr;gap:12px;padding:20px}.op-line-symbol{width:50px;height:42px;font-size:13px;margin:0}.op-registration-line h2{font-size:23px}.op-registration-line .btn{font-size:12px;padding:11px 12px}}
