
.sac22-directory,.sac22-planner{color:var(--sac22-text);background:linear-gradient(145deg,var(--sac22-bg),#fff);border:1px solid rgba(36,50,64,.1);border-radius:20px;padding:clamp(24px,4vw,46px)}.sac22-front-header span{color:var(--sac22-accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.sac22-front-header h2{font-family:Georgia,serif;font-size:clamp(31px,4vw,48px);margin:8px 0}.sac22-front-header p{font-size:17px}
.sac22-filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin:24px 0}.sac22-filters input,.sac22-filters select{min-height:44px;border:1px solid #d9d4ca;border-radius:10px;padding:8px 11px;background:#fff}.sac22-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sac22-card{background:#fff;border:1px solid rgba(36,50,64,.12);border-radius:15px;overflow:hidden;box-shadow:0 8px 25px rgba(36,50,64,.06)}.sac22-card>img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.sac22-card-body{padding:18px}.sac22-card-body small{color:var(--sac22-accent);font-weight:700;text-transform:uppercase}.sac22-card h3{font-family:Georgia,serif;font-size:22px;margin:7px 0}.sac22-featured{display:inline-block;background:var(--sac22-accent);color:#fff;border-radius:999px;padding:5px 8px;font-size:11px;margin-bottom:8px}.sac22-meta{display:flex;gap:7px;flex-wrap:wrap}.sac22-meta span{background:var(--sac22-bg);border-radius:999px;padding:5px 8px;font-size:12px}.sac22-actions{display:flex;gap:8px;margin-top:14px}.sac22-actions a,.sac22-plan-body>a{border:1px solid #d9d4ca;border-radius:999px;padding:8px 11px;color:var(--sac22-text);text-decoration:none}
.sac22-planner-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;margin-top:24px}.sac22-planner-form,.sac22-plan-output{background:#fff;border:1px solid rgba(36,50,64,.12);border-radius:15px;padding:20px}.sac22-planner-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sac22-planner-form label{font-weight:600}.sac22-planner-form input,.sac22-planner-form select,.sac22-planner-form textarea{width:100%;margin-top:6px;border:1px solid #d9d4ca;border-radius:9px;padding:9px}.sac22-full,.sac22-plan-submit{grid-column:1/-1}.sac22-plan-submit{border:0;border-radius:999px;background:var(--sac22-accent);color:#fff;min-height:50px;font-weight:700}.sac22-placeholder,.sac22-loading,.sac22-error{text-align:center;padding:55px 20px}.sac22-placeholder span{font-size:40px;color:var(--sac22-accent)}.sac22-loading i{display:inline-block;width:36px;height:36px;border:3px solid #eee;border-top-color:var(--sac22-accent);border-radius:50%;animation:sac22spin .8s linear infinite}@keyframes sac22spin{to{transform:rotate(360deg)}}.sac22-result-head{display:flex;justify-content:space-between;gap:12px}.sac22-result-head span{color:var(--sac22-accent);font-size:11px;font-weight:700;text-transform:uppercase}.sac22-result-head h2{font-family:Georgia,serif;margin:5px 0}.sac22-result-head button{border:1px solid #ddd;border-radius:999px;background:#fff;padding:8px 10px;margin-left:5px}.sac22-plan-item{display:grid;grid-template-columns:78px 1fr;gap:13px;padding-bottom:20px;position:relative}.sac22-plan-item:before{content:"";position:absolute;left:37px;top:40px;bottom:0;width:1px;background:#ddd}.sac22-time{color:var(--sac22-accent);font-weight:700;padding-top:7px}.sac22-plan-body{position:relative;background:var(--sac22-bg);border-radius:12px;padding:16px}.sac22-plan-body>b{position:absolute;left:-38px;top:7px;width:27px;height:27px;display:flex;align-items:center;justify-content:center;background:var(--sac22-accent);color:#fff;border-radius:50%}.sac22-plan-body small{color:var(--sac22-accent);font-weight:700;text-transform:uppercase}.sac22-plan-body h3{font-family:Georgia,serif;font-size:22px;margin:7px 0}.sac22-break,.sac22-tip{background:#fff;padding:10px;border-left:3px solid var(--sac22-accent)}.sac22-source{font-size:11px;color:#777;text-align:right}
.sac22-booklet-overlay{position:fixed;inset:0;z-index:999999;background:#ebe7de;overflow:auto;padding:72px 20px 35px}.sac22-booklet-toolbar{position:fixed;top:0;left:0;right:0;z-index:1000000;background:#243240;padding:12px 20px;display:flex;justify-content:flex-end;gap:10px}.sac22-booklet-toolbar button{border:0;border-radius:999px;padding:10px 15px}.sac22-pdf{background:#c6a86a;color:#fff}.sac22-booklet-doc{width:min(210mm,100%);margin:auto;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.18)}.sac22-booklet-cover,.sac22-booklet-page,.sac22-booklet-end{box-sizing:border-box;min-height:297mm;padding:25mm 22mm;page-break-after:always}.sac22-booklet-cover{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#f7f4ee,#fff)}.sac22-booklet-cover span{color:#c6a86a;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.sac22-booklet-cover h1,.sac22-booklet-page h2,.sac22-booklet-end h2{font-family:Georgia,serif}.sac22-booklet-cover h1{font-size:43px}.sac22-booklet-page>img{display:block;width:calc(100% + 44mm);height:105mm;object-fit:cover;margin:-25mm -22mm 18mm}.sac22-booklet-page h2{font-size:31px}.sac22-booklet-page>p{font-size:16px;line-height:1.7}.sac22-booklet-facts{display:flex;gap:8px}.sac22-booklet-facts span{background:#f7f4ee;border-radius:999px;padding:7px 10px}.sac22-booklet-end{display:flex;flex-direction:column;justify-content:center;text-align:center;background:#243240;color:#fff}.sac22-booklet-end h2{color:#fff;font-size:43px}body.sac22-booklet-open{overflow:hidden}
@media(max-width:1000px){.sac22-card-grid{grid-template-columns:repeat(2,1fr)}.sac22-planner-layout{grid-template-columns:1fr}}@media(max-width:650px){.sac22-filters,.sac22-planner-form{grid-template-columns:1fr}.sac22-full,.sac22-plan-submit{grid-column:auto}.sac22-card-grid{grid-template-columns:1fr}.sac22-result-head{display:block}}
@media print{body.sac22-booklet-open>*:not(.sac22-booklet-overlay){display:none!important}body.sac22-booklet-open .sac22-booklet-overlay{position:static!important;padding:0!important;background:#fff!important;overflow:visible!important}body.sac22-booklet-open .sac22-booklet-toolbar{display:none!important}body.sac22-booklet-open .sac22-booklet-doc{width:210mm!important;margin:0!important;box-shadow:none!important}@page{size:A4;margin:0}}

.sac22-luxury-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.sac22-brandlockup{display:flex;gap:18px;align-items:center}.sac22-brandlockup>img{width:76px;height:76px;object-fit:contain}
.sac22-view-toggle{display:flex;gap:6px;background:#fff;border:1px solid rgba(36,50,64,.12);padding:5px;border-radius:999px}.sac22-view-toggle button{border:0;background:transparent;border-radius:999px;padding:8px 12px;cursor:pointer}.sac22-view-toggle button.is-active{background:var(--sac22-text);color:#fff}
.sac22-quick-filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.sac22-quick-filters button{border:1px solid rgba(36,50,64,.14);background:#fff;border-radius:999px;padding:9px 13px;cursor:pointer}.sac22-quick-filters button.is-active{background:var(--sac22-accent);color:#fff;border-color:var(--sac22-accent)}
.sac22-card{position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.sac22-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(36,50,64,.12);border-color:rgba(198,168,106,.55)}
.sac22-fav{position:absolute;right:12px;top:12px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.94);font-size:20px;color:#9c7d3c;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.sac22-card.is-favorite{outline:2px solid rgba(198,168,106,.45)}
.sac22-badges{display:flex;gap:5px;flex-wrap:wrap;margin:7px 0}.sac22-badges span{background:#f1ede4;border-radius:999px;padding:4px 7px;font-size:10px;color:#5e594e}
.sac22-directory-footer{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:24px}.sac22-load-more{border:0;border-radius:999px;background:var(--sac22-text);color:#fff;padding:11px 18px;cursor:pointer}.sac22-count{font-size:12px;color:#74797d}
.sac22-directory.is-list-view .sac22-card-grid{grid-template-columns:1fr}.sac22-directory.is-list-view .sac22-card{display:grid;grid-template-columns:280px 1fr}.sac22-directory.is-list-view .sac22-card>img{height:100%;aspect-ratio:auto}.sac22-directory.is-list-view .sac22-card-body{padding:24px}
.sac22-alternative{margin-top:24px;padding:18px;border-radius:13px;background:#fff;border:1px solid rgba(36,50,64,.12)}.sac22-alternative h3{font-family:Georgia,serif;margin-top:0}.sac22-alternative>div{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #eee}.sac22-alternative a{border:1px solid #ddd;border-radius:999px;padding:7px 10px;text-decoration:none}
.sac22-booklet-logo{max-width:120px;max-height:90px;object-fit:contain;margin-bottom:28px}.sac22-booklet-cover small{margin-top:16px;color:#8b8355;letter-spacing:.08em;text-transform:uppercase}
.sac22-qr{width:110px;margin-top:18px}.sac22-qr svg{display:block;width:100%;height:auto}.sac22-qr small{display:block;margin-top:5px;text-align:center;color:#777}
@media(max-width:800px){.sac22-luxury-header{display:block}.sac22-view-toggle{display:inline-flex;margin-top:14px}.sac22-directory.is-list-view .sac22-card{grid-template-columns:1fr}.sac22-directory.is-list-view .sac22-card>img{height:auto}}

.sac31-designer{color:var(--sac22-text);background:linear-gradient(145deg,var(--sac22-bg),#fff);border:1px solid rgba(36,50,64,.1);border-radius:22px;padding:clamp(24px,4vw,48px)}.sac31-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;margin-top:24px}.sac31-form,.sac31-output{background:#fff;border:1px solid rgba(36,50,64,.12);border-radius:16px;padding:22px;box-shadow:0 12px 32px rgba(36,50,64,.06)}.sac31-form>label,.sac31-grid label{display:block;font-weight:600;margin-bottom:13px}.sac31-form input,.sac31-form select,.sac31-form textarea{width:100%;margin-top:6px;border:1px solid #d9d4ca;border-radius:10px;padding:10px}.sac31-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sac31-form fieldset{border:1px solid #ddd;border-radius:12px;padding:14px;margin:8px 0 18px}.sac31-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.sac31-choices label{cursor:pointer}.sac31-choices input{position:absolute;opacity:0}.sac31-choices span{display:block;border:1px solid #ddd;border-radius:9px;padding:10px}.sac31-choices input:checked+span{border-color:var(--sac22-accent);background:var(--sac22-bg)}.sac31-submit{width:100%;border:0;border-radius:999px;background:var(--sac22-accent);color:#fff;min-height:52px;font-weight:700}.sac31-result-head{display:flex;justify-content:space-between;gap:14px}.sac31-result-head span,.sac31-day>header span{color:var(--sac22-accent);font-size:11px;font-weight:700;text-transform:uppercase}.sac31-result-head h2,.sac31-day h3,.sac31-stop-body h4{font-family:Georgia,serif}.sac31-result-head button{border:1px solid #ddd;border-radius:999px;background:#fff;padding:8px 11px}.sac31-welcome{margin:18px 0;padding:14px;background:var(--sac22-bg);border-radius:12px}.sac31-day{margin:28px 0;padding-top:20px;border-top:1px solid #e8e2d8}.sac31-day h3{font-size:28px;margin:6px 0}.sac31-stop{display:grid;grid-template-columns:84px 1fr;gap:14px;position:relative;padding-bottom:20px}.sac31-stop:before{content:"";position:absolute;left:40px;top:42px;bottom:0;width:1px;background:#ddd}.sac31-time{color:var(--sac22-accent);font-weight:700;padding-top:8px}.sac31-stop-body{position:relative;background:var(--sac22-bg);border-radius:13px;padding:17px}.sac31-stop-body>b{position:absolute;left:-42px;top:7px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sac22-accent);color:#fff}.sac31-stop-body small{color:var(--sac22-accent);text-transform:uppercase;font-weight:700}.sac31-stop-body h4{font-size:23px;margin:7px 0}.sac31-tip{margin:12px 0;padding:10px;background:#fff;border-left:3px solid var(--sac22-accent)}.sac31-actions{display:flex;gap:8px;flex-wrap:wrap}.sac31-actions a{border:1px solid #d9d4ca;border-radius:999px;padding:7px 10px;text-decoration:none}.sac31-alternatives,.sac31-summary{margin:18px 0;padding:17px;border-radius:12px;background:#fff;border:1px solid #e4dfd6}.sac31-alternatives>div{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:9px 0;border-top:1px solid #eee}@media(max-width:950px){.sac31-layout{grid-template-columns:1fr}}@media(max-width:600px){.sac31-grid,.sac31-choices{grid-template-columns:1fr}.sac31-result-head{display:block}}
