:root{--request-section-bg: #ffffff;--request-section-pad-block: 4rem;--request-section-pad-block-sm: 5rem;--request-measure: 48rem;--request-accent: var(--brand-deep);--request-accent-ink: #ffffff;--request-heading-size: 1.875rem;--request-heading-size-sm: 2.25rem;--request-heading-weight: 700;--request-heading-tracking: -.02em;--request-gap: 1rem;--request-row-gap: 1rem;--request-label-size: .8125rem;--request-label-weight: 600;--request-label-color: var(--ink);--request-input-bg: #ffffff;--request-input-radius: var(--radius);--request-input-border: 1px solid color-mix(in srgb, var(--ink) 16%, white);--request-input-border-focus: var(--request-accent);--request-input-pad-y: .625rem;--request-input-pad-x: .75rem;--request-input-size: .95rem;--request-submit-radius: var(--radius);--request-submit-pad-y: .75rem;--request-submit-pad-x: 1.5rem;--request-submit-weight: 600;--places-section-bg: #ffffff;--places-section-pad-block: 4rem;--places-section-pad-block-sm: 5rem;--places-measure: 72rem;--places-accent: var(--brand-deep);--places-heading-size: 1.875rem;--places-heading-size-sm: 2.25rem;--places-heading-weight: 700;--places-heading-tracking: -.02em;--places-grid-min: 17rem;--places-grid-gap: 1.5rem;--places-card-bg: #ffffff;--places-card-radius: var(--radius);--places-card-border: 1px solid color-mix(in srgb, var(--ink) 12%, white);--places-card-shadow: 0 1px 2px color-mix(in srgb, var(--ink) 8%, transparent);--places-photo-aspect: 4 / 3;--places-name-size: 1.1rem;--places-name-weight: 650;--places-price-color: var(--places-accent);--places-meta-color: var(--ink-soft);--places-desc-color: var(--ink-soft);--places-amenity-bg: color-mix(in srgb, var(--brand-deep) 8%, white);--places-amenity-color: color-mix(in srgb, var(--brand-deep) 75%, var(--ink));--places-amenity-radius: 999px;--places-cta-color: var(--places-accent)}.request-section{background-color:var(--request-section-bg);padding-block:var(--request-section-pad-block)}@media(min-width:640px){.request-section{padding-block:var(--request-section-pad-block-sm)}}.request-measure{max-width:var(--request-measure)}.request-title{margin-top:.5rem;font-size:var(--request-heading-size);font-weight:var(--request-heading-weight);letter-spacing:var(--request-heading-tracking);color:var(--ink)}@media(min-width:640px){.request-title{font-size:var(--request-heading-size-sm)}}.request-intro{margin-top:.75rem;color:var(--ink-soft);font-size:1.05rem}.request-form{margin-top:2rem;display:flex;flex-direction:column;gap:var(--request-gap)}.request-row{display:grid;gap:var(--request-row-gap);grid-template-columns:minmax(0,1fr)}@media(min-width:640px){.request-row{grid-template-columns:repeat(3,minmax(0,1fr))}.request-row:has(.request-field:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}.request-field{display:flex;flex-direction:column;gap:.375rem}.request-label{font-size:var(--request-label-size);font-weight:var(--request-label-weight);color:var(--request-label-color)}.request-optional{font-weight:400;color:var(--ink-soft)}.request-input{width:100%;background:var(--request-input-bg);color:var(--ink);border:var(--request-input-border);border-radius:var(--request-input-radius);padding:var(--request-input-pad-y) var(--request-input-pad-x);font-size:var(--request-input-size);font-family:inherit}.request-input:focus-visible{outline:none;border-color:var(--request-input-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--request-accent) 25%,transparent)}textarea.request-input{resize:vertical}.request-submit{align-self:flex-start;margin-top:.5rem;background:var(--request-accent);color:var(--request-accent-ink);border:none;border-radius:var(--request-submit-radius);padding:var(--request-submit-pad-y) var(--request-submit-pad-x);font-weight:var(--request-submit-weight);font-size:.95rem;cursor:pointer;transition:filter .2s ease,transform .2s ease}.request-submit:hover{filter:brightness(1.06)}.request-submit:active{transform:translateY(1px)}.request-submit:disabled{opacity:.6;cursor:progress}.request-status{margin-top:.75rem;font-size:.9rem}.request-status--ok{color:color-mix(in srgb,var(--brand-deep) 70%,var(--ink))}.request-status--err{color:#b42318}@media(prefers-reduced-motion:reduce){.request-submit{transition:none}}.places-section{background-color:var(--places-section-bg);padding-block:var(--places-section-pad-block)}@media(min-width:640px){.places-section{padding-block:var(--places-section-pad-block-sm)}}.places-measure{max-width:var(--places-measure)}.places-title{margin-top:.5rem;font-size:var(--places-heading-size);font-weight:var(--places-heading-weight);letter-spacing:var(--places-heading-tracking);color:var(--ink)}@media(min-width:640px){.places-title{font-size:var(--places-heading-size-sm)}}.places-intro{margin-top:.75rem;color:var(--ink-soft);font-size:1.05rem}.places-grid{margin-top:2rem;list-style:none;padding:0;display:grid;gap:var(--places-grid-gap);grid-template-columns:repeat(auto-fill,minmax(min(var(--places-grid-min),100%),1fr))}.places-card{display:flex;flex-direction:column;background:var(--places-card-bg);border:var(--places-card-border);border-radius:var(--places-card-radius);box-shadow:var(--places-card-shadow);overflow:hidden}.places-photo{aspect-ratio:var(--places-photo-aspect);background:color-mix(in srgb,var(--ink) 6%,white)}.places-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.places-photo--empty{background:linear-gradient(135deg,color-mix(in srgb,var(--brand-deep) 10%,white),color-mix(in srgb,var(--ink) 5%,white))}.places-body{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.15rem 1.25rem}.places-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.places-name{margin:0;font-size:var(--places-name-size);font-weight:var(--places-name-weight);color:var(--ink)}.places-price{flex:none;font-size:.9rem;font-weight:600;color:var(--places-price-color)}.places-meta{margin:0;font-size:.85rem;color:var(--places-meta-color)}.places-desc{margin:0;font-size:.95rem;line-height:1.5;color:var(--places-desc-color)}.places-amenities{list-style:none;margin:.15rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.places-amenity{font-size:.78rem;padding:.2rem .6rem;background:var(--places-amenity-bg);color:var(--places-amenity-color);border-radius:var(--places-amenity-radius)}.places-cta{align-self:flex-start;margin-top:.35rem;font-size:.9rem;font-weight:600;color:var(--places-cta-color);text-decoration:none}.places-cta:hover{text-decoration:underline}
