.gtb-wrap,.gtb{--g:#1c4a3a;--o:#b8801a;--ink:#14261f;--mute:#5a6b63;--line:#d3dcd5;--card:#fff;--bg:#f3f6f1;color:var(--ink);font-size:16px;line-height:1.55;max-width:960px;margin:0 auto}
.gtb *,.gtb *:before,.gtb *:after{box-sizing:border-box}
.gtb form{display:grid;gap:1.5rem;grid-template-columns:1fr}
@media(min-width:820px){.gtb form{grid-template-columns:1.6fr 1fr;align-items:start}}
.gtb fieldset{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:1.1rem 1.1rem 1.3rem;margin:0 0 1rem;min-width:0}
.gtb legend{font-weight:700;font-size:1.05rem;padding:0 .4rem}
.gtb input[type=radio],.gtb .gtb-tabs input{position:absolute;opacity:0}
.gtb-pk{display:grid;gap:.6rem}
.gtb-pk label{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid var(--line);border-radius:8px;padding:.7rem .9rem;cursor:pointer}
.gtb-pk label:has(input:checked){border-color:var(--g);box-shadow:inset 0 0 0 1px var(--g)}
.gtb-pk label:has(input:focus-visible),.gtb-tabs label:has(input:focus-visible){outline:2px solid var(--o);outline-offset:2px}
.gtb-pk small{display:block;color:var(--mute)}.gtb-pk em{font-style:normal;font-weight:700;white-space:nowrap}
.gtb-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem}
.gtb-tabs label{position:relative;border:1px solid var(--line);border-radius:8px;padding:.7rem;text-align:center;font-weight:600;cursor:pointer}
.gtb-tabs label:has(input:checked){background:var(--g);color:#fff;border-color:var(--g)}
.gtb-hint{color:var(--mute);font-size:.9rem;margin:0 0 .8rem}
.gtb-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid var(--line);border-radius:8px;padding:.5rem .8rem;margin-bottom:.5rem}
.gtb-row label{display:flex;align-items:center;gap:.5rem}
.gtb-days input{width:4.4rem}
.gtb-grid{display:grid;gap:.9rem;grid-template-columns:1fr;margin-top:.9rem}
@media(min-width:560px){.gtb-grid{grid-template-columns:1fr 1fr}}
.gtb fieldset>.gtb-grid:first-of-type{margin-top:0}
.gtb-f{display:flex;flex-direction:column;gap:.3rem;font-weight:500;font-size:.92rem}
.gtb-acts{display:grid;gap:.4rem;margin-top:1rem;grid-template-columns:1fr}
@media(min-width:560px){.gtb-acts{grid-template-columns:1fr 1fr}}
.gtb-acts label{display:flex;gap:.5rem;align-items:center}
.gtb input[type=text],.gtb input[type=email],.gtb input[type=tel],.gtb input[type=date],.gtb input[type=number],.gtb select,.gtb textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.6rem .7rem;width:100%;max-width:100%}
.gtb input:focus-visible,.gtb select:focus-visible,.gtb textarea:focus-visible,.gtb button:focus-visible{outline:2px solid var(--o);outline-offset:2px}
.gtb-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.gtb-sum{background:var(--g);color:#fff;border-radius:10px;padding:1.3rem}
@media(min-width:820px){.gtb-sum{position:sticky;top:1rem}}
.gtb-sum h3{margin:0 0 .8rem;color:#fff;font-size:1.2rem}
.gtb-sum dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:.4rem 1rem;font-size:.95rem}
.gtb-sum dd{margin:0;text-align:right}
.gtb-total{border-top:1px solid rgba(255,255,255,.5);margin-top:.9rem;padding-top:.8rem;font-size:1.7rem;font-weight:700}
.gtb-note{font-size:.82rem;opacity:.85;margin:.6rem 0 0}
.gtb-err{color:#ffd9d2;font-size:.9rem;min-height:1.2em;margin:.4rem 0 0}
.gtb button{font:inherit;font-weight:600;border:0;border-radius:8px;padding:.85rem 1.2rem;cursor:pointer;width:100%;background:var(--o);color:#1a1200}
.gtb button:disabled{opacity:.6;cursor:wait}
.gtb-done{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1.5rem}
.gtb-done h3{margin:0 0 .5rem}
.gtb-wa{display:inline-block;background:var(--g);color:#fff;text-decoration:none;font-weight:600;padding:.7rem 1.1rem;border-radius:8px}
.gtb-wrap{color:var(--ink);background:var(--gtb-bg,transparent);box-shadow:0 0 0 100vmax var(--gtb-bg,transparent);clip-path:inset(0 -100vmax);padding:2.5rem 0 3rem;margin:0 0 2rem}
.gtb-inner{max-width:960px;margin:0 auto}
.gtb-head{padding:0 0 1.5rem}
.gtb-head h2{font-family:Fraunces,Georgia,serif;font-weight:700;font-size:clamp(2rem,6vw,3.2rem);line-height:1.1;margin:0 0 .6rem;max-width:16ch;color:var(--ink)}
.gtb-head p{color:var(--mute);margin:0;max-width:52ch}
