/* ─── Osprey House Booking — Frontend Styles ─────────────────────────────── */
:root {
    --ohb-navy:    #1a3c5e;
    --ohb-teal:    #2a9d8f;
    --ohb-gold:    #c9a84c;
    --ohb-light:   #f7f5f2;
    --ohb-border:  #e0ddd8;
    --ohb-text:    #2c2c2c;
    --ohb-muted:   #777;
    --ohb-red:     #e63946;
    --ohb-green:   #2d6a4f;
    --ohb-radius:  10px;
    --ohb-shadow:  0 4px 24px rgba(26,60,94,.10);
}

.ohb-booking-widget *, .ohb-booking-widget *::before, .ohb-booking-widget *::after { box-sizing:border-box; }
.ohb-booking-widget {
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',sans-serif;
    color:var(--ohb-text);
    max-width:860px;
    margin:0 auto;
    padding:0;
}

/* ── Steps ── */
.ohb-steps { display:flex; align-items:center; justify-content:center; margin-bottom:36px; padding:24px 0; }
.ohb-step { display:flex; flex-direction:column; align-items:center; gap:6px; flex-shrink:0; }
.ohb-step-num { width:36px; height:36px; border-radius:50%; background:#d8d4ce; color:#fff; display:flex; align-items:center; justify-content:center; font-size:15px; font-weight:600; transition:background .3s; }
.ohb-step-label { font-size:12px; font-weight:500; color:var(--ohb-muted); text-align:center; white-space:nowrap; transition:color .3s; }
.ohb-step.ohb-step-active .ohb-step-num { background:var(--ohb-navy); }
.ohb-step.ohb-step-active .ohb-step-label { color:var(--ohb-navy); font-weight:600; }
.ohb-step.ohb-step-done .ohb-step-num { background:var(--ohb-teal); }
.ohb-step-line { flex:1; height:2px; background:#e0ddd8; max-width:80px; margin:0 8px; position:relative; top:-12px; }

/* ── Panels ── */
.ohb-step-panel { animation:ohbFadeIn .3s ease; }
@keyframes ohbFadeIn { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.ohb-panel-title { font-size:22px; font-weight:600; color:var(--ohb-navy); margin:0 0 24px; letter-spacing:-.3px; }

/* ── Type Tabs ── */
.ohb-service-type-tabs { display:flex; gap:8px; margin-bottom:24px; flex-wrap:wrap; }
.ohb-type-tab { padding:10px 20px; border-radius:30px; border:2px solid var(--ohb-border); background:#fff; font-size:14px; font-weight:500; cursor:pointer; transition:all .2s; color:var(--ohb-text); }
.ohb-type-tab:hover { border-color:var(--ohb-navy); color:var(--ohb-navy); }
.ohb-type-tab.ohb-type-active { background:var(--ohb-navy); color:#fff; border-color:var(--ohb-navy); }

/* ── Service Cards ── */
#ohb-services-container { min-height:120px; }
.ohb-services-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:16px; }
@media(max-width:560px){ .ohb-services-list { grid-template-columns:1fr; } }

/* ── Single Service: full-width always-expanded layout ── */
.ohb-services-list.ohb-single-service {
    grid-template-columns:1fr;
}
.ohb-services-list.ohb-single-service .ohb-service-item {
    cursor:default;
    display:grid;
    grid-template-columns:300px 1fr 340px;
    grid-template-rows:auto;
    border-color:var(--ohb-teal);
    box-shadow:0 0 0 3px rgba(42,157,143,.12), var(--ohb-shadow);
    border-radius:var(--ohb-radius);
}
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-img {
    height:100%;
    min-height:240px;
    grid-column:1;
    grid-row:1;
    border-radius:var(--ohb-radius) 0 0 var(--ohb-radius);
}
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-body {
    padding:24px;
    grid-column:2;
    grid-row:1;
}
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-name { font-size:20px; margin-bottom:10px; }
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-desc { -webkit-line-clamp:5; font-size:13px; margin-bottom:16px; }
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-price { font-size:22px; }
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-service-config {
    display:block !important;
    animation:none;
    border-top:none;
    border-left:1.5px solid var(--ohb-border);
    grid-column:3;
    grid-row:1;
    padding:24px;
    background:var(--ohb-light);
    border-radius:0 var(--ohb-radius) var(--ohb-radius) 0;
    margin-top:0;
}
.ohb-services-list.ohb-single-service .ohb-service-item .ohb-selected-mark {
    display:flex !important;
}

@media(max-width:900px){
    .ohb-services-list.ohb-single-service .ohb-service-item {
        grid-template-columns:220px 1fr;
    }
    .ohb-services-list.ohb-single-service .ohb-service-item .ohb-service-config {
        grid-column:1 / span 2;
        grid-row:2;
        border-left:none;
        border-top:1.5px solid var(--ohb-border);
        border-radius:0 0 var(--ohb-radius) var(--ohb-radius);
    }
    .ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-img {
        min-height:200px;
        border-radius:var(--ohb-radius) 0 0 0;
    }
}

@media(max-width:600px){
    .ohb-services-list.ohb-single-service .ohb-service-item {
        grid-template-columns:1fr;
    }
    .ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-img {
        height:200px;
        min-height:unset;
        border-radius:var(--ohb-radius) var(--ohb-radius) 0 0;
    }
    .ohb-services-list.ohb-single-service .ohb-service-item .ohb-si-body {
        grid-column:1;
        grid-row:2;
        padding:16px;
    }
    .ohb-services-list.ohb-single-service .ohb-service-item .ohb-service-config {
        grid-column:1;
        grid-row:3;
        border-radius:0 0 var(--ohb-radius) var(--ohb-radius);
    }
}

.ohb-service-item { background:#fff; border:2px solid var(--ohb-border); border-radius:var(--ohb-radius); overflow:hidden; cursor:pointer; transition:all .25s; position:relative; }
.ohb-service-item:hover { border-color:var(--ohb-navy); box-shadow:var(--ohb-shadow); }
.ohb-service-item.ohb-selected { border-color:var(--ohb-teal); box-shadow:0 0 0 3px rgba(42,157,143,.15); }
.ohb-service-item .ohb-selected-mark { position:absolute; top:10px; right:10px; background:var(--ohb-teal); color:#fff; border-radius:50%; width:26px; height:26px; display:flex; align-items:center; justify-content:center; font-size:14px; z-index:2; }
.ohb-si-img { height:150px; overflow:hidden; background:#f0ece6; }
.ohb-si-img img { width:100%; height:100%; object-fit:cover; }
.ohb-si-img-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:40px; }
.ohb-si-body { padding:14px 16px; }
.ohb-si-type { display:inline-block; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.8px; padding:2px 8px; border-radius:12px; margin-bottom:6px; }
.ohb-si-type-charter { background:#e8f4f8; color:#1a5276; }
.ohb-si-type-room    { background:#e8f8f0; color:#1a5c36; }
.ohb-si-type-taxi    { background:#fef9e7; color:#7d6608; }
.ohb-si-name { font-size:15px; font-weight:600; margin:0 0 4px; color:var(--ohb-navy); }
.ohb-si-desc { font-size:12px; color:var(--ohb-muted); margin:0 0 10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ohb-si-price { font-size:16px; font-weight:700; color:var(--ohb-navy); }
.ohb-si-price-sub { font-size:11px; font-weight:400; color:var(--ohb-muted); }

/* ── Date/Time Config (inside cards) ── */
.ohb-service-config { padding:0 16px 14px; border-top:1px solid var(--ohb-border); margin-top:10px; display:none; }
.ohb-service-item.ohb-selected .ohb-service-config { display:block; animation:ohbFadeIn .25s; }
.ohb-config-section-title {
    font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.6px;
    color:var(--ohb-navy); margin-bottom:10px; padding-bottom:8px;
    border-bottom:1.5px solid var(--ohb-border);
}
.ohb-config-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
.ohb-config-field { display:flex; flex-direction:column; gap:5px; }
.ohb-config-field label {
    font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.6px;
    color:var(--ohb-muted); display:flex; align-items:center; gap:5px;
}
.ohb-config-field input, .ohb-config-field select {
    padding:0 36px 0 12px;
    height:44px;
    line-height:44px;
    box-sizing:border-box;
    -webkit-appearance:none;
    appearance:none;
    border:1.5px solid var(--ohb-border);
    border-radius:8px;
    font-size:13px;
    background:#fff;
    width:100%;
    cursor:pointer;
    color:var(--ohb-text);
    font-family:inherit;
    transition:border-color .2s, box-shadow .2s;
}
.ohb-config-field input:focus, .ohb-config-field select:focus {
    border-color:var(--ohb-navy);
    outline:none;
    box-shadow:0 0 0 3px rgba(26,60,94,.08);
}
/* Flatpickr input override — remove default browser date icon, keep our styling */
.ohb-config-field input.flatpickr-input {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 15px;
    padding-right: 34px;
    height:44px;
    line-height:44px;
    cursor: pointer;
}
.ohb-config-field input.flatpickr-input:read-only { background-color:#fff; }

.ohb-config-field.ohb-full-config { grid-column:span 2; }
.ohb-addon-check { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 0; border-bottom:1px solid var(--ohb-border); cursor:pointer; }
.ohb-addon-check:last-child { border:none; }
.ohb-addon-check label { display:flex; align-items:center; gap:8px; cursor:pointer; font-size:13px; flex:1; }
.ohb-addon-check input[type=checkbox] { cursor:pointer; }
.ohb-addon-check-price { font-size:12px; font-weight:600; color:var(--ohb-teal); white-space:nowrap; }
.ohb-avail-ok  { font-size:12px; color:var(--ohb-green); margin-top:6px; display:none; background:#edf7f1; border-radius:6px; padding:6px 10px; }
.ohb-avail-no  { font-size:12px; color:var(--ohb-red);   margin-top:6px; display:none; background:#fde8ea; border-radius:6px; padding:6px 10px; }
.ohb-price-preview {
    background:#fff;
    border:1.5px solid var(--ohb-border);
    border-radius:8px;
    padding:12px 14px;
    margin-top:14px;
    font-size:13px;
}
.ohb-price-line { display:flex; justify-content:space-between; padding:4px 0; color:var(--ohb-text); }
.ohb-price-total-line {
    display:flex; justify-content:space-between;
    padding:8px 0 0; border-top:2px solid var(--ohb-border);
    margin-top:6px; font-weight:700; font-size:15px; color:var(--ohb-navy);
}

/* ── Flatpickr Calendar Theme ── */
.flatpickr-calendar {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 48px rgba(26,60,94,.20) !important;
    border: 1.5px solid var(--ohb-border) !important;
    overflow: hidden;
    width: 300px !important;
}
.flatpickr-months {
    background: var(--ohb-navy) !important;
    padding: 6px 0;
}
.flatpickr-months .flatpickr-month {
    background: var(--ohb-navy) !important;
    height: 44px !important;
}
.flatpickr-current-month {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding-top: 8px !important;
}
.flatpickr-current-month .numInputWrapper input,
.flatpickr-current-month .flatpickr-monthDropdown-months {
    color: #fff !important;
    background: transparent !important;
    font-weight: 600 !important;
    border: none !important;
}
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
    background: rgba(255,255,255,.1) !important;
}
.flatpickr-current-month .flatpickr-monthDropdown-months option { color:#222; background:#fff; }
.flatpickr-prev-month, .flatpickr-next-month {
    color: rgba(255,255,255,.8) !important;
    fill: rgba(255,255,255,.8) !important;
    padding: 10px 14px !important;
    top: 3px !important;
}
.flatpickr-prev-month:hover svg, .flatpickr-next-month:hover svg { fill: var(--ohb-gold) !important; }
.flatpickr-weekdays { background: #eef3f8 !important; padding: 4px 0; }
span.flatpickr-weekday { color: var(--ohb-navy) !important; font-weight: 700 !important; font-size: 11px !important; }
.flatpickr-days { padding: 4px 6px 8px; }
.flatpickr-day {
    border-radius: 8px !important;
    font-size: 13px !important;
    height: 36px !important;
    line-height: 36px !important;
    width: 36px !important;
    max-width: 36px !important;
    color: var(--ohb-text) !important;
    border: none !important;
    margin: 1px !important;
    transition: background .15s, color .15s;
}
.flatpickr-day:hover {
    background: #e0eef8 !important;
    color: var(--ohb-navy) !important;
}
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: var(--ohb-navy) !important;
    border-color: var(--ohb-navy) !important;
    color: #fff !important;
    font-weight: 600 !important;
}
.flatpickr-day.today {
    border: 2px solid var(--ohb-teal) !important;
    color: var(--ohb-teal) !important;
    font-weight: 600 !important;
}
.flatpickr-day.today.selected { color: #fff !important; border-color: var(--ohb-navy) !important; }
.flatpickr-day.flatpickr-disabled { color: #ccc !important; cursor: not-allowed; }
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay { color: #ccc !important; }
.numInputWrapper:hover { background: rgba(255,255,255,.1) !important; }
.numInputWrapper span { border-color: rgba(255,255,255,.2) !important; }
.numInputWrapper span:after { border-top-color: #fff !important; border-bottom-color: #fff !important; }

/* ── Cart ── */
.ohb-cart { background:var(--ohb-light); border:1.5px solid var(--ohb-border); border-radius:var(--ohb-radius); padding:20px; margin-top:24px; }
.ohb-cart-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.ohb-cart-header h3 { margin:0; font-size:15px; color:var(--ohb-navy); }
.ohb-cart-total { font-size:18px; font-weight:700; color:var(--ohb-navy); }
.ohb-cart-item { display:flex; justify-content:space-between; align-items:flex-start; padding:10px 0; border-bottom:1px solid var(--ohb-border); }
.ohb-cart-item:last-child { border:none; }
.ohb-cart-item-name { font-size:14px; font-weight:600; }
.ohb-cart-item-meta { font-size:12px; color:var(--ohb-muted); margin-top:2px; }
.ohb-cart-item-price { font-size:14px; font-weight:600; white-space:nowrap; }

/* ── Customer Form ── */
.ohb-customer-form { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media(max-width:560px){ .ohb-customer-form { grid-template-columns:1fr; } }
.ohb-fe-field { display:flex; flex-direction:column; gap:6px; }
.ohb-fe-field label { font-size:13px; font-weight:500; color:var(--ohb-text); }
.ohb-fe-field input, .ohb-fe-field textarea { padding:11px 14px; border:1.5px solid var(--ohb-border); border-radius:8px; font-size:14px; font-family:inherit; transition:border-color .2s; }
.ohb-fe-field input:focus, .ohb-fe-field textarea:focus { border-color:var(--ohb-navy); outline:none; box-shadow:0 0 0 3px rgba(26,60,94,.08); }
.ohb-full-field { grid-column:span 2; }
@media(max-width:560px){ .ohb-full-field { grid-column:span 1; } }
.ohb-terms-check label { display:flex; align-items:center; gap:10px; cursor:pointer; font-size:13px; }
.ohb-terms-check a { color:var(--ohb-navy); }
.ohb-req { color:var(--ohb-red); }

/* ── Review ── */
#ohb-review-content .ohb-review-section { background:#fff; border:1.5px solid var(--ohb-border); border-radius:var(--ohb-radius); padding:20px; margin-bottom:16px; }
#ohb-review-content h3 { font-size:15px; color:var(--ohb-navy); margin:0 0 14px; padding-bottom:10px; border-bottom:1px solid var(--ohb-border); }
.ohb-review-row { display:flex; justify-content:space-between; padding:6px 0; font-size:14px; }
.ohb-review-row.ohb-bold { font-weight:700; font-size:15px; padding-top:10px; border-top:1px solid var(--ohb-border); margin-top:4px; }
.ohb-review-item { background:var(--ohb-light); border-radius:8px; padding:12px 14px; margin-bottom:10px; }
.ohb-review-item-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.ohb-review-item-name { font-weight:600; font-size:15px; }
.ohb-review-item-meta { font-size:12px; color:var(--ohb-muted); line-height:1.6; }

/* ── Payment Choice Cards ── */
.ohb-pay-choice-wrap { margin-bottom:28px; }
.ohb-pay-choice-title {
    font-size:15px; font-weight:700; color:var(--ohb-navy);
    margin:0 0 14px; letter-spacing:-.2px;
}
.ohb-pay-choice-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}
@media(max-width:480px){ .ohb-pay-choice-grid { grid-template-columns:1fr; } }

.ohb-pay-choice-card {
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
    padding:22px 18px 18px;
    border:2px solid var(--ohb-border);
    border-radius:12px;
    cursor:pointer;
    background:#fff;
    transition:border-color .2s, box-shadow .2s, background .2s;
    user-select:none;
}
.ohb-pay-choice-card:hover {
    border-color:#aac4dc;
    box-shadow:0 4px 16px rgba(26,60,94,.08);
}
.ohb-pay-choice-card.ohb-pay-choice-active {
    border-color:var(--ohb-navy);
    background:rgba(26,60,94,.03);
    box-shadow:0 0 0 3px rgba(26,60,94,.10), 0 4px 20px rgba(26,60,94,.10);
}
.ohb-pay-choice-check {
    position:absolute;
    top:10px; right:10px;
    width:22px; height:22px;
    border-radius:50%;
    background:var(--ohb-border);
    color:transparent;
    font-size:12px;
    font-weight:700;
    display:flex; align-items:center; justify-content:center;
    transition:background .2s, color .2s;
}
.ohb-pay-choice-card.ohb-pay-choice-active .ohb-pay-choice-check {
    background:var(--ohb-navy);
    color:#fff;
}
.ohb-pay-choice-icon { font-size:28px; margin-bottom:2px; }
.ohb-pay-choice-label {
    font-size:13px; font-weight:700; text-transform:uppercase;
    letter-spacing:.5px; color:var(--ohb-navy);
}
.ohb-pay-choice-amount {
    font-size:26px; font-weight:800; color:var(--ohb-navy);
    line-height:1.1; letter-spacing:-.5px;
}
.ohb-pay-choice-note {
    font-size:11px; color:var(--ohb-muted); line-height:1.4;
}

/* Deposit card accent */
#ohb-card-deposit.ohb-pay-choice-active { border-color:var(--ohb-teal); background:rgba(42,157,143,.04); box-shadow:0 0 0 3px rgba(42,157,143,.12), 0 4px 20px rgba(42,157,143,.08); }
#ohb-card-deposit.ohb-pay-choice-active .ohb-pay-choice-check { background:var(--ohb-teal); }
#ohb-card-deposit .ohb-pay-choice-amount { color:var(--ohb-teal); }

/* ── Gateway wrapper ── */
#ohb-gateway-wrap {
    background:var(--ohb-light);
    border:1.5px solid var(--ohb-border);
    border-radius:12px;
    padding:20px;
    margin-bottom:16px;
}
.ohb-payment-method-section { }
.ohb-payment-method-section h3 { font-size:15px; font-weight:600; margin:0 0 14px; color:var(--ohb-navy); }
.ohb-stripe-element { background:#fff; border:1.5px solid var(--ohb-border); border-radius:8px; padding:14px; margin-bottom:16px; }
.ohb-pay-btn { width:100%; padding:16px; font-size:16px; font-weight:600; border:none; border-radius:8px; cursor:pointer; margin-top:8px; }
.ohb-secure-notice { text-align:center; color:var(--ohb-muted); font-size:12px; margin-top:4px; }

/* ── Navigation ── */
.ohb-step-nav { display:flex; align-items:center; gap:12px; margin-top:28px; padding-top:20px; border-top:1px solid var(--ohb-border); }
.ohb-btn-primary-fe { background:var(--ohb-navy); color:#fff; border:none; border-radius:8px; padding:13px 28px; font-size:15px; font-weight:600; cursor:pointer; transition:background .2s; font-family:inherit; }
.ohb-btn-primary-fe:hover:not(:disabled) { background:#0f2840; }
.ohb-btn-primary-fe:disabled { opacity:.5; cursor:not-allowed; }
.ohb-btn-back-fe { background:transparent; color:var(--ohb-muted); border:1.5px solid var(--ohb-border); border-radius:8px; padding:12px 22px; font-size:14px; font-weight:500; cursor:pointer; font-family:inherit; transition:all .2s; }
.ohb-btn-back-fe:hover { border-color:var(--ohb-navy); color:var(--ohb-navy); }
.ohb-btn-next { margin-left:auto; }

/* ── Loading ── */
.ohb-loading { display:flex; align-items:center; gap:14px; padding:40px 20px; color:var(--ohb-muted); font-size:14px; justify-content:center; }
.ohb-spinner { width:22px; height:22px; border:3px solid var(--ohb-border); border-top-color:var(--ohb-navy); border-radius:50%; animation:ohbSpin .6s linear infinite; }
@keyframes ohbSpin { to{ transform:rotate(360deg); } }

/* ── Error / Success ── */
.ohb-error-msg { background:#fde8ea; color:#c0392b; border-radius:8px; padding:12px 16px; font-size:14px; margin-top:14px; }
.ohb-success { text-align:center; padding:48px 24px; }
.ohb-success-icon { font-size:60px; margin-bottom:16px; }
.ohb-success h2 { color:var(--ohb-navy); font-size:26px; margin:0 0 12px; }
.ohb-success p { color:var(--ohb-muted); font-size:15px; margin:0 0 8px; }
.ohb-avail-checking { font-size:11px; color:var(--ohb-muted); font-style:italic; }

/* ── Mobile ── */
@media(max-width:480px){
    .ohb-steps { gap:0; }
    .ohb-step-label { display:none; }
    .ohb-step-line { max-width:40px; }
    .ohb-config-row { grid-template-columns:1fr; }
    .ohb-config-field.ohb-full-config { grid-column:span 1; }
    .ohb-pay-options { flex-direction:column; }
    .ohb-step-nav { flex-wrap:wrap; }
    .ohb-btn-primary-fe { flex:1; text-align:center; }
    .ohb-btn-next { margin-left:0; width:100%; }
    .ohb-panel-title { font-size:18px; }
}
