/* V1.2 PASS 2 — Composer: large controls, flat hierarchy, advanced options before the single CTA */
.composer-v12-drawer{width:min(940px,calc(100% - 32px))!important;max-height:min(94vh,880px)!important;border-radius:30px!important;padding:22px 28px 0!important;overflow:auto!important;background:#fffdf8!important;box-shadow:0 34px 110px rgba(7,17,28,.28)!important;scrollbar-gutter:stable}
.composer-v12-drawer>header{margin:0 0 8px!important;padding:0 54px 10px 0!important;border-bottom:1px solid rgba(16,19,25,.08)!important}
.composer-v12-drawer>header .eyebrow{font-size:10px!important;letter-spacing:.14em!important}
.composer-v12-drawer>header h2{font-size:34px!important;line-height:1!important;margin:4px 0 0!important;letter-spacing:-.035em!important}
.composer-v12-drawer>header .drawer-close{width:42px!important;height:42px!important}
.composer-v12-body{display:grid!important;gap:0!important;padding:0!important}
.composer-v12-body .composer-block{border:0!important;margin:0!important;padding:0!important}
.composer-v12-body .mini-label{display:block!important;margin:0!important;color:#171d27!important;font-size:11px!important;line-height:1.2!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:900!important}
.composer-v12-heading{display:flex!important;align-items:flex-start!important;gap:10px!important;margin-bottom:10px!important}
.composer-v12-heading>div{display:grid!important;gap:3px!important;min-width:0!important}
.composer-v12-heading small{display:block!important;color:#777873!important;font-size:10px!important;line-height:1.35!important;font-weight:600!important}
.composer-step-index{display:grid!important;place-items:center!important;flex:0 0 26px!important;width:26px!important;height:26px!important;border-radius:999px!important;background:#f0ebe3!important;color:#9d433b!important;font-size:9px!important;letter-spacing:.08em!important;font-weight:900!important}
.composer-v12-core{display:grid!important;grid-template-columns:1.2fr 1fr!important;gap:24px!important;padding:12px 0 16px!important;border-bottom:1px solid rgba(16,19,25,.09)!important}
.composer-v12-duration{min-width:0!important}
.composer-v12-people-budget{display:grid!important;grid-template-columns:.74fr 1.26fr!important;gap:14px!important;min-width:0!important}
.composer-v12-body .duration-choice-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:0!important}
.composer-v12-body .duration-choice-row button{min-width:0!important;min-height:52px!important;padding:10px 8px!important;border:1px solid #ddd4c8!important;border-radius:14px!important;background:#fbfaf7!important;color:#243138!important;font-size:12px!important;line-height:1.2!important;font-weight:850!important;box-shadow:none!important}
.composer-v12-body .duration-choice-row button:hover{border-color:#bdaea0!important;background:#f6f1e9!important}
.composer-v12-body .duration-choice-row button.active{background:#111a2d!important;border-color:#111a2d!important;color:#fff!important;box-shadow:0 8px 20px rgba(17,26,45,.14)!important}
.composer-v12-body .people-stepper{display:grid!important;grid-template-columns:48px 1fr 48px!important;height:52px!important;max-width:none!important;margin:0!important;border:1px solid #ddd4c8!important;border-radius:14px!important;background:#fbfaf7!important;overflow:hidden!important;box-shadow:none!important}
.composer-v12-body .people-stepper button{width:48px!important;height:50px!important;min-width:48px!important;border:0!important;background:transparent!important;color:#233238!important;font-size:22px!important;font-weight:600!important}
.composer-v12-body .people-stepper button:hover{background:#f0ebe3!important}
.composer-v12-body .people-stepper strong{display:grid!important;place-items:center!important;font-family:Georgia,"Times New Roman",serif!important;font-size:21px!important;color:#111a2d!important}
.composer-v12-body .budget-compact{display:flex!important;align-items:center!important;height:52px!important;margin:0!important;padding:0 12px!important;border:1px solid #ddd4c8!important;border-radius:14px!important;background:#fbfaf7!important;box-shadow:none!important}
.composer-v12-body .budget-compact input{width:100%!important;min-width:0!important;border:0!important;outline:0!important;background:transparent!important;color:#111a2d!important;font-family:Georgia,"Times New Roman",serif!important;font-size:21px!important;font-weight:700!important}
.composer-v12-body .budget-compact span{flex:none!important;color:#6f716f!important;font-size:10px!important;font-weight:800!important}
.composer-v12-section{padding:15px 0!important;border-bottom:1px solid rgba(16,19,25,.09)!important}
.composer-v12-body .compose-visit{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important}
.composer-v12-body .compose-visit button{min-height:64px!important;padding:11px 14px!important;border:1px solid #ddd4c8!important;border-radius:14px!important;background:#fbfaf7!important;color:#273438!important;text-align:left!important;box-shadow:none!important}
.composer-v12-body .compose-visit button strong,.composer-v12-body .compose-visit button small{display:block!important}
.composer-v12-body .compose-visit button strong{font-size:13px!important;line-height:1.2!important}
.composer-v12-body .compose-visit button small{margin-top:4px!important;color:#747874!important;font-size:10px!important;line-height:1.35!important;font-weight:650!important}
.composer-v12-body .compose-visit button:hover{background:#f5f0e8!important;border-color:#c7baab!important}
.composer-v12-body .compose-visit button.active{background:#edf6f3!important;border-color:#95c7c0!important;color:#0e625e!important;box-shadow:inset 0 0 0 1px rgba(23,125,120,.06)!important}
.composer-v12-body .compose-visit button.active small{color:#50716e!important}
.composer-v12-body .interest-title-row{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:10px!important;margin:0 0 10px!important}
.composer-v12-body .composer-interest-buttons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important;overflow:visible!important}
.composer-v12-body .interest-chip{display:grid!important;grid-template-columns:22px minmax(0,1fr) 20px!important;align-items:center!important;gap:7px!important;min-height:50px!important;padding:9px 11px!important;border:1px solid #ddd8d0!important;border-radius:14px!important;background:#fff!important;color:#444e51!important;text-align:left!important;font-size:11px!important;line-height:1.25!important;font-weight:800!important;box-shadow:none!important;white-space:normal!important}
.composer-v12-body .interest-chip>b{display:grid!important;place-items:center!important;color:#177d78!important;font-size:13px!important}
.composer-v12-body .interest-chip>span{min-width:0!important}
.composer-v12-body .interest-chip>i{display:grid!important;place-items:center!important;width:20px!important;height:20px!important;border-radius:50%!important;background:#f0f1ee!important;color:#767b79!important;font-style:normal!important;font-size:11px!important}
.composer-v12-body .interest-chip:hover{background:#fbf4f1!important;border-color:#e5b8b3!important;transform:none!important}
.composer-v12-body .interest-chip.active{background:#111a2d!important;border-color:#111a2d!important;color:#fff!important}
.composer-v12-body .interest-chip.active>b{color:#f5c1b8!important}
.composer-v12-body .interest-chip.active>i{background:#dceeea!important;color:#0e625e!important}
.composer-v12-advanced{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.composer-v12-advanced>summary{list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:62px!important;padding:13px 2px!important;border:0!important;color:#17252a!important;cursor:pointer!important}
.composer-v12-advanced>summary::-webkit-details-marker{display:none!important}
.composer-v12-advanced>summary>span{display:grid!important;gap:3px!important}
.composer-v12-advanced>summary b{font-family:Georgia,"Times New Roman",serif!important;font-size:18px!important;font-weight:600!important;letter-spacing:-.015em!important}
.composer-v12-advanced>summary small{color:#737a78!important;font-size:10px!important;line-height:1.35!important}
.composer-v12-advanced>summary i{display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;border-radius:999px!important;background:#f0ebe3!important;color:#177d78!important;font-style:normal!important;font-size:20px!important;transition:transform .2s ease!important}
.composer-v12-advanced[open]>summary i{transform:rotate(45deg)!important}
.composer-v12-advanced .advanced-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;padding:3px 0 17px!important}
.composer-v12-advanced .advanced-grid>section{min-width:0!important;padding:0!important;border:0!important;background:transparent!important}
.composer-v12-advanced .segmented{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;margin-top:7px!important;padding:0!important;border:0!important;background:transparent!important}
.composer-v12-advanced .advanced-grid>section:first-child .segmented{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.composer-v12-advanced .segmented button,.composer-v12-advanced .must-grid button{min-height:42px!important;padding:8px 9px!important;border:1px solid #ddd8d0!important;border-radius:11px!important;background:#fbfaf7!important;color:#4b5558!important;font-size:10px!important;font-weight:800!important;box-shadow:none!important}
.composer-v12-advanced .segmented button.active,.composer-v12-advanced .must-grid button.active{background:#111a2d!important;border-color:#111a2d!important;color:#fff!important}
.composer-date-time{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;grid-column:span 2!important}
.composer-date-time label{display:grid!important;gap:7px!important}
.composer-v12-advanced .date-input{width:100%!important;min-height:42px!important;padding:8px 10px!important;border:1px solid #ddd8d0!important;border-radius:11px!important;background:#fff!important;color:#273438!important;font-size:11px!important}
.composer-departure-point{grid-column:span 1!important}
.composer-v12-advanced .must-sees{grid-column:1/-1!important}
.composer-v12-advanced .must-sees p{margin:3px 0 7px!important;color:#7a7c78!important;font-size:9px!important;line-height:1.35!important}
.composer-v12-advanced .must-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
.composer-v12-submit{position:sticky!important;z-index:4!important;bottom:0!important;margin:0 -28px!important;padding:10px 28px 16px!important;border-top:1px solid rgba(16,19,25,.08)!important;background:linear-gradient(180deg,rgba(255,253,248,.9),#fffdf8 35%)!important;backdrop-filter:blur(10px)!important}
.composer-v12-submit .composer-generate{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:58px!important;padding:9px 17px!important;border-radius:15px!important;background:#c7473f!important;box-shadow:0 12px 28px rgba(199,71,63,.20)!important;text-align:left!important;text-decoration:none!important}
.composer-v12-submit .composer-generate:hover{background:#b63c35!important}
.composer-v12-submit .composer-generate>span{display:grid!important;gap:1px!important}
.composer-v12-submit .composer-generate small{color:#f8d7d3!important;font-size:9px!important;font-weight:700!important}
.composer-v12-submit .composer-generate strong{color:#fff!important;font-size:15px!important;font-weight:900!important}
.composer-v12-submit .composer-generate>b{font-size:22px!important;font-weight:400!important}
.composer-v12-drawer :focus-visible{outline:3px solid rgba(23,125,120,.38)!important;outline-offset:2px!important}
@media(max-width:900px){
  .composer-v12-drawer{width:min(760px,calc(100% - 24px))!important;padding-inline:22px!important}
  .composer-v12-core{grid-template-columns:1fr!important;gap:14px!important}
  .composer-v12-people-budget{grid-template-columns:.8fr 1.2fr!important}
  .composer-v12-submit{margin-inline:-22px!important;padding-inline:22px!important}
}
@media(max-width:620px){
  .drawer-backdrop:has(.composer-v12-drawer){place-items:end center!important}
  .composer-v12-drawer{width:100%!important;max-height:94svh!important;border-radius:24px 24px 0 0!important;padding:18px 15px 0!important;scrollbar-gutter:auto!important}
  .composer-v12-drawer>header{padding-bottom:9px!important}
  .composer-v12-drawer>header h2{font-size:29px!important}
  .composer-v12-core{padding-top:8px!important;padding-bottom:14px!important}
  .composer-v12-people-budget{grid-template-columns:1fr 1.25fr!important;gap:10px!important}
  .composer-v12-body .duration-choice-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .composer-v12-body .duration-choice-row button{min-height:50px!important}
  .composer-v12-body .compose-visit{grid-template-columns:1fr!important}
  .composer-v12-body .compose-visit button{min-height:58px!important}
  .composer-v12-body .composer-interest-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .composer-v12-body .interest-chip{min-height:48px!important}
  .composer-v12-advanced>summary{min-height:68px!important}
  .composer-v12-advanced .advanced-grid{grid-template-columns:1fr!important}
  .composer-date-time,.composer-departure-point{grid-column:auto!important}
  .composer-v12-advanced .must-sees{grid-column:auto!important}
  .composer-v12-advanced .must-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .composer-v12-submit{margin-inline:-15px!important;padding:9px 15px calc(12px + env(safe-area-inset-bottom))!important}
  .composer-v12-submit .composer-generate{min-height:56px!important}
}
@media(max-width:390px){
  .composer-v12-drawer{padding-inline:12px!important}
  .composer-v12-drawer>header h2{font-size:27px!important}
  .composer-v12-people-budget{grid-template-columns:1fr!important}
  .composer-v12-body .composer-interest-buttons{grid-template-columns:1fr 1fr!important;gap:6px!important}
  .composer-v12-body .interest-chip{padding-inline:8px!important;font-size:10px!important}
  .composer-v12-submit{margin-inline:-12px!important;padding-inline:12px!important}
}
@media(prefers-reduced-motion:reduce){.composer-v12-drawer *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:620px){
  .composer-v12-submit{position:static!important;z-index:auto!important;background:#fffdf8!important;backdrop-filter:none!important}
}
.composer-v12-core,.composer-v12-duration,.composer-v12-people-budget,.composer-v12-section,.composer-v12-advanced{min-width:0!important;width:100%!important}
@media(max-width:340px){.composer-v12-body .mini-label{font-size:10px!important}.composer-v12-heading small{font-size:9px!important}}
.composer-v12-body .interest-chip{min-width:0!important;width:100%!important}
.composer-v12-body .interest-chip>span{min-width:0!important;overflow-wrap:anywhere!important}
