
:root{--green:#073b31;--green2:#0d4d3f;--gold:#efc64b;--cream:#f5f1e8;--ink:#153129;--muted:#6f7d77}
*{box-sizing:border-box}
body.relax-page{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}
.relax-page main{padding:0 5% 70px}
.relax-intro{max-width:1180px;margin:0 auto;padding:54px 0 30px}
.relax-intro>span,.mini-kicker,.booking-heading span{font-size:11px;font-weight:800;letter-spacing:.16em;color:#9b7720}
.relax-intro h1{font:600 clamp(36px,5vw,62px)/1.05 "Playfair Display",serif;margin:8px 0 12px}
.relax-intro p{max-width:700px;color:var(--muted);font-size:15px;line-height:1.6}
.relax-shell{max-width:1380px;margin:auto}

.service-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}
.service-choice{border:1px solid #ddd7ca;background:#fff;border-radius:16px;padding:0;text-align:left;min-height:208px;cursor:pointer;transition:.18s;display:flex;flex-direction:column;overflow:hidden;position:relative}
.service-choice:hover{transform:translateY(-2px);box-shadow:0 12px 30px #1d332717}
.service-choice.active{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 14px 34px #073b3125}
.choice-thumb{display:block;aspect-ratio:16/9;background:#ece6d8;overflow:hidden}
.choice-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.choice-head{display:flex;align-items:flex-start;gap:10px;padding:12px 14px 6px}
.choice-icon{width:36px;height:36px;border-radius:9px;background:#f5efd9;display:grid;place-items:center;flex:0 0 36px}
.choice-icon svg{width:22px;height:22px;fill:none;stroke:#a37c18;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.service-choice.active .choice-icon{background:#ffffff16}.service-choice.active .choice-icon svg{stroke:var(--gold)}
.choice-copy b{display:block;font-size:14px;line-height:1.2}
.choice-copy small{display:block;font-size:10px;color:#7d8984;margin-top:3px;line-height:1.3}
.service-choice.active .choice-copy small{color:#b9cec7}
.choice-price{margin-top:auto;padding:8px 14px 14px;font-size:11px;font-weight:800;color:#8c6d1e}
.service-choice.active .choice-price{color:var(--gold)}

.service-showcase{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.7fr);gap:16px;background:#fff;border:1px solid #e6e0d5;border-radius:18px;box-shadow:0 10px 35px #263b3010;padding:16px;margin-bottom:16px}
.showcase-gallery{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:12px;align-items:stretch}
.showcase-main{border-radius:14px;overflow:hidden;background:#eee6d8;min-height:320px}
.showcase-main img{width:100%;height:100%;display:block;object-fit:cover}
.showcase-thumbs{display:grid;grid-template-columns:1fr;gap:10px}
.showcase-thumb{border:2px solid transparent;border-radius:12px;overflow:hidden;background:#f1ece2;padding:0;cursor:pointer;min-height:72px}
.showcase-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.showcase-thumb.active{border-color:var(--gold);box-shadow:0 0 0 2px #f0c84826}
.showcase-info{padding:8px 6px}
.showcase-title-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 12px}
.showcase-info h2{font:600 30px/1.06 "Playfair Display",serif;margin:0}
.showcase-price{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;background:#f8edd0;color:#8e6b12;font-size:13px;font-weight:800}
.showcase-info p{margin:0 0 18px;color:#5e6f69;font-size:15px;line-height:1.65}
.showcase-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.showcase-details span{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid #ebe5da;border-radius:12px;background:#fcfaf5;color:#19372f;font-size:13px;font-weight:700}
.showcase-details span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);display:inline-block;flex:0 0 8px}

.booking-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,.7fr);gap:16px;align-items:start}
.compact-calendar,.booking-card{background:#fff;border-radius:18px;border:1px solid #e6e0d5;box-shadow:0 10px 35px #263b3010}
.compact-calendar{padding:26px}
.booking-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.booking-heading h2{font:600 30px "Playfair Display",serif;margin:4px 0 0}
.month-nav{display:flex;align-items:center;gap:12px}
.month-nav button{width:34px;height:34px;border:1px solid #ddd8cd;border-radius:9px;background:#fff;color:var(--green);font-size:20px;cursor:pointer}
.month-nav strong{min-width:150px;text-align:center;font-size:13px}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.dow{text-align:center;font-size:10px;font-weight:800;color:#8a958f;padding:7px}
.day{height:52px;border:1px solid #e5e2db;border-radius:10px;background:#fff;font:700 13px "DM Sans",sans-serif;color:#17382e;cursor:pointer}
.day:hover:not(.past):not(.busy){border-color:#70b98e;background:#f0f8f3}
.day.past{background:#f4f3f0;color:#c4c7c4;cursor:not-allowed}
.day.busy{background:#fff0ee;border-color:#f1b7b2;color:#c44d45;cursor:not-allowed}
.day.selected{background:var(--green);border-color:var(--green);color:#fff}
.day.empty{border:0;background:transparent}
.legend{display:flex;gap:18px;margin-top:15px;font-size:10px;color:#738078}
.legend span{display:flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.free{background:#6dc98c}.dot.busy{background:#e76b65}.dot.selected{background:var(--green)}
.booking-card{padding:26px;position:sticky;top:18px}.booking-card h2{font:600 30px/1.1 "Playfair Display",serif;margin:6px 0}.summary-price{color:#9b7720;font-size:12px;font-weight:800;margin-bottom:20px}
.field{display:grid;gap:6px;margin-bottom:11px}.field span{font-size:10px;font-weight:800;color:#53665e}
.field input,.field select,.field textarea{width:100%;border:1px solid #dcded9;border-radius:9px;background:#fbfcfb;padding:11px 12px;font:500 12px "DM Sans",sans-serif;color:#17382e;outline:none}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#3f8b6e;box-shadow:0 0 0 3px #3f8b6e12}.field textarea{min-height:68px;resize:vertical}
.two,.time-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.reserve-submit{width:100%;border:0;border-radius:10px;background:var(--green);color:#fff;padding:14px 16px;font:800 13px "DM Sans",sans-serif;display:flex;justify-content:space-between;cursor:pointer}.reserve-submit:hover{background:var(--green2)}
.form-note{display:block;color:#87938e;font-size:9px;line-height:1.45;margin-top:8px}.notice{border-radius:9px;padding:10px 12px;font-size:10px;margin:10px 0}.notice.ok{background:#eaf6ef;color:#176443}.notice.error{background:#fff0ee;color:#a43c35}
.addon-notice{margin:16px 0;padding:13px 14px;border:1px solid #d9c98d;background:#fbf7e9;border-radius:12px;display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center}.addon-icon{width:38px;height:38px;border-radius:10px;background:#0b4a3d;color:#f0c33c;display:grid;place-items:center;font-size:20px}.addon-notice b,.addon-notice small{display:block}.addon-notice b{font-size:12px;color:#123e35}.addon-notice small{margin-top:3px;font-size:9px;color:#7b817c;line-height:1.35}.addon-notice a{font-size:9px;font-weight:800;color:#0b4a3d;text-decoration:none;white-space:nowrap}

@media(max-width:1250px){.service-picker{grid-template-columns:repeat(4,1fr)}.service-showcase{grid-template-columns:1fr}.showcase-gallery{grid-template-columns:minmax(0,1fr) 110px}}
@media(max-width:1150px){.booking-workspace{grid-template-columns:1fr}.booking-card{position:static}.ks-global-header{position:relative}}
@media(max-width:780px){.service-picker{grid-template-columns:repeat(2,1fr)}.showcase-gallery{grid-template-columns:1fr}.showcase-thumbs{grid-template-columns:repeat(4,1fr)}.showcase-main{min-height:260px}}
@media(max-width:650px){.relax-page main{padding:0 14px 40px}.relax-intro{padding:32px 4px 20px}.service-choice{min-height:180px}.compact-calendar,.booking-card,.service-showcase{padding:17px}.booking-heading{align-items:flex-start;flex-direction:column}.month-nav{width:100%;justify-content:space-between}.calendar{gap:4px}.day{height:43px}.two,.time-fields,.showcase-details{grid-template-columns:1fr}.choice-head{padding:10px 12px 6px}.choice-price{padding:8px 12px 12px}.showcase-thumb{min-height:60px}}
@media(max-width:560px){.addon-notice{grid-template-columns:38px 1fr}.addon-notice a{grid-column:2;text-align:left}}

/* Rezervācijas sākuma/beigu datuma un laika intervāli */
.booking-interval{background:#fbf8f0;border:1px solid #e5dbc5;border-radius:13px;padding:13px;margin-bottom:15px}
.interval-label{font-size:10px;font-weight:800;letter-spacing:.1em;color:#956d17;margin-bottom:12px}
.interval-hint{font-size:11px;color:#64736d;line-height:1.45;margin:2px 0 8px}
.interval-status{font-size:12px;line-height:1.5;min-height:0}
.interval-status.invalid{color:#a02f28;font-weight:700}
.interval-status.valid{color:#146443;font-weight:700}
.day.in-range{background:#e2f1e7;border-color:#95c4a5}
.day.partly-busy:not(.selected){border-bottom:3px solid #e6a13c}
.day.selected{background:#073b31;color:#fff;border-color:#073b31}
@media(max-width:650px){.booking-interval .two{grid-template-columns:1fr 1fr;gap:8px}.booking-interval{padding:11px}.booking-interval .field input{padding:9px 7px;font-size:12px}}

.official-quote{margin:10px 0 18px;padding:12px 14px;border-radius:12px;border:1px solid #dfd7bc;background:#f9f5e9;color:#124335;line-height:1.5;font-size:12px;font-weight:700}
