.tgg-b1{max-width:1120px;margin:32px auto;padding:28px;border:1px solid #d9d2c2;border-radius:18px;background:#fff;color:#0d1b2a}.tgg-b1 h1,.tgg-b1 h2{color:#0d1b2a}.tgg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tgg-b1 label{display:block;font-weight:700;margin-bottom:6px}.tgg-b1 input,.tgg-b1 select,.tgg-b1 textarea{width:100%;padding:12px;border:1px solid #aab2bd;border-radius:8px;background:#fff;color:#0d1b2a}.tgg-btn{display:inline-block;background:#0d1b2a!important;color:#fff!important;border:0;border-radius:999px;padding:13px 20px;font-weight:700;cursor:pointer}.tgg-card{padding:20px;margin:14px 0;border:1px solid #d9d2c2;border-radius:14px}.tgg-muted{color:#596574}.tgg-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#f5f0e8;margin:3px;font-size:13px}.tgg-error{display:block;color:#a12626;min-height:1.3em;margin-top:5px}.tgg-date-rule{padding:10px 12px;background:#f5f0e8;border-left:4px solid #c9a84c}@media(max-width:700px){.tgg-grid{grid-template-columns:1fr}.tgg-b1{margin:16px 10px;padding:20px}}
.tgg-progress{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 22px}.tgg-progress span{padding:7px 11px;border-radius:999px;background:#eef0f2;color:#596574;font-size:12px;font-weight:700}.tgg-progress .is-active{background:#0d1b2a;color:#fff}.tgg-summary{display:flex;gap:10px;flex-wrap:wrap;padding:14px 16px;background:#f5f0e8;border-radius:12px;margin-bottom:24px}.tgg-summary span,.tgg-summary strong{padding-right:10px}.tgg-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#8b6f26}.tgg-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.tgg-inline-form{display:inline;margin:0}.tgg-link{font-weight:700;color:#0d1b2a;text-decoration:underline}.tgg-btn-small{padding:10px 15px;font-size:14px}.tgg-build-grid,.tgg-service-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;align-items:start}.tgg-service-grid{grid-template-columns:1fr 1fr;margin:26px 0}.tgg-help{padding:20px;border-radius:14px;background:#0d1b2a;color:#fff}.tgg-help h3,.tgg-help a{color:#fff!important}.tgg-help .tgg-btn{background:#c9a84c!important;color:#0d1b2a!important}.tgg-selected{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid #e2ded5;padding:12px 0}.tgg-selected small{display:block;color:#596574;margin-top:3px}.tgg-text-btn{border:0;background:transparent;text-decoration:underline;cursor:pointer}.tgg-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px}.tgg-option-card{overflow:hidden;border:1px solid #d9d2c2;border-radius:14px;background:#fff}.tgg-option-card img{width:100%;height:190px;object-fit:cover;display:block}.tgg-option-body{padding:18px}.tgg-added{font-weight:800;color:#35653b}.tgg-review-item{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid #d9d2c2}.tgg-review-item h2{margin:7px 0}.tgg-next{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:28px}.tgg-privacy{font-size:13px;color:#596574;background:#f5f0e8;padding:12px;border-radius:8px}@media(max-width:700px){.tgg-build-grid,.tgg-service-grid,.tgg-options{grid-template-columns:1fr}.tgg-review-item,.tgg-next{align-items:flex-start;flex-direction:column}.tgg-option-card img{height:165px}}

/* TGG controlled mobile calendar: iOS native date pickers expose out-of-range dates,
   so the journey uses an owned calendar on coarse-pointer/mobile viewports. */
.tgg-mobile-date-display{cursor:pointer;background:#fff!important}
.tgg-calendar-shell[hidden]{display:none!important}
.tgg-calendar-shell{position:fixed;inset:0;z-index:2147483000;background:rgba(7,20,34,.55);display:flex;align-items:flex-end;justify-content:center;padding:12px}
.tgg-calendar-panel{width:min(520px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:22px 22px 14px 14px;box-shadow:0 18px 60px rgba(0,0,0,.28);padding:18px;color:#0d1b2a}
.tgg-calendar-head{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;margin-bottom:12px}
.tgg-cal-title{text-align:center;font-family:inherit;font-size:21px}
.tgg-cal-nav{width:48px;height:48px;border:1px solid #d9d2c2;border-radius:999px;background:#fff;color:#0d1b2a;font-size:34px;line-height:1}
.tgg-cal-nav:disabled{opacity:.28}
.tgg-calendar-weekdays,.tgg-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}
.tgg-calendar-weekdays{font-weight:800;color:#596574;margin-bottom:6px}
.tgg-calendar-weekdays span{padding:6px 0}
.tgg-cal-day{aspect-ratio:1/1;min-height:42px;border:0;border-radius:999px;background:#fff;color:#0d1b2a;font-size:17px;font-weight:700}
.tgg-cal-day:not(:disabled):active{background:#f1e5bd}
.tgg-cal-day.is-today{outline:2px solid #c9a84c;outline-offset:-3px}
.tgg-cal-day.is-selected{background:#0d1b2a;color:#fff}
.tgg-cal-day.is-disabled{color:#b6bcc3;background:#f4f5f6;text-decoration:line-through;cursor:not-allowed}
.tgg-cal-blank{aspect-ratio:1/1}
.tgg-calendar-foot{display:flex;justify-content:flex-end;border-top:1px solid #e2ded5;margin-top:12px;padding-top:12px}
.tgg-cal-cancel{border:0;background:transparent;color:#0d1b2a;font-weight:800;text-decoration:underline;padding:10px}
html.tgg-calendar-open,html.tgg-calendar-open body{overflow:hidden}
@media(min-width:801px) and (pointer:fine){.tgg-calendar-shell{display:none!important}}
