/* Concierge uses the existing Bangsai typeface and shell. */
.cc-service{--cc-ink:#183e36;--cc-muted:#52685e;--cc-line:#d3dfd7;--cc-soft:#f2f5f1;--cc-accent:#d96b4c;color:var(--cc-ink)}
.cc-hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:14px 0 54px}.cc-kicker{font-size:var(--bs-type-label,12px);font-weight:var(--bs-weight-semibold,600);letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px;color:var(--cc-muted)}
.travel-v3 .cc-service h1{font-size:clamp(44px,5vw,68px);font-weight:var(--bs-weight-semibold,600);letter-spacing:-.045em;line-height:1.06;margin:0 0 26px}.cc-service h1 span{color:#577665}.cc-lead{font-size:var(--bs-type-card,20px);line-height:1.75;max-width:490px;margin:0 0 28px}.cc-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.cc-hero-actions .cq-button{gap:20px}.cc-text-link{font-size:var(--bs-type-meta,14px);font-weight:var(--bs-weight-semibold,600);text-decoration:underline!important;text-underline-offset:6px;line-height:1.6}.cc-price-line{display:flex;flex-direction:column;gap:6px;font-size:var(--bs-type-meta,14px);margin:28px 0 0;color:var(--cc-muted)}.cc-price-line strong{font-size:var(--bs-type-card,20px);color:var(--cc-ink)}
.travel-v3 .cc-hero-image{margin:0;padding:0;position:static;background:none}.cc-hero-image img{display:block;width:100%;height:520px;object-fit:cover;border-radius:4px}.travel-v3 .cc-hero-image figcaption{position:static;transform:none;background:none;padding:12px 0 0;color:var(--cc-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:var(--bs-type-label,12px);line-height:1.6}.cc-section-nav{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-block:1px solid var(--cc-line);font-size:var(--bs-type-meta,14px);font-weight:600}.cc-section-nav a{display:inline-flex;align-items:center;gap:14px;min-height:24px}
.cc-section{padding:88px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.travel-v3 .cc-service h2{font-size:clamp(30px,3vw,42px);line-height:1.17;letter-spacing:-.025em;font-weight:var(--bs-weight-semibold,600);margin:0 0 24px}.cc-section-intro>p:not(.cc-kicker){font-size:var(--bs-type-lead,17px);line-height:1.8}.cc-owner{padding-top:24px;border-top:1px solid var(--cc-line);margin-top:32px;font-weight:600}.cc-owner span{font-size:var(--bs-type-meta,14px);font-weight:var(--bs-weight-regular,400);color:var(--cc-muted)}.cc-deliverable{display:grid;grid-template-columns:34px 1fr;gap:24px;padding:24px 0;border-top:1px solid var(--cc-line)}.cc-deliverable:first-child{padding-top:0;border-top:0}.cc-number{font-size:var(--bs-type-meta,14px);line-height:1.8;color:var(--cc-muted)}.travel-v3 .cc-service h3{font-size:var(--bs-type-card,20px);line-height:1.35;letter-spacing:-.015em;margin:0 0 12px;font-weight:600}.cc-deliverable p,.cc-steps p{font-size:var(--bs-type-body,16px);line-height:1.8;color:var(--cc-muted);margin:0}
.cc-review{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;padding:48px;background:var(--cc-soft)}.cc-review-copy p:not(.cc-kicker){font-size:var(--bs-type-body,16px);line-height:1.8}.cc-review-copy .cc-text-link{display:inline-block;margin-top:20px}.cc-review-sheet{padding:32px;background:white;border-top:3px solid var(--cc-accent)}.cc-sheet-label{font-size:var(--bs-type-label,12px);font-weight:var(--bs-weight-semibold,600);text-transform:uppercase;letter-spacing:.06em;color:var(--cc-muted);margin:0 0 22px}.travel-v3 .cc-review-sheet h3{font-size:var(--bs-type-section,30px);margin-bottom:28px}.cc-review-sheet dl{margin:0}.cc-review-sheet dl>div{margin:20px 0}.cc-review-sheet dt{font-size:var(--bs-type-meta,14px);font-weight:var(--bs-weight-semibold,600);margin-bottom:7px}.cc-review-sheet dd{font-size:var(--bs-type-meta,14px);line-height:1.8;margin:0;color:var(--cc-muted)}.cc-sheet-result{border-top:1px solid var(--cc-line);padding-top:20px;font-size:var(--bs-type-meta,14px);line-height:1.8;margin:24px 0 0}
.cc-steps{list-style:none;margin:0;padding:0}.cc-steps li{display:grid;grid-template-columns:40px 1fr;gap:24px;padding:0 0 30px;margin:0 0 26px;border-bottom:1px solid var(--cc-line)}.cc-steps li:last-child{margin-bottom:0}.cc-steps li>span{font-size:var(--bs-type-meta,14px);font-weight:var(--bs-weight-semibold,600);border:1px solid var(--cc-line);border-radius:50%;height:36px;width:36px;display:flex;align-items:center;justify-content:center}.cc-details-section{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;padding:64px 0;border-block:1px solid var(--cc-line)}.cc-detail-list dl{margin:0}.cc-detail-list dl>div{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--cc-line)}.cc-detail-list dl>div:first-child{padding-top:0}.cc-detail-list dl>div:last-child{border-bottom:0;padding-bottom:0}.cc-detail-list dt{font-size:var(--bs-type-meta,14px);font-weight:600}.cc-detail-list dd{margin:0;font-size:var(--bs-type-body,16px);line-height:1.8;color:var(--cc-muted)}
.cc-faq-section{padding:80px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.cc-faq details{border-bottom:1px solid var(--cc-line);padding:20px 0}.cc-faq details:first-child{border-top:1px solid var(--cc-line)}.cc-faq summary{cursor:pointer;font-size:var(--bs-type-lead,17px);font-weight:550;line-height:1.5;min-height:28px;padding-right:8px}.cc-faq details p{font-size:var(--bs-type-body,16px);line-height:1.8;color:var(--cc-muted);margin:18px 0 0}
.cc-booking-section{padding:48px;background:var(--cc-ink);color:white;display:grid;grid-template-columns:1fr 1.2fr;gap:64px}.cc-booking-section .cc-kicker{color:#c3d3c9}.travel-v3 .cc-booking-section h2{color:white}.cc-booking-price{font-size:var(--bs-type-page,40px);line-height:1.2;font-weight:var(--bs-weight-semibold,600);letter-spacing:-.04em;margin:24px 0}.cc-booking-price span{font-size:var(--bs-type-meta,14px);font-weight:var(--bs-weight-regular,400);letter-spacing:0;display:block;margin-top:8px}.cc-booking-copy>p:not(.cc-kicker):not(.cc-booking-price){font-size:var(--bs-type-body,16px);line-height:1.8;color:#d8e4dc}.travel-v3 .cc-booking-copy a.cc-text-link{color:#fff;display:inline-block;margin-top:20px}.cc-booking-panel{padding:32px;background:white;color:var(--cc-ink);align-self:start}.cc-booking-panel .cq-alert{margin:16px 0 24px;font-size:var(--bs-type-body,16px)}.cc-booking-panel .cq-form{margin-top:24px}.cc-booking-panel .cq-link{font-size:var(--bs-type-body,16px)}.cc-booking-panel .cq-button{width:100%}.cc-full-terms{padding:52px 0 0;max-width:900px}.travel-v3 .cc-full-terms h2{font-size:var(--bs-type-section,25px);margin-bottom:16px}.cc-full-terms>p,.cc-terms-body{font-size:var(--bs-type-meta,14px);line-height:1.8;color:var(--cc-muted)}.cc-service section[id]{scroll-margin-top:36px}.cc-service summary:focus-visible{outline:3px solid var(--cc-accent);outline-offset:4px}
@media(max-width:1050px){.cc-hero{gap:36px}.cc-section,.cc-details-section,.cc-faq-section{gap:48px}.cc-review,.cc-booking-section{gap:36px;padding:32px}.cc-hero-image img{height:500px}.cc-detail-list dl>div{grid-template-columns:1fr;gap:8px}}
@media(max-width:800px){.cc-hero{grid-template-columns:1fr;gap:32px;padding-top:0;padding-bottom:32px}.travel-v3 .cc-service h1{font-size:var(--bs-type-page,32px)}.cc-lead{font-size:var(--bs-type-lead,17px)}.cc-hero-image img{height:300px}.cc-hero-actions{gap:20px}.cc-hero-actions .cq-button{width:100%;justify-content:space-between}.cc-section-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;padding:20px 0}.cc-section-nav a{min-height:32px}.cc-section,.cc-details-section,.cc-faq-section{grid-template-columns:1fr;gap:32px;padding:48px 0}.cc-review,.cc-booking-section{grid-template-columns:1fr;gap:28px;padding:28px 20px;margin-inline:-20px}.cc-review-sheet,.cc-booking-panel{padding:24px}.cc-review-sheet h3 br{display:none}.cc-owner{margin-bottom:0}.cc-deliverable{gap:16px}.cc-section-intro>p:not(.cc-kicker){font-size:var(--bs-type-body,16px)}.cc-detail-list dl>div{padding:20px 0}.cc-faq-section{gap:8px}.cc-faq summary{font-size:var(--bs-type-body,16px)}.cc-full-terms{padding-top:40px}.cc-price-line{margin-top:22px}.cc-hero-image figcaption a{font-size:var(--bs-type-label,12px)}.cc-service h2 br{display:none}}
@media(max-width:370px){.travel-v3 .cc-service h1{font-size:var(--bs-type-page,32px)}.cc-hero-image img{height:260px}}
@media(prefers-reduced-motion:reduce){.cc-service *{scroll-behavior:auto!important}}
/* The public shell resets paragraph margins; restore this page's reading rhythm. */
.travel-v3 .cc-service .cc-kicker{margin:0 0 20px}
.travel-v3 .cc-service .cc-lead{margin:0 0 28px}
.travel-v3 .cc-service .cc-price-line{margin:28px 0 0}
.travel-v3 .cc-service .cc-section-intro>p:not(.cc-kicker){margin:0 0 20px}
.travel-v3 .cc-service .cc-section-intro .cc-owner{margin:32px 0 0}
.travel-v3 .cc-service .cc-review-copy>p:not(.cc-kicker){margin:0 0 18px}
.travel-v3 .cc-service .cc-sheet-label{margin:0 0 22px}
.travel-v3 .cc-service .cc-sheet-result{margin:24px 0 0}
.travel-v3 .cc-service .cc-faq details p{margin:18px 0 0}
.travel-v3 .cc-service .cc-booking-price{margin:24px 0}
.travel-v3 .cc-service .cc-booking-panel>p{margin:0 0 20px;font-size:var(--bs-type-body,16px);line-height:1.8}
@media(max-width:800px){.travel-v3 .cc-service h1{font-size:var(--bs-type-page,32px)}.travel-v3 .cc-service .cc-price-line{margin:22px 0 0}}
@media(max-width:370px){.travel-v3 .cc-service h1{font-size:var(--bs-type-page,32px)}}
