/**/
/**/
/**/
:root{
  --ink:#102A43;--ink-2:#243B53;--muted:#627D98;--line:#D9E2EC;--line-strong:#BCCCDC;
  --canvas:#F7F9FC;--paper:#FFFFFF;--wash:#EEF4F7;--sand:#F6F0E4;--brand:#0F5E69;--brand-2:#137C8B;
  --accent:#C48A37;--good:#176B55;--warn:#9A6700;--bad:#B42318;--info:#335C9B;
  --r-xs:10px;--r-sm:14px;--r:20px;--r-lg:28px;--r-xl:36px;
  --shadow-sm:0 2px 8px rgba(16,42,67,.06);--shadow:0 18px 48px rgba(16,42,67,.10);
  --focus:0 0 0 3px rgba(19,124,139,.26);--nav-h:68px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Apple SD Gothic Neo","Noto Sans KR",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}
:focus-visible{outline:3px solid #137C8B;outline-offset:3px}::selection{background:#CBE7EA}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.shell{width:min(1180px,100%);margin:auto;padding:18px 20px 96px}.app-frame{min-height:100dvh}.app-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--canvas) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid rgba(188,204,220,.55)}
.header-inner{width:min(1180px,100%);margin:auto;padding:12px 20px;display:flex;align-items:center;gap:12px;min-height:68px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,var(--ink),var(--brand));display:grid;place-items:center;color:white;box-shadow:var(--shadow-sm)}.brand-name{font-weight:900;letter-spacing:-.04em}.brand-sub{display:block;color:var(--muted);font-size:0.6875rem;font-weight:700;letter-spacing:.03em}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.icon-btn,.btn,.chip,.seg-btn,.nav-btn,.text-btn{border:0}.icon-btn{width:44px;height:44px;border-radius:14px;background:var(--paper);display:grid;place-items:center;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.icon-btn svg{width:20px;height:20px}.text-btn{background:transparent;color:var(--brand);font-weight:850;padding:8px 10px;border-radius:10px}.btn{min-height:48px;border-radius:15px;padding:0 17px;font-weight:850;display:inline-flex;gap:9px;align-items:center;justify-content:center;border:1px solid transparent}.btn svg{width:19px;height:19px}.btn-primary{background:var(--ink);color:white}.btn-primary:hover{background:#173B5C}.btn-secondary{background:var(--paper);border-color:var(--line)}.btn-soft{background:#E8F3F4;color:var(--brand)}.btn-danger{background:#FCECEB;color:var(--bad)}.btn-block{width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn-row{display:flex;gap:9px;flex-wrap:wrap}.btn-row>.btn{flex:1}
.hero{margin-top:18px;position:relative;overflow:hidden;min-height:300px;border-radius:var(--r-xl);background:linear-gradient(135deg,#E9F4F3 0%,#F7F2E8 64%,#EEF3F8 100%);border:1px solid #D9E7E6;box-shadow:var(--shadow-sm);display:grid;grid-template-columns:1.25fr .75fr}.hero-copy{position:relative;z-index:2;padding:34px}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:0.75rem;font-weight:900;letter-spacing:.04em;color:var(--brand);text-transform:uppercase}.hero h1{font-size:clamp(2.125rem,5vw,3.875rem);line-height:1.02;letter-spacing:-.065em;margin:10px 0 13px;max-width:750px}.hero p{max-width:630px;color:var(--ink-2);margin:0}.hero-art{align-self:stretch;min-height:260px;background:url('../assets/hero-hotel.svg') center/cover no-repeat;opacity:.94}.hero-actions{margin-top:22px;display:flex;flex-wrap:wrap;gap:9px}
.section{margin-top:30px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:13px}.section-title h2{margin:0;font-size:1.4375rem;letter-spacing:-.035em}.section-title p{margin:4px 0 0;color:var(--muted);font-size:0.875rem}.section-link{font-size:0.8125rem;font-weight:850;color:var(--brand)}
.quick-row,.chip-row{display:flex;gap:9px;overflow:auto;padding:2px 2px 5px;scrollbar-width:none}.quick-row::-webkit-scrollbar,.chip-row::-webkit-scrollbar{display:none}.chip{min-height:42px;white-space:nowrap;border-radius:999px;padding:0 14px;background:var(--paper);border:1px solid var(--line);font-weight:800;display:inline-flex;align-items:center;gap:8px}.chip svg{width:18px;height:18px}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.chip[data-tone="warm"]{background:#FFF9ED;border-color:#EDDBB8;color:#805A16}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm)}.card-pad{padding:17px}.action-card{padding:17px;text-align:left;min-height:138px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.action-card:hover{transform:translateY(-2px);border-color:#91AFB7;box-shadow:var(--shadow)}.card-icon{width:44px;height:44px;border-radius:15px;background:#ECF4F5;color:var(--brand);display:grid;place-items:center}.card-icon svg{width:22px;height:22px}.card-title{font-size:1rem;font-weight:900;letter-spacing:-.025em;margin-top:12px}.card-sub{font-size:0.75rem;color:var(--muted);margin-top:3px}.meta-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;font-size:0.6875rem;font-weight:900;background:#E9F6F1;color:var(--good)}.badge-neutral{background:#EFF3F7;color:#52697E}.badge-warn{background:#FFF5DC;color:var(--warn)}.badge-bad{background:#FDEDEC;color:var(--bad)}.price{font-weight:950;font-size:1.3125rem;letter-spacing:-.035em}.muted{color:var(--muted)}.tiny{font-size:0.6875rem}.small{font-size:0.8125rem}.divider{height:1px;background:var(--line);margin:15px 0}.row{display:flex;align-items:center;gap:10px}.row-between{justify-content:space-between}.stack{display:grid;gap:10px}
.experience-card{overflow:hidden}.experience-media{height:148px;position:relative;background:var(--wash)}.experience-media img{width:100%;height:100%;object-fit:cover}.experience-body{padding:15px}.experience-title{font-weight:900;font-size:1.0625rem;letter-spacing:-.025em}.experience-footer{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:13px}
.search-box{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:6px 7px 6px 14px;display:flex;align-items:center;gap:9px;box-shadow:var(--shadow-sm)}.search-box svg{width:19px;color:var(--muted)}.search-box input{border:0;outline:0;background:transparent;width:100%;min-height:42px}.search-box .btn{min-height:40px}
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.view-switch{display:flex;gap:4px;background:#E9EEF3;padding:4px;border-radius:14px}.seg-btn{min-height:36px;padding:0 12px;border-radius:10px;background:transparent;font-weight:800}.seg-btn.active{background:white;box-shadow:var(--shadow-sm)}
.map-panel{height:330px;border:1px solid var(--line);border-radius:var(--r-lg);background:url('../assets/map-soft.svg') center/cover no-repeat;position:relative;overflow:hidden}.map-pin{position:absolute;transform:translate(-50%,-50%);background:var(--ink);color:white;border:3px solid white;border-radius:999px;padding:8px 10px;font-size:0.75rem;font-weight:900;box-shadow:0 6px 18px rgba(16,42,67,.2)}
.detail-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.detail-media{min-height:390px;border-radius:var(--r-lg);overflow:hidden;background:var(--wash)}.detail-media img{width:100%;height:100%;object-fit:cover}.detail-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column}.detail-panel h1{font-size:2rem;letter-spacing:-.045em;margin:7px 0}.detail-panel .btn-primary{margin-top:auto}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.fact{padding:12px;border-radius:14px;background:#F5F8FA}.fact b{display:block;font-size:0.8125rem}.fact span{font-size:0.6875rem;color:var(--muted)}
.timeline{display:grid;gap:9px}.time-row{display:grid;grid-template-columns:70px 1fr;gap:10px}.time-label{font-weight:900;color:var(--brand);padding-top:11px}.time-card{background:white;border:1px solid var(--line);border-radius:16px;padding:12px 14px}.time-card.selected{border-color:#7DA9B1;background:#F2F9F8}.bundle-summary{position:sticky;bottom:calc(var(--nav-h) + 12px);z-index:10;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow);display:flex;align-items:center;gap:14px}.bundle-summary .btn{margin-left:auto}
.flow-steps{display:flex;gap:5px;overflow:auto;padding:3px 0 12px}.flow-step{white-space:nowrap;display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:white;padding:7px 9px;border-radius:999px;font-size:0.6875rem;font-weight:800;color:var(--muted)}.flow-step.on{background:#E8F3F4;color:var(--brand);border-color:#A7CACD}.flow-step.done{background:var(--ink);color:white;border-color:var(--ink)}
.price-table{display:grid;gap:9px}.price-line{display:flex;justify-content:space-between;gap:10px}.price-line.total{border-top:1px solid var(--line);padding-top:11px;font-size:1.125rem;font-weight:950}.notice{border-radius:15px;background:#FFF9ED;border:1px solid #F1E1C2;padding:12px 14px;color:#6D4E18;font-size:0.8125rem}.notice-info{background:#EFF6FF;border-color:#CFDEEF;color:#335C7D}.success-box{border-radius:20px;background:#EDF8F4;border:1px solid #BCE2D4;padding:18px}.status-orb{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#D7F0E7;color:var(--good);margin-bottom:11px}.status-orb svg{width:30px;height:30px}
.pass-card{position:relative;overflow:hidden;background:linear-gradient(140deg,#102A43 0%,#154F5C 100%);color:white;border-radius:28px;padding:22px;box-shadow:var(--shadow)}.pass-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-95px;background:rgba(255,255,255,.08)}.pass-card .badge{background:rgba(255,255,255,.15);color:white}.qr-demo{width:126px;height:126px;background:white;border-radius:18px;padding:8px}.pass-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.pass-actions .btn{padding:0 8px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.14);color:white;min-height:42px;font-size:0.75rem}
.record-item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line)}.record-item:last-child{border-bottom:0}.record-date{font-weight:900;color:var(--brand)}
.bottom-nav{position:fixed;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:30;width:min(620px,calc(100% - 22px));height:var(--nav-h);background:rgba(16,42,67,.96);backdrop-filter:blur(18px);display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.12);border-radius:22px;box-shadow:0 14px 35px rgba(16,42,67,.28);padding:5px}.nav-btn{background:transparent;color:#C9D4DE;border-radius:17px;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;font-size:0.625rem;font-weight:800}.nav-btn svg{width:20px;height:20px}.nav-btn.active{background:rgba(255,255,255,.12);color:white}
.sheet-backdrop{position:fixed;inset:0;background:rgba(10,28,45,.32);z-index:60;display:none;align-items:end;justify-content:center}.sheet-backdrop.open{display:flex}.sheet{width:min(720px,100%);max-height:min(88dvh,880px);overflow:auto;background:white;border-radius:28px 28px 0 0;padding:10px 20px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -22px 70px rgba(16,42,67,.22)}.sheet-handle{width:42px;height:5px;border-radius:999px;background:#D9E2EC;margin:3px auto 13px}.sheet-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.sheet h2{font-size:1.5rem;letter-spacing:-.035em;margin:0}.sheet p{margin:4px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:15px}.service-btn{border:1px solid var(--line);background:white;border-radius:16px;min-height:100px;padding:13px;text-align:left}.service-btn .card-icon{width:36px;height:36px;border-radius:12px}.service-btn b{display:block;margin-top:8px}.service-btn small{color:var(--muted)}
.form-grid{display:grid;gap:12px}.field{display:grid;gap:6px}.field label{font-size:0.75rem;font-weight:850}.input,select.input,textarea.input{width:100%;border:1px solid var(--line-strong);border-radius:13px;background:white;padding:11px 12px;min-height:46px}.input:focus{border-color:var(--brand);outline:none;box-shadow:var(--focus)}
.empty{padding:36px 20px;text-align:center;border:1px dashed var(--line-strong);border-radius:20px;color:var(--muted);background:white}.empty .card-icon{margin:auto}.skeleton{background:linear-gradient(90deg,#EEF2F6,#F8FAFC,#EEF2F6);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:12px}.skeleton-line{height:15px}.skeleton-card{height:145px}@keyframes shimmer{to{background-position:-200% 0}}
.demo-ribbon{position:fixed;right:14px;top:76px;z-index:45;background:#FFF3C8;color:#72510C;border:1px solid #E7CE7C;border-radius:999px;padding:5px 9px;font-size:0.625rem;font-weight:950;box-shadow:var(--shadow-sm)}
.admin-shell,.partner-shell{width:min(1320px,100%);margin:auto;padding:20px}.console-head{display:flex;gap:12px;align-items:center;margin-bottom:18px}.console-head h1{font-size:1.625rem;margin:0;letter-spacing:-.04em}.console-tabs{display:flex;gap:7px;overflow:auto;margin:15px 0}.console-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:16px}.metric b{font-size:1.5625rem;display:block;letter-spacing:-.04em}.metric span{font-size:0.75rem;color:var(--muted)}.console-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:13px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:0.8125rem}.table th,.table td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.table th{font-size:0.6875rem;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.03em}.progress{height:8px;border-radius:999px;background:#E6ECF2;overflow:hidden}.progress>span{display:block;height:100%;border-radius:inherit;background:var(--brand)}.switch{position:relative;width:46px;height:28px;background:#C9D4DE;border-radius:999px;border:0;padding:0}.switch:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:white;left:3px;top:3px;transition:.16s;box-shadow:0 1px 5px rgba(0,0,0,.15)}.switch.on{background:var(--brand)}.switch.on:after{transform:translateX(18px)}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kanban-col{background:#F1F5F8;border-radius:18px;padding:11px}.kanban-col h3{font-size:0.8125rem;margin:2px 4px 9px}.kanban-card{background:white;border:1px solid var(--line);border-radius:13px;padding:10px;margin-bottom:8px}.calendar-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.day-cell{background:white;border:1px solid var(--line);border-radius:13px;padding:9px;min-height:90px}.day-cell b{font-size:0.75rem}.day-cell .bar{height:6px;border-radius:9px;background:#DDE8E9;margin-top:7px}.day-cell .bar.hot{background:#D3A75F}.day-cell .bar.full{background:#C95C53}
.release-card{border-left:4px solid var(--brand)}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr}.hero-art{min-height:190px}.detail-hero{grid-template-columns:1fr}.detail-media{min-height:270px}.console-grid{grid-template-columns:repeat(2,1fr)}.console-layout{grid-template-columns:1fr}.kanban{grid-template-columns:1fr}.calendar-strip{overflow:auto;grid-template-columns:repeat(7,minmax(110px,1fr))}}
@media(max-width:620px){.shell{padding:12px 14px 92px}.header-inner{padding:9px 14px}.brand-sub{display:none}.hero{min-height:0;border-radius:28px}.hero-copy{padding:23px 20px}.hero h1{font-size:2.375rem}.hero-art{min-height:145px}.section{margin-top:25px}.section-head{align-items:center}.section-title h2{font-size:1.25rem}.grid,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.action-card{min-height:124px;padding:14px}.experience-media{height:118px}.service-grid{grid-template-columns:repeat(2,1fr)}.fact-grid{grid-template-columns:1fr 1fr}.bundle-summary{bottom:calc(var(--nav-h) + 10px);display:grid;grid-template-columns:1fr auto}.bundle-summary .btn{grid-row:1/3;grid-column:2}.pass-actions{grid-template-columns:1fr}.admin-shell,.partner-shell{padding:14px}.console-grid{grid-template-columns:repeat(2,1fr)}.sheet{padding-left:14px;padding-right:14px}.header-actions .btn-secondary{display:none}}
@media(min-width:1050px){.bottom-nav{left:20px;top:96px;bottom:auto;transform:none;width:76px;height:auto;grid-template-columns:1fr;padding:6px}.bottom-nav .nav-btn{min-height:65px}.app-frame .shell{padding-left:114px}.app-frame .header-inner{padding-left:114px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition:none!important}}
/**/
.shell[tabindex="-1"]:focus{outline:none}

/**/
.global-toast{position:fixed;z-index:1000;inset-inline:1rem;bottom:calc(5rem + env(safe-area-inset-bottom));max-inline-size:36rem;margin-inline:auto;padding:1rem 1.25rem;border:1px solid #dce6dd;border-radius:1rem;background:#20392d;color:#fff;font:inherit;line-height:1.5;overflow-wrap:anywhere;box-shadow:0 8px 24px #142d2526;pointer-events:none}

/**/
.signin-methods{margin-block-start:1rem;min-inline-size:0}.signin-method-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding-block:.75rem;border-block-end:1px solid var(--line,#dce3d9)}.signin-method-row>span{display:flex;align-items:center;gap:.5rem;min-inline-size:0;overflow-wrap:anywhere}.signin-method-row .btn{min-block-size:48px;min-inline-size:48px}#signinRemoveForm{min-inline-size:0}
.external-signin .btn-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.65rem}.external-signin .btn{min-height:48px;min-width:0;white-space:normal;overflow-wrap:anywhere}.signin-divider{margin:1.5rem 0 .75rem;color:var(--muted);font-size:.875rem}.signin-terms{margin:1rem 0;overflow-wrap:anywhere}#externalEnrollForm{min-width:0}#externalEnrollForm .check-label{margin:1rem 0;align-items:flex-start}
/**/
.replay-preview-video{display:block;width:100%;max-height:25rem;margin-block:12px;background:#111;border-radius:12px}

/**/
/**/
/**/
:root{--muted:#4D657D;--r15-stroke:#CAD8DF;--r15-soft:#EDF5F3;--safe-bottom:max(16px,env(safe-area-inset-bottom));}
html{scroll-padding-top:100px}body{font-size:1rem}button:disabled{cursor:not-allowed}.tiny{font-size:0.75rem}.small{font-size:0.875rem}
.skip-link{position:fixed;left:12px;top:-70px;z-index:100;background:var(--ink);color:white;padding:12px 18px;border-radius:10px}.skip-link:focus{top:12px}
.app-header{background:#F7F9FC;backdrop-filter:none}.header-inner{min-height:72px}.brand-name{font-size:1.125rem}.brand-sub{font-size:0.625rem;letter-spacing:.04em;color:var(--muted);margin-top:1px}
.demo-note{font-size:0.75rem;text-align:center;color:#594620;background:#F7F0E0;padding:7px 18px;min-height:32px;line-height:1.4}
.shell{padding-bottom:120px}.hero{margin-top:3px;min-height:244px}.hero h1{font-size:2.875rem;line-height:1.15;letter-spacing:-.055em;white-space:pre-line}.hero-copy{padding:28px 30px}.hero p{font-size:0.9375rem;max-width:430px}.hero-art{min-height:245px;background-size:cover}.eyebrow{font-size:0.6875rem;letter-spacing:.1em;white-space:nowrap}.hero-actions{margin-top:20px}
.page-heading{display:flex;justify-content:space-between;align-items:start;gap:18px;margin:16px 0 22px}.page-heading h1{font-size:1.875rem;letter-spacing:-.045em;line-height:1.2;margin:0 0 8px}.page-heading p{font-size:0.875rem;color:var(--muted);margin:0;max-width:560px}.page-heading .icon-btn{flex-shrink:0}
.section-head{align-items:center}.section-title p{font-size:0.875rem}.text-btn{min-height:44px;display:inline-flex;align-items:center;gap:8px}.text-btn svg{width:20px;height:20px}.btn,.chip,.seg-btn{min-height:44px}.btn{min-height:48px}.btn:active,.chip:active{transform:translateY(1px)}
.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.category-tile{display:flex;align-items:center;gap:12px;padding:14px 16px;min-height:78px;text-align:left;border-radius:20px;border:1px solid var(--line);background:white;font-size:0.9375rem;font-weight:750}.category-tile .card-icon{flex-shrink:0;background:var(--r15-soft);width:40px;height:40px}.category-tile:hover{border-color:var(--brand)}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.experience-media{height:182px}.experience-media img{aspect-ratio:16/10}.experience-title{font-size:1.125rem;line-height:1.4;margin:6px 0}.experience-body .product-open{display:block;width:100%;padding:0;background:none;border:none;text-align:left;min-height:52px}.experience-footer .price{font-size:1.375rem}.experience-footer{align-items:center}.experience-body{padding:18px}.badge{font-size:0.75rem}.experience-footer .icon-btn{flex-shrink:0}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:15px 0 20px}.toolbar .field{min-width:116px;flex:1}.toolbar .field:first-child{flex:2}.field label{font-size:0.8125rem}.search-box{margin:6px 0 12px}.search-box input{font-size:1rem}.count-label{font-size:0.8125rem;color:var(--muted);margin:0 0 12px}.breadcrumbs{display:flex;gap:5px;flex-wrap:wrap;align-items:center;font-size:0.8125rem;color:var(--muted);margin:4px 0 12px}.breadcrumbs button{min-height:44px}.pill-remove{border:1px solid var(--line);border-radius:50px;padding:6px 12px;min-height:44px;background:white;display:inline-flex;align-items:center;gap:8px}.pill-remove svg{width:16px}
.detail-hero{gap:24px}.detail-media{min-height:320px}.detail-panel{padding:26px}.detail-panel h1{font-size:1.875rem;line-height:1.25}.detail-panel .facts{display:grid;gap:10px;margin:16px 0 20px}.facts .fact{display:flex;justify-content:space-between;gap:10px;align-items:center}.facts .fact b{font-size:0.9375rem}.facts .fact span{font-size:0.8125rem}.slot-options{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.slot-choice{border:1px solid var(--r15-stroke);border-radius:14px;background:#fff;padding:11px 14px;min-height:50px;font-weight:650}.slot-choice.active{background:var(--ink);color:white;border-color:var(--ink)}.detail-panel .fine-print{font-size:0.8125rem;color:var(--muted);margin:10px 0 16px}.suggestions{margin-top:32px}
.plan-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);gap:24px;align-items:start}.plan-card{padding:22px}.plan-line{position:relative;padding:16px 0 20px 20px;border-left:2px solid #ADCBC9;margin-left:5px}.plan-line:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:var(--brand);left:-6px;top:22px}.plan-line:last-child{padding-bottom:4px}.plan-line h3{font-size:1.0625rem;margin:7px 0 5px}.plan-line p{margin:3px 0}.plan-line .row{align-items:start}.plan-line .remove{margin-left:auto;flex-shrink:0}.plan-time{color:var(--brand);font-weight:750;font-size:0.875rem}.plan-summary{position:sticky;top:94px;padding:24px;display:grid;gap:18px}.plan-summary h2{font-size:1.25rem;margin:0}.summary-total{font-size:1.75rem;font-weight:850;letter-spacing:-.04em}.price-line{font-size:0.9375rem}.price-line.total{font-size:1.25rem}.check-label{display:flex;align-items:flex-start;gap:12px;line-height:1.6;padding:14px 0;cursor:pointer}.check-label input{width:21px;height:21px;flex:0 0 21px;margin:3px 0 0;accent-color:var(--brand)}.form-error{font-size:0.875rem;color:var(--bad);line-height:1.6}.hold-clock{font-size:2.625rem;font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:-.035em;color:var(--brand)}.hold-clock-wrap{background:var(--r15-soft);border-radius:20px;padding:22px;text-align:center}.center-panel{max-width:720px;margin:0 auto}.center-panel>.card{padding:28px}.success-box h2{line-height:1.35}.payment-status{display:flex;align-items:center;gap:12px;padding:20px;border:1px solid var(--line);border-radius:18px;margin:16px 0;background:var(--r15-soft)}
.pass-list{display:grid;gap:22px}.pass-card h2{font-size:1.5625rem;margin:10px 0;line-height:1.3}.pass-card .small{color:#D8E8E8}.pass-card:after{pointer-events:none}.pass-line{border-top:1px solid #52717E;padding-top:16px;margin-top:18px}.pass-line h3{font-size:1.125rem;margin:6px 0 14px}.pass-line .btn{font-size:0.875rem}.pass-line .btn:disabled{opacity:.55}.pass-line .badge{padding:5px 10px}.code-text{font-family:ui-monospace,SFMono-Regular,monospace;font-size:1.5rem;letter-spacing:.06em;overflow-wrap:anywhere;background:var(--r15-soft);padding:20px;border-radius:16px;margin:16px 0}.refund-state{border:1px solid var(--line);background:white;padding:12px 16px;border-radius:14px;margin-top:10px;font-size:0.875rem}.empty{padding:44px 24px}.empty h2{font-size:1.3125rem;color:var(--ink);margin:16px 0 7px}.empty p{margin:0 0 22px}.login-box{max-width:500px;margin:auto;padding:28px}.login-box .field{margin-top:16px}.login-box .btn{margin-top:20px}.profile-list{display:grid;gap:14px}.profile-section{padding:24px}.profile-section h2{font-size:1.25rem;margin:0 0 10px}.profile-section p{font-size:0.875rem;color:var(--muted)}
.tl-dialog{border:1px solid var(--line);border-radius:26px;padding:24px;width:min(590px,calc(100% - 28px));max-height:calc(100dvh - 40px);overflow:auto;color:var(--ink);box-shadow:var(--shadow)}.tl-dialog::backdrop{background:rgba(12,31,42,.44)}.dialog-head{display:flex;align-items:start;gap:14px;margin-bottom:18px}.dialog-head h2{font-size:1.4375rem;letter-spacing:-.03em;margin:7px 0;flex:1}.dialog-head h2:focus{outline:none}.dialog-head .icon-btn{flex-shrink:0}.dialog-body p{font-size:0.9375rem;line-height:1.7}.dialog-body .help-card{padding:14px 0;border-top:1px solid var(--line)}.dialog-body h3{font-size:1.0625rem;margin:0 0 6px}.dialog-body .form-grid{margin:16px 0}.dialog-body .btn-row{margin-top:20px}.error-copy{color:var(--bad)}
.bottom-nav{backdrop-filter:none;background:#102A43}.nav-btn{font-size:0.6875rem}.nav-btn.active{background:#2C475E}.nav-btn svg{width:22px;height:22px}.skeleton-static{border-radius:20px;background:#ECF1F4;height:180px}.loading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.busy-note{padding:20px;color:var(--muted)}.resume-card{display:flex;align-items:center;gap:14px;padding:18px;background:#EAF4F2;margin:18px 0;border:1px solid #BEDAD5}.resume-card .btn{margin-left:auto;flex-shrink:0}.button-link{min-height:44px;border:none;background:transparent;color:var(--brand);text-decoration:underline;font-weight:700}.overview-section{margin-top:22px}.console-grid .metric span{font-size:0.875rem}.table th{font-size:0.8125rem}.table td{font-size:0.875rem}.console-head .badge{margin-left:auto}.console-tabs .chip{flex-shrink:0}.switch{min-width:52px;min-height:44px;background:transparent;border:1px solid var(--line)}.switch:after{top:10px;left:5px;background:#758BA0}.switch.on{background:#E6F4EF;border-color:#62A58C}.switch.on:after{background:var(--brand);transform:translateX(19px)}.table .input{min-width:120px}.console-shell .notice{font-size:0.875rem}.console-head .brand-mark{flex-shrink:0}.console-shell .tl-dialog{font-size:0.9375rem}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.manual-code{letter-spacing:.05em;font-family:ui-monospace,monospace}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:1049px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-layout{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr)}}
@media(max-width:760px){.plan-layout{grid-template-columns:1fr}.plan-summary{position:static}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1.25fr .75fr}.hero-art{min-height:230px}.hero-copy{padding:25px 24px}.hero h1{font-size:2.3125rem}.hero p{font-size:0.875rem}.toolbar .field:first-child{min-width:155px}.loading-grid{grid-template-columns:1fr 1fr}.center-panel>.card{padding:22px}.console-head{flex-wrap:wrap}}
@media(max-width:520px){.shell{padding:16px 16px 120px}.header-inner{padding:10px 16px}.hero{grid-template-columns:1fr;min-height:0;border-radius:24px}.hero-copy{padding:22px 22px 24px}.hero h1{font-size:2.25rem;max-width:340px;margin-top:12px}.hero p{max-width:260px;font-size:0.875rem}.hero-art{position:absolute;right:-35px;bottom:0;width:150px;min-height:180px;opacity:.24;pointer-events:none}.hero-actions{position:relative}.hero .btn{min-height:46px}.page-heading{margin:10px 0 20px}.page-heading h1{font-size:1.6875rem}.category-tile{padding:12px;gap:10px;min-height:74px;font-size:0.875rem}.category-tile .card-icon{width:36px;height:36px}.product-grid{grid-template-columns:1fr}.experience-card{display:grid;grid-template-columns:115px 1fr;min-height:192px}.experience-media{height:100%;min-height:192px}.experience-media img{height:100%;aspect-ratio:auto}.experience-body{padding:15px 14px}.experience-title{font-size:1.0625rem}.experience-footer{margin-top:10px}.experience-footer .price{font-size:1.25rem}.experience-footer .icon-btn{width:40px;height:44px}.experience-body .tiny{font-size:0.75rem}.experience-body .meta-row{gap:5px}.detail-panel{padding:20px}.detail-media{min-height:210px;height:210px}.detail-panel h1{font-size:1.625rem}.detail-hero{gap:16px}.toolbar{gap:8px}.toolbar .field{min-width:100px}.toolbar .field:first-child{flex-basis:100%}.search-box .btn{padding:0 13px}.plan-card{padding:16px}.plan-summary{padding:20px}.pass-card{padding:22px 18px}.pass-card h2{font-size:1.4375rem}.pass-actions{grid-template-columns:1fr 1fr}.pass-actions .btn{min-height:48px}.row-between{flex-wrap:wrap}.resume-card{align-items:start;flex-wrap:wrap}.resume-card .btn{margin-left:0}.tl-dialog{padding:20px;border-radius:22px;max-height:calc(100dvh - 28px)}.dialog-head h2{font-size:1.3125rem}.form-columns{grid-template-columns:1fr}.login-box{padding:24px}.console-grid{gap:9px}.metric{padding:14px}.table th,.table td{padding:12px}.loading-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn:active,.chip:active{transform:none}.action-card:hover{transform:none}.skeleton{animation:none}}
body.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/**/
.console-shell{max-width:1200px;margin:auto;padding:26px 24px 64px}.console-head{display:flex;gap:16px;align-items:center;padding-bottom:22px}.console-head h1{font-size:1.625rem;margin:2px 0 5px}.console-head p{margin:0}.console-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.console-foot{padding-top:30px;border-top:1px solid var(--line);margin-top:36px}.staff-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.staff-product{padding:24px}.staff-product h3{font-size:1.125rem;margin:8px 0 16px}.staff-product .facts{margin:18px 0}.staff-product .fact{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:0.875rem}.staff-product .field{margin:14px 0}.staff-reservation-line{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:16px 0}.feature-row{padding:18px 20px;display:flex;gap:15px;align-items:center;justify-content:space-between}.feature-row p{margin:5px 0 0}.feature-row .switch{flex-shrink:0}.table-wrap{max-width:100%;overflow:auto}.break-word{overflow-wrap:anywhere;max-width:190px}.console-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric strong{display:block;font-size:1.875rem;margin-top:10px}.console-tabs .chip{font-size:0.875rem}.table{min-width:530px}
@media(max-width:680px){.console-shell{padding:18px 16px 40px}.staff-product-grid{grid-template-columns:1fr}.console-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.console-head{gap:10px}.console-head .badge{margin-left:0}.console-head h1{font-size:1.4375rem}.staff-product{padding:20px}.console-tabs{gap:7px}.staff-reservation-line{flex-wrap:wrap}}
button.experience-media{border:0;padding:0;background:transparent;text-align:inherit;overflow:hidden;cursor:pointer}

/**/
html{scroll-padding-bottom:120px}button,a,input,select,textarea{scroll-margin-block:100px 130px}
.skip-link{top:12px;transform:translateY(-180%)}.skip-link:focus{top:12px;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/**/
.skip-link:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{width:auto;height:auto;clip-path:none}

/**/
/**/
/**/
:root { --record-accent: #12645e; --notice-wash: #eef8f5; }
.header-actions { flex-shrink: 0; }
#inboxBtn { position: relative; }
.notice-dot { position:absolute;top:-2px;right:-2px;min-width:17px;height:17px;line-height:17px;border-radius:9px;background:#155e58;color:#fff;font-size:0.625rem;text-align:center;padding:0 3px; }
.save-button[aria-pressed="true"] { color:#9c2948;background:#fbeff2; }
.save-button[aria-pressed="true"] svg { fill:currentColor; }
.save-button { flex:0 0 44px; }
.product-meta-row { align-items:center; }
.profile-shortcuts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0; }
.profile-shortcuts button { min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:12px;border-radius:18px;border:1px solid var(--line,#d5e1e7);background:white;color:inherit;font:inherit;cursor:pointer; }
.profile-shortcuts svg { width:24px;height:24px; }
.privacy-inline { display:inline-flex;gap:8px;align-items:center;color:var(--record-accent);font-size:0.875rem; }
.privacy-inline svg { width:19px;height:19px; }
.record-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.record-card { padding:24px;min-width:0; }
.record-heading { display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px; }
.record-date-chip { font-size:0.8125rem;color:#526b7b; }
.record-card h2,.notice-card h2,.privacy-card h2 { font-size:1.1875rem;line-height:1.4;margin:0 0 8px;overflow-wrap:anywhere; }
.private-note { white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f8f8;border-left:3px solid #90bdb3;border-radius:0 12px 12px 0;padding:15px 17px;margin:18px 0;line-height:1.7;font-size:1rem; }
.note-placeholder { color:#667984;padding:14px 0;line-height:1.7; }
.note-editor { resize:vertical;line-height:1.7;min-height:170px;font-size:1rem; }
#noteConflict details { padding:12px;background:#f4f7f8;margin:12px 0;border-radius:12px; }
#noteConflict summary { font-weight:650;cursor:pointer; }
.notice-list { display:grid;gap:12px; }
.notice-card { display:flex;align-items:flex-start;gap:18px;padding:24px;background:white;border:1px solid #dce5e8;border-radius:20px; }
.notice-card.is-unread { background:var(--notice-wash);border-color:#b9d9ce; }
.notice-card>.card-icon { flex:0 0 46px; }
.notice-copy { min-width:0;flex:1; }
.notice-copy p { margin:4px 0 8px;color:#4c6270;font-size:1rem;line-height:1.6; }
.notice-copy .row-between { gap:12px;align-items:flex-start; }
.notice-copy .inline-actions { margin-top:12px; }
.privacy-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.privacy-card { padding:26px;min-width:0; }
.privacy-card>.card-icon { margin-bottom:16px; }
.privacy-card>p { color:#526777;line-height:1.7; }
.privacy-wide { grid-column:1/-1; }
.privacy-stat { display:flex;gap:10px;align-items:baseline;margin:22px 0; }
.privacy-stat b { font-size:2.25rem;line-height:1; }
.privacy-stat span { color:#526777; }
.form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.form-grid>.field { min-width:0;margin:0; }
.form-grid>.full { grid-column:1/-1; }
.supply-form { max-width:840px;padding:26px; }
.supply-form fieldset { border:0;padding:0;margin:0 0 28px;min-width:0; }
.supply-form legend { font-size:1.1875rem;font-weight:700;margin-bottom:14px; }
.supply-form .field label { display:block;margin-bottom:7px; }
.supply-form .input,.supply-form .select { width:100%; }
.delivery-error { padding:16px;border:1px solid #e0d9c9;border-radius:14px;margin-top:12px; }
.draft-note { background:#f9f6ed;color:#715b1c;border-radius:12px;padding:12px 16px;font-size:0.875rem; }
.form-error:empty { display:none; }
.center { text-align:center; }
@media(max-width:680px) {
 .record-grid,.privacy-grid { grid-template-columns:minmax(0,1fr); }
 .privacy-wide { grid-column:auto; }
 .record-card,.privacy-card,.notice-card { padding:19px; }
 .notice-card { gap:12px; }
 .notice-card>.card-icon { flex:0 0 36px;width:36px;height:36px; }
 .notice-card h2 { font-size:1.0625rem; }
 .notice-copy .row-between { flex-wrap:wrap; }
 .profile-shortcuts { gap:8px; }
 .profile-shortcuts button { font-size:0.875rem;padding:10px 4px; }
 .form-grid { grid-template-columns:minmax(0,1fr); }
 .form-grid>.full { grid-column:auto; }
 .supply-form { padding:18px; }
 .section-head { gap:10px;flex-wrap:wrap; }
}
/**/
#newResourceFields[hidden] { display:none; }
.select { min-height:48px;max-width:100%;padding:11px 14px;border:1px solid #cbdbe6;border-radius:12px;background:#fff;color:#17384c;font:inherit;font-size:1rem; }
.select:focus-visible { outline:3px solid #27766d;outline-offset:2px; }
.select:disabled { background:#f3f5f6;color:#627582; }
.supply-form .btn-row { margin-top:18px; }

/**/
/**/
/**/
.security-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:24px;align-items:start}
.security-card{padding:28px;min-width:0}.security-card h2{margin:12px 0}.security-card>p{color:#486171;line-height:1.7}
.session-list{display:grid;gap:16px;margin:22px 0}.session-card{padding:20px;background:#f5f9f8;border:1px solid #dbe7e2;border-radius:18px}
.session-card h3{font-size:1rem}.session-card>.row{align-items:flex-start;gap:12px}.session-card .badge{white-space:normal;flex-shrink:0}
.session-times{display:grid;gap:9px;margin:16px 0;font-size:0.875rem}.session-times>div{display:flex;gap:14px;justify-content:space-between}.session-times dt{color:#536b79}.session-times dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.security-intro{display:flex;gap:16px;align-items:flex-start;margin:8px 0 18px}.security-intro .card-icon{flex-shrink:0}.security-intro p{margin:0;line-height:1.7}
.secret-key,.recovery-values{font-family:ui-monospace,monospace;letter-spacing:.08em;font-size:0.875rem;overflow-wrap:anywhere}.recovery-values{resize:vertical;letter-spacing:0;line-height:1.9;min-height:210px}
#securityCode{font-size:1.5rem;letter-spacing:.17em;font-variant-numeric:tabular-nums}
.filter-summary{padding:18px 22px;margin:18px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eaf4f0;border:1px solid #c6dfd2;border-radius:18px}
.filter-summary p{margin:2px 0;color:#456458}.alternative-dates{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.date-suggestion{padding:12px 16px;border:1px solid #bdd3c9;background:white;border-radius:14px;min-height:48px;font:inherit;cursor:pointer}
.slot-choice:disabled{opacity:.58;cursor:not-allowed}.slot-sub{display:block;font-size:0.75rem;font-weight:400;margin-top:4px}.catalog-stamp{font-size:0.75rem;color:#486171;margin:12px 0}
@media(max-width:700px){.security-layout{grid-template-columns:1fr;gap:18px}.security-card{padding:22px}.session-card{padding:16px}.filter-summary{padding:16px;align-items:flex-start}.profile-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.session-card .row-between{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.date-suggestion,.slot-choice{transition:none!important}}
.availability-filters{margin:0 0 22px;border:1px solid #ccdcd4;border-radius:18px;background:#fff;padding:16px 20px}
.availability-filters>summary{display:flex;gap:9px;align-items:center;cursor:pointer;min-height:44px;font-weight:600;list-style:none}
.availability-filters>summary::after{content:'+';margin-left:auto;font-size:1.375rem}.availability-filters[open]>summary::after{content:'−'}
.availability-filters .toolbar{margin:12px 0}.alternatives{padding:24px;border-radius:20px;background:#edf5f1;margin:16px 0}.alternatives h2{font-size:1.25rem}
.availability-filters select,.toolbar input[type=date]{width:100%;min-width:0;color:inherit;font:inherit;background:white}
/**/
.app-frame .availability-filters .toolbar{min-width:0}
.app-frame .availability-filters .toolbar .field{min-width:0}
.app-frame .availability-filters .toolbar select{box-sizing:border-box;max-width:100%;min-height:48px}
@media(max-width:600px){
  .app-frame .availability-filters .toolbar .field,
  .app-frame .availability-filters .toolbar .field:first-child{flex:1 1 100%;min-width:0;max-width:100%}
}
@media(max-width:600px){.availability-filters{padding:12px 16px}.alternatives{padding:20px}.alternative-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.date-suggestion{min-width:0}}

/**/
.availability-filters>summary>svg{width:22px;height:22px;flex:0 0 22px}
.search-box>svg{width:19px;height:19px;flex:0 0 19px}
.search-box>input{width:auto;min-width:0;flex:1}
.search-box>.btn{flex-shrink:0;white-space:nowrap;min-width:60px}

/**/
/**/
/**/
:root{--brand:#20665d;--ink:#142f36;--muted:#48606a;--page:#f5f7f4;--line:#dce5df;--focus:0 0 0 3px #b8d7ce;--nav-h:66px}
html{scroll-behavior:auto} /**/
body{background:var(--page);color:var(--ink)}
.app-header{background:#fff;backdrop-filter:none}.bottom-nav{background:#173a3d;backdrop-filter:none}.bundle-summary{background:#fff;backdrop-filter:none}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.btn,a{touch-action:manipulation}.btn:active,.category-tile:active,.filter-chip:active{transform:translateY(1px);transition:transform 140ms ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2a7669;outline-offset:3px}
[hidden]{display:none!important}.hero{grid-template-columns:1.03fr 1fr;gap:24px;background:#e7efea;min-height:0;padding:16px;border:1px solid #d4e1d9;box-shadow:none}.hero-copy{padding:26px 22px}.hero h1{font-size:clamp(2rem,3.5vw,3rem);line-height:1.13;max-width:12ch}.hero p{max-width:40ch;line-height:1.65}.hero .eyebrow{color:#316658}
.quick-plan{padding:26px;background:#fff;border:1px solid #d6e2da;border-radius:22px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.quick-plan h2{font-size:1.4375rem;line-height:1.25;margin:0 0 7px;letter-spacing:-.025em}.quick-plan>p{font-size:0.875rem;line-height:1.6;margin:0 0 18px;color:var(--muted)}.quick-plan form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-plan>.field,.quick-plan>.btn{grid-column:1/-1}.quick-plan input,.quick-plan select{min-width:0;width:100%;font:inherit}.quick-plan label{font-size:0.8125rem}.quick-plan .btn{margin-top:4px;min-height:50px}
.how-section{margin:28px 0}.how-section h2{font-size:1.3125rem}.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:12px}.how-step{border-top:2px solid #b1ccc0;padding:16px 4px}.how-step>span{display:inline-grid;place-items:center;font-size:0.75rem;font-weight:750;width:27px;height:27px;border-radius:50%;background:#dfece5;margin-bottom:8px}.how-step h3{font-size:1rem;margin:0 0 7px}.how-step p{margin:0;font-size:0.8125rem;color:var(--muted);line-height:1.65}
.category-tile{position:relative;gap:10px;min-height:122px}.category-state{font-size:0.625rem;font-weight:600;color:#556e62;background:#edf3ee;border-radius:7px;padding:3px 6px;max-width:100%;line-height:1.35;white-space:normal}.category-tile h3{margin-bottom:0}.category-tile .card-icon{background:#e8f0eb}
.journey-progress{margin:6px 0 22px;display:flex;align-items:stretch;gap:7px;list-style:none;padding:0;max-width:700px}.journey-progress li{flex:1;min-width:0;border-top:3px solid #d1ded6;padding-top:10px;font-size:0.75rem;line-height:1.4;color:#546860;display:flex;align-items:center;gap:7px}.journey-progress li.current{color:#175d4a;border-color:#257963;font-weight:750}.journey-progress li.done{border-color:#7faa93}.journey-progress span{display:inline-grid;place-items:center;min-width:21px;height:21px;background:#e4ede6;border-radius:50%;font-size:0.6875rem}
.plan-shortcut{width:auto;min-width:44px;gap:4px;padding:8px!important;border:1px solid #d2e1d8!important}.plan-shortcut span{font-size:0.75rem;font-weight:700}.connection-note{background:#fff3d9;border-bottom:1px solid #e5ca96;padding:12px 20px;text-align:center;font-size:0.8125rem;color:#6d4b0c}.pass-filters{display:flex;gap:8px;margin:0 0 22px;flex-wrap:wrap}.filter-chip{padding:11px 18px;border:1px solid #b8cec1;border-radius:999px;background:white;color:var(--ink);font:inherit;font-size:0.875rem;min-height:44px}.filter-chip.active{background:#dceee3;border-color:#39775b;font-weight:650}.pass-hint{color:#d5e9df;line-height:1.5;margin:10px 0 0}.pass-card{background:linear-gradient(140deg,#153d3e,#225a4e)}.pass-card .btn:disabled{opacity:.6;cursor:not-allowed}.refund-estimate{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:15px;margin-top:16px}.refund-estimate output{font-weight:750}.support-reference{display:block;overflow-wrap:anywhere;padding:12px;background:#f1f5f1;border-radius:9px;font-size:0.75rem;user-select:all;margin:12px 0}.privacy-storage,.export-card{padding:24px;margin-bottom:20px}.privacy-storage p,.export-card p{color:var(--muted);line-height:1.65}.export-card h2{font-size:1.25rem}.export-card a{text-decoration:none}
.product-media img{object-fit:cover}.product-card{box-shadow:none;border-color:#dce5de}.product-card:focus-visible{outline-offset:4px}.empty p{max-width:52ch;margin-left:auto;margin-right:auto}.hero .btn-row{flex-wrap:wrap}.demo-note{line-height:1.6}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:8px}.hero-copy{padding:22px}.hero h1{max-width:15ch}.quick-plan{padding:22px}.how-grid{gap:14px}.header-inner{gap:8px}.brand{min-width:0}.header-actions{gap:6px}}
@media(max-width:600px){.hero{padding:10px;border-radius:24px}.hero-copy{padding:20px 14px}.quick-plan{padding:21px 17px;border-radius:19px}.how-grid{grid-template-columns:1fr;gap:0}.how-step{display:grid;grid-template-columns:30px 1fr;gap:0 10px;padding:16px 4px}.how-step>span{grid-row:1/3}.how-step p{grid-column:2}.how-section{margin:26px 0}.journey-progress{gap:5px}.journey-progress li{display:block;font-size:0.625rem}.journey-progress span{margin-bottom:6px;display:flex;width:20px}.brand-name{font-size:1rem}.header-actions .icon-btn{width:38px;height:44px}.header-actions .plan-shortcut{min-width:39px}.hero h1{font-size:2.25rem}.category-tile{min-height:122px}.filter-chip{padding:10px 13px;font-size:0.8125rem}.privacy-storage,.export-card{padding:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.btn:active,.category-tile:active,.filter-chip:active{transform:none}}
.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/**/
.quick-plan{gap:14px}.quick-plan .eyebrow{font-size:0.6875rem;color:#3b6b5c;letter-spacing:.06em}.quick-plan h2{margin-bottom:4px}.quick-plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-plan .field{min-width:0}.journey-steps{display:flex;gap:8px;margin:6px 0 25px;max-width:710px}.journey-step{flex:1;min-width:0;display:flex;align-items:center;gap:7px;border-top:3px solid #d4e0d7;padding-top:10px;font-size:0.75rem;color:#566c60}.journey-step.is-current{border-color:#247a5a;color:#195a40;font-weight:750}.journey-step.is-done{border-color:#81ad93}.step-number{width:23px;height:23px;min-width:23px;background:#e3ece5;border-radius:50%;display:inline-grid;place-items:center;font-size:0.6875rem}.step-number svg{width:14px;height:14px}.how-it-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:32px 0}.how-it-works>div{display:flex;align-items:flex-start;gap:11px;border-top:1px solid #b8cdbd;padding-top:17px}.how-number{font-size:0.8125rem;font-weight:750;color:#408168;line-height:1.5}.how-it-works h3{margin:0 0 6px;font-size:0.9375rem;line-height:1.5}.how-it-works p{font-size:0.8125rem;line-height:1.65;color:var(--muted);margin:0}.service-state{display:block;font-size:0.625rem;font-weight:600;margin-top:5px;color:#56725f}.experience-card{box-shadow:none}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:600px){.journey-step{flex-direction:column;align-items:flex-start;font-size:0.625rem;gap:5px}.journey-steps{gap:5px}.how-it-works{grid-template-columns:1fr;gap:17px;margin:24px 0}.how-it-works>div{padding-top:14px}.hero-actions .btn{flex:1;white-space:nowrap;font-size:0.75rem;padding:10px 12px}.quick-plan-fields{gap:10px}}

/**/
.payment-status>svg{width:38px;height:38px;flex:0 0 38px}.payment-status{padding:18px}.code-text{overflow-wrap:anywhere;user-select:all}.pass-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.pass-actions .btn{min-height:48px}.privacy-inline>svg{width:18px;height:18px;flex:0 0 18px}

/**/
/**/
/**/
:root{--page:#faf9f5;--ink:#193a35;--muted:#52635d;--brand:#246555;--line:#dedfd4;--line-strong:#bccabe;--r20-soft:#e8eee2;--nav-h:72px}
html{scroll-padding-top:100px;scroll-padding-bottom:110px}body{background:var(--page)}
.shell{max-width:1260px;padding:28px 32px 140px}.header-inner{max-width:1260px;padding:14px 32px}.app-header{border-bottom:1px solid var(--line);box-shadow:none}.brand-mark{background:var(--brand);border-radius:14px}.brand-name{letter-spacing:.045em}.brand-sub{font-size:0.625rem;letter-spacing:.04em}.demo-note{font-size:0.6875rem;letter-spacing:.01em;color:#52635d;background:#eff1e9;border-bottom:1px solid #e0e4d8;padding:7px 16px}
.editorial-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:24px;border-radius:28px;overflow:hidden;background:#e8eee2;border:1px solid #dfe5d6;min-height:320px}.editorial-copy{padding:34px 38px}.eyebrow{font-size:0.6875rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:#526c5b}.editorial-copy h1{font:500 clamp(36px,4.7vw,60px)/1.07 Georgia,'Times New Roman',serif;letter-spacing:-.045em;max-width:11ch;margin:16px 0}.editorial-copy p{font-size:0.9375rem;line-height:1.7;max-width:34ch;color:#425e50;margin:0 0 23px}.editorial-copy .btn{min-height:48px}.editorial-art{align-self:stretch;position:relative;min-width:0;display:flex;align-items:center;padding:20px 24px 20px 0}.editorial-art img{display:block;width:100%;height:100%;max-height:330px;object-fit:contain}.art-caption{position:absolute;bottom:27px;right:33px;font-size:0.5625rem;letter-spacing:.2em;color:#315349;background:#f7f9ee;padding:8px 10px;border-radius:5px}
.time-summary{display:flex;flex-wrap:wrap;align-items:center;width:100%;gap:12px 22px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px 20px;margin:16px 0 28px;text-align:left;font-size:0.8125rem;color:var(--ink);box-shadow:0 4px 14px #24463305}.time-summary>span{display:flex;align-items:center;gap:8px;min-height:24px}.time-summary svg{width:18px;height:18px;flex:0 0 18px}.time-summary .time-edit{margin-left:auto;color:var(--brand)}
.section{margin-top:30px}.section-head{margin-bottom:18px;gap:12px;align-items:center}.section-head h2{font-size:1.4375rem;line-height:1.3;font-weight:650;letter-spacing:-.03em;margin:5px 0}.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hub-tile{display:flex;align-items:center;gap:13px;min-width:0;min-height:84px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:17px;color:var(--ink);text-align:left}.hub-tile strong{font-size:0.875rem;line-height:1.5;font-weight:650;flex:1}.hub-tile>svg{width:16px;height:16px;flex:0 0 16px;color:#7a8b7a}.hub-icon{display:inline-grid;place-items:center;width:48px;height:48px;flex:0 0 48px;background:#edf1e6;border:1px solid #e0e7d6;border-radius:16px;color:#366447}.hub-icon svg{width:25px;height:25px}.hub-tile:hover,.category-tile:hover{border-color:#5b8065;background:#f9fbf5}.hub-tile:nth-child(2) .hub-icon,.hub-tile:nth-child(5) .hub-icon{background:#f3ebdf;color:#866346;border-color:#ebe0cd}.hub-tile:nth-child(3) .hub-icon,.hub-tile:nth-child(6) .hub-icon{background:#e5eef0;color:#41667a;border-color:#d8e4e7}
.breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:0.75rem;margin:0 0 22px}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-decoration:none}.breadcrumbs [aria-current]{font-weight:650;color:var(--ink)}.category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.category-tile{min-height:90px;font-size:0.875rem;border-radius:17px;padding:16px;line-height:1.4;box-shadow:none}.category-tile span,.category-tile strong{overflow-wrap:anywhere}.service-choices .category-tile{min-height:104px;flex-direction:column;justify-content:center;gap:10px;text-align:center}.category-tile .card-icon{width:40px;height:40px;border-radius:13px;background:var(--r20-soft)}
.editorial-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.experience-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white;box-shadow:none}.experience-media{height:166px}.experience-body{padding:16px}.experience-title{font-size:1.0625rem;font-weight:650;letter-spacing:-.01em}.experience-footer .price{font-size:1.3125rem}.experience-media img{object-fit:cover}.experience-card .save-button{width:44px;height:44px;flex:0 0 44px}.experience-footer .icon-btn{width:44px;height:44px}.product-open{text-align:left}.journal-teaser{display:flex;gap:18px;align-items:center;margin:38px 0 12px;border-top:1px solid #d9e0d3;border-bottom:1px solid #d9e0d3;padding:24px 0}.journal-teaser h2{margin:0 0 8px;font-size:1.4375rem}.journal-teaser p{margin:0;color:var(--muted);font-size:0.875rem;line-height:1.6}.journal-teaser>.btn{margin-left:auto;flex:0 0 48px}.service-preview{padding:32px;max-width:750px}.service-preview h2{font-size:1.5625rem}.service-preview p{color:var(--muted);max-width:50ch;line-height:1.8}.journal-shortcuts{margin-bottom:22px}
.review-section{padding-top:25px;border-top:1px solid var(--line)}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.review-card{padding:22px;min-width:0}.review-card h2{font-size:1.25rem;margin:15px 0 10px}.review-card h3{font-size:1.125rem}.review-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:0.9375rem;line-height:1.8;margin:18px 0}.rating-value{display:flex;align-items:center;gap:6px;font-size:0.9375rem;font-weight:700}.rating-value svg{width:18px;height:18px;color:#8a642b}.verified-chip{display:inline-flex;gap:5px;align-items:center;font-size:0.75rem;color:#376b4f}.verified-chip svg{width:16px;height:16px}.rating-picker{padding:0;border:0;margin:20px 0}.rating-picker legend{font-size:0.875rem;font-weight:650;margin-bottom:12px}.rating-picker>div{display:flex;gap:8px;flex-wrap:wrap}.rating-picker label{position:relative;cursor:pointer;min-width:48px}.rating-picker input{position:absolute;width:1px;height:1px;opacity:0}.rating-picker label>span:not(.sr-only){display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line-strong);border-radius:13px;min-height:48px;min-width:48px;padding:8px;color:#546854;background:#fff}.rating-picker svg{width:18px;height:18px}.rating-picker input:checked+span{background:#e1efd8;border:2px solid #41714b;color:#264c2d;font-weight:700}.rating-picker input:focus-visible+span{outline:3px solid #246555;outline-offset:3px}
.btn{border-radius:13px;min-height:46px;font-weight:650}.btn svg{width:19px;height:19px;flex:0 0 19px}.btn-secondary{background:#fff;border:1px solid #bdcdbc;color:#2d5040}.icon-btn{min-height:44px;min-width:44px}.text-btn{min-height:44px}.btn-primary{background:#246555;color:#fff;border-color:#246555}.bottom-nav{border-radius:21px;bottom:14px;background:#173f37;border:1px solid #416a55;box-shadow:0 8px 30px #14382b20}.nav-btn{min-height:52px}.nav-btn.active{background:#3d6555}.nav-btn span{line-height:1.3}.quick-plan{border:none;box-shadow:none;padding:4px;gap:16px}.quick-plan h2{display:none}.quick-plan .eyebrow{text-transform:none;font-size:0.875rem;letter-spacing:0;line-height:1.65}.quick-plan input,.quick-plan select{min-height:48px}.tl-dialog{padding:24px;border-radius:23px;max-width:580px;width:calc(100% - 24px);max-height:calc(100dvh - 32px)}.dialog-head{gap:14px}.dialog-head h2{font-size:1.4375rem}.dialog-head button{flex:0 0 44px}.tl-dialog::backdrop{background:#142d2c7a}
.console-tabs .chip{min-height:44px}.feature-row .tiny{line-height:1.6}.capability-label{font-size:0.6875rem;display:inline-block;background:#f1f4ea;border:1px solid #d9e1ce;border-radius:6px;padding:3px 7px;margin-top:5px;color:#496249}.console-head .badge{max-width:100%;white-space:normal}.console-tabs{border-bottom:1px solid var(--line);padding-bottom:18px}
@media(min-width:1100px){.app-frame .bottom-nav{position:absolute;top:12px;bottom:auto;left:50%;transform:translateX(-50%);width:460px;margin:0;height:55px;border:0;border-radius:14px;background:#eff2e9;box-shadow:none;z-index:50}.app-frame .nav-btn{color:#506758;display:flex;gap:8px;align-items:center;justify-content:center;min-height:45px;font-size:0.75rem}.app-frame .nav-btn svg{width:19px;height:19px}.app-frame .nav-btn.active{background:#d5e4d0;color:#214c35}.app-frame .brand-sub{max-width:165px}.app-frame .header-inner{min-height:80px}.app-frame .bottom-nav .nav-btn:hover{background:#e0e9d7}.shell{padding-bottom:60px}}
@media(max-width:1099px){.editorial-products{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.editorial-copy{padding:30px}.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-tile{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.hub-tile>svg{display:none}}
@media(max-width:700px){.shell{padding:18px 18px 125px}.header-inner{padding:10px 18px;min-height:72px}.editorial-hero{grid-template-columns:1fr .72fr;gap:0;min-height:250px;border-radius:23px}.editorial-copy{padding:24px 0 24px 24px;z-index:1}.editorial-copy h1{font-size:2.375rem;max-width:10ch;margin:13px 0}.editorial-copy p{font-size:0.8125rem;line-height:1.6;max-width:25ch;margin-bottom:17px}.editorial-copy .eyebrow{font-size:0.5625rem;letter-spacing:.1em}.editorial-art{padding:12px 0;overflow:hidden}.editorial-art img{width:200%;max-width:none;height:235px;max-height:235px;transform:translateX(-28%);object-fit:contain;opacity:.85}.art-caption{display:none}.editorial-copy .btn{padding:10px 12px;font-size:0.75rem;gap:6px}.time-summary{gap:8px 14px;padding:14px;font-size:0.6875rem;margin:12px 0 24px;border-radius:16px}.time-summary .time-edit{display:none}.time-summary>span{gap:5px}.time-summary svg{width:16px;height:16px;flex:0 0 16px}.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.hub-tile{align-items:center;text-align:center;padding:14px 6px;min-height:109px;gap:9px}.hub-tile strong{font-size:0.6875rem;line-height:1.5}.hub-icon{width:44px;height:44px;flex-basis:44px;border-radius:14px}.hub-icon svg{width:23px;height:23px}.section-head h2{font-size:1.3125rem}.section-head .btn{font-size:0.6875rem;padding:9px 12px}.section-head .eyebrow{font-size:0.5625rem}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-tile{min-height:90px;padding:14px;font-size:0.8125rem}.editorial-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.editorial-products .experience-card{display:block;min-height:0}.editorial-products .experience-media{height:119px;min-height:119px;width:100%}.editorial-products .experience-media img{height:119px;aspect-ratio:1.3}.editorial-products .experience-body{padding:11px}.editorial-products .meta-row{align-items:center;gap:0}.editorial-products .tiny{font-size:0.625rem}.editorial-products .experience-title{font-size:0.875rem;line-height:1.45}.editorial-products .small{font-size:0.6875rem}.editorial-products .experience-footer{gap:3px}.editorial-products .experience-footer .price{font-size:1.0625rem}.editorial-products .experience-body .product-open{min-height:57px}.editorial-products .save-button{margin-right:-7px}.editorial-products .experience-footer .icon-btn{display:none}.editorial-products .badge{font-size:0.625rem}.journal-teaser{gap:12px}.journal-teaser h2{font-size:1.25rem}.journal-teaser p{font-size:0.75rem}.journal-teaser>.hub-icon{display:none}.review-grid{grid-template-columns:1fr}.review-card{padding:20px}.service-preview{padding:24px}.breadcrumbs{gap:7px;font-size:0.6875rem;margin-bottom:10px}.page-heading h1{font-size:1.75rem}.bottom-nav{bottom:calc(10px + env(safe-area-inset-bottom))}.rating-picker>div{gap:7px}}
@media(max-width:370px){.shell{padding-left:14px;padding-right:14px}.header-inner{padding-left:14px;padding-right:14px}.brand-sub{display:none}.brand-name{font-size:0.8125rem}.header-actions{gap:2px}.editorial-copy{padding-left:19px}.editorial-copy h1{font-size:2.125rem}.editorial-copy p{font-size:0.75rem}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-products{grid-template-columns:1fr}.editorial-products .experience-media,.editorial-products .experience-media img{height:155px}.editorial-products .experience-title{font-size:1.125rem}}
@media(prefers-reduced-motion:reduce){.hub-tile,.category-tile,.btn{transform:none!important;transition:none!important}}
/**/
@media(min-width:1050px){.app-frame .bottom-nav{position:fixed;top:12px;bottom:auto;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:420px;height:55px;margin:0;padding:5px;border:0;border-radius:14px;background:#eff2e9;box-shadow:none;z-index:50}.app-frame .bottom-nav .nav-btn{display:flex;flex-direction:row;min-height:45px;gap:7px;font-size:0.75rem;color:#506758}.app-frame .bottom-nav .nav-btn.active{background:#d5e4d0;color:#214c35}.app-frame .bottom-nav .nav-btn svg{width:18px;height:18px}.app-frame .shell{padding-left:32px}.app-frame .header-inner{padding-left:32px;min-height:80px}}

/**/
/**/
/**/
.help-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px;border-radius:26px;background:#eaf0e4;border:1px solid #dce5d6;margin:16px 0 26px}.help-hero h1{max-width:610px;font-family:Georgia,serif;font-size:clamp(1.875rem,4vw,2.875rem);font-weight:500;line-height:1.12;margin:12px 0;color:#183f38}.help-hero p{margin:14px 0 0;max-width:520px;color:#45645c}.help-emblem{display:flex;align-items:center;justify-content:center;width:90px;height:90px;border-radius:50%;background:#d6e3c9;color:#245d50;flex-shrink:0}.help-emblem svg{width:46px;height:46px}.help-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;align-items:start}.help-topics{display:grid;gap:10px}.help-topic{display:flex;align-items:center;gap:12px;padding:14px 18px;min-height:66px;border:1px solid #dce1d7;background:#fff;border-radius:18px;color:var(--ink,#193c35);text-decoration:none;font-weight:650}.help-topic>svg:last-child{margin-left:auto;flex-shrink:0}.help-topic.selected{border-color:#226452;background:#edf3e9}.help-topic .card-icon{width:40px;height:40px;margin:0;flex-shrink:0}.help-answers{min-width:0;border:1px solid #dce1d7;background:#fff;border-radius:24px;padding:24px}.help-answers h2{font-size:1.3125rem;line-height:1.3;margin:0 0 18px}.help-answer{border-bottom:1px solid #e2e7df}.help-answer summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;justify-content:space-between;font-weight:650;padding:20px 0;min-height:48px}.help-answer summary::-webkit-details-marker{display:none}.help-answer summary svg{width:18px;height:18px;flex-shrink:0;transition:transform 150ms ease}.help-answer[open] summary svg{transform:rotate(90deg)}.help-answer p{margin:0 0 20px;color:#425f55;line-height:1.7;max-width:64ch}.help-answers>.btn-row{margin-top:24px}.help-quick-links{display:grid;gap:12px}.help-quick-links a{display:flex;align-items:center;gap:14px;min-height:58px;padding:14px;background:#f5f7f1;border-radius:14px;color:#193f36;text-decoration:none;font-weight:650}.help-quick-links a svg:last-child{margin-left:auto}.support-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.support-list{display:grid;gap:14px}.support-request{display:flex;gap:18px;align-items:center;padding:20px}.support-request>.card-icon{margin:0;flex-shrink:0}.support-request-copy{flex:1;min-width:0}.support-request h2{font-size:1.1875rem;margin:8px 0}.support-request p{margin:0}.support-compose{max-width:780px;margin:24px 0;padding:26px}.support-thread{max-width:780px;margin:18px 0}.support-booking{display:flex;align-items:center;gap:14px;padding:18px;border-radius:18px;background:#eceee6}.support-booking .card-icon{margin:0;flex-shrink:0}.support-booking p{margin:6px 0 0;font-size:0.8125rem;line-height:1.6}.support-messages{list-style:none;padding:0;display:grid;gap:18px;margin:26px 0}.support-message{padding:20px 22px;border:1px solid #d9e2d5;border-radius:20px;background:#fff;min-width:0}.support-message.from-guest{margin-left:24px;background:#f0f4e9;border-color:#dce5ce}.support-message.from-team{margin-right:24px;border-left:4px solid #286554}.support-message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;margin:12px 0 0}.support-message .row{flex-wrap:wrap;gap:8px}.support-editor{min-height:154px;resize:vertical;font-size:1rem;line-height:1.6}.support-editor[aria-invalid=true]{border-color:#9b3636}.support-editor-meta{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin:8px 0}.support-page-actions{margin:24px 0}.support-compose .form-error{min-height:1.3em}.support-compose .btn-row{gap:10px;flex-wrap:wrap}.support-editor-meta output{white-space:nowrap}.support-compose [hidden]{display:none!important}.pass-help{margin-top:14px}.support-profile-note{padding:12px 16px;border-radius:14px;background:#eef2e9}.help-answer summary:focus-visible,.help-topic:focus-visible,.help-quick-links a:focus-visible{outline:3px solid #28745e;outline-offset:4px}
@media(max-width:720px){.help-layout{grid-template-columns:1fr;gap:20px}.help-topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.help-topic{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;padding:12px;min-height:68px;font-size:0.8125rem;line-height:1.4}.help-topic .card-icon{width:34px;height:34px}.help-topic>svg:last-child{display:none}.help-hero{padding:24px;margin-top:12px;border-radius:22px;gap:12px}.help-hero h1{font-size:2rem;max-width:280px}.help-emblem{width:54px;height:54px}.help-emblem svg{width:30px;height:30px}.help-answers{padding:20px}.support-compose{padding:20px}.support-request{gap:12px;flex-wrap:wrap;padding:18px}.support-request>.btn{margin-left:52px}.support-message{padding:16px}.support-message.from-guest{margin-left:10px}.support-message.from-team{margin-right:10px}.support-toolbar>.btn-row{flex-wrap:wrap}.support-toolbar .chip-row{max-width:100%;flex-wrap:wrap}.support-toolbar .chip{white-space:normal}.support-booking{align-items:flex-start}.support-message time{font-size:0.6875rem}.support-request-copy{min-width:140px}}
@media(prefers-reduced-motion:reduce){.help-answer summary svg{transition:none}}
.help-topic>svg:last-child{width:18px;height:18px;flex-shrink:0}
.help-quick-links a>svg{width:22px;height:22px;flex-shrink:0}

/**/
/**/
/**/
/**/
.private-reset-title,.private-reset-copy,[data-private-pending-status]{word-break:keep-all;overflow-wrap:normal}
.private-reset-actions>.btn{flex:1 1 8rem;min-width:min(100%,8rem);word-break:keep-all;overflow-wrap:normal}
.data-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 26px}
.data-tile{appearance:none;border:1px solid var(--line,#cbd6cc);border-radius:20px;background:#fff;padding:20px;display:flex;align-items:center;gap:14px;text-align:left;color:inherit;font:inherit;min-height:92px;cursor:pointer}
.data-tile strong{flex:1}.data-tile>svg,.data-retained>svg{flex-shrink:0;width:20px;height:20px}
.data-intro{display:flex;align-items:center;gap:18px;margin:24px 0}.data-intro h2{font-size:1.5rem;margin:4px 0;overflow-wrap:anywhere}
.data-form{max-width:780px;padding:28px;margin:20px 0}.data-form p{line-height:1.6}.data-form .field{margin:24px 0}
.data-counts{margin:8px 0 26px;max-width:780px}.data-counts>div{display:flex;gap:18px;justify-content:space-between;padding:16px 4px;border-bottom:1px solid #d9e0d7}.data-counts dt{display:flex;align-items:center;gap:12px}.data-counts dd{margin:0;font-weight:700;white-space:nowrap}.data-counts svg{width:20px;height:20px;flex-shrink:0}
.data-retained{display:flex;gap:16px;background:#edf3ed;border:1px solid #d4dfd2;border-radius:18px;padding:20px;max-width:780px;margin:22px 0}.data-retained h2{font-family:inherit;font-size:1rem;margin:0 0 6px}.data-retained p{font-size:0.875rem;line-height:1.65;margin:0}.data-retained .card-icon{flex-shrink:0}
.data-help{max-width:780px;padding:24px;margin-top:24px}.data-help p{line-height:1.65}.data-help h2{font-size:1.25rem;margin:0 0 12px}
.data-choices{padding:0;border:0;min-width:0}.data-choices legend{font-weight:650;margin-bottom:14px}.data-choice{display:flex;gap:14px;align-items:center;border:1px solid #d5ded4;border-radius:16px;padding:18px;margin:12px 0;cursor:pointer;min-height:76px}.data-choice:has(input:checked){border-color:#1b6754;background:#f0f5ee;box-shadow:inset 0 0 0 1px #1b6754}.data-choice input,.data-confirm input{width:22px;height:22px;flex-shrink:0;accent-color:#215847}.data-choice small{display:block;color:#54675b;line-height:1.5;margin-top:4px}.data-choice .card-icon{flex-shrink:0}.data-choice>span:nth-last-child(2){flex:1}.data-number{font-weight:700;font-size:1.25rem}.data-choice.is-empty{opacity:.68;cursor:default}
.data-confirm{align-items:flex-start;line-height:1.6;margin:24px 0}.data-form .btn-danger{background:#923a31;border:1px solid #923a31;color:white}.data-form .btn-danger:hover{background:#783027}.data-form .btn-danger:disabled{opacity:.5}
.data-boundary{max-width:680px}.data-success{width:58px;height:58px;background:#e6f1e5;color:#265c48;display:grid;place-items:center;border-radius:50%;margin-bottom:18px}.data-success svg{width:28px;height:28px}.data-receipts{display:grid;gap:14px;max-width:900px}.data-receipt{padding:20px;display:flex;gap:16px;align-items:center}.data-receipt>div{flex:1;min-width:0}.data-receipt h2{font:650 17px/1.5 system-ui;margin:0 0 4px}.data-receipt p{margin:0}.data-receipt .card-icon{flex-shrink:0}
.data-form [hidden]{display:none!important}.data-form .form-error:empty{display:none}.data-form .form-error:focus{outline:2px solid #a35338;outline-offset:6px}
@media(min-width:1080px){.data-hub-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.data-tile{flex-wrap:wrap;padding:24px}.data-tile strong{flex-basis:calc(100% - 34px);order:2}.data-tile>svg{order:3}}
@media(max-width:560px){.data-form{padding:18px;border-radius:18px}.data-tile{padding:16px;gap:10px;flex-wrap:wrap}.data-tile .card-icon{width:36px;height:36px}.data-tile strong{flex-basis:100%;font-size:0.9375rem}.data-tile>svg{display:none}.data-choice{gap:10px;padding:14px}.data-choice .card-icon{display:none}.data-retained{padding:16px;gap:12px}.data-receipt{flex-wrap:wrap}.data-receipt .btn{margin-left:0}.data-form .inline-actions{gap:10px;flex-wrap:wrap}.data-form .inline-actions .btn{max-width:100%;white-space:normal}.data-intro h2{font-size:1.375rem}}

/**/
/**/
/**/
.compare-toggle{width:100%;min-height:44px;margin-top:12px;border:1px solid var(--line-strong);border-radius:12px;padding:9px 12px;background:#fff;color:var(--brand);font:600 13px/1.4 system-ui,sans-serif;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer}.compare-toggle svg{height:18px;width:18px;flex:0 0 18px}.compare-toggle[aria-pressed=true]{background:#e7eee3;border-color:#608371}.compare-heading{max-width:690px;margin-bottom:24px}.compare-heading h1{font:500 clamp(32px,4vw,46px)/1.15 Georgia,serif;letter-spacing:-.03em;margin:12px 0}.compare-heading p{font-size:1rem;color:var(--muted);line-height:1.75}.compare-filters{border:1px solid var(--line);background:white;border-radius:20px;padding:20px;margin-bottom:26px}.compare-filters .toolbar{margin:0}.compare-filters .availability-filters{border:0;padding:0;margin-top:12px}.compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.compare-card{min-width:0;background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}.compare-image{position:relative;background:#edf1e8}.compare-image img{display:block;width:100%;height:185px;object-fit:cover}.compare-image>.icon-btn{position:absolute;top:12px;right:12px;background:#fff;border:1px solid var(--line);border-radius:50%}.compare-content{padding:24px;display:flex;flex:1;flex-direction:column}.compare-content h2{font-size:1.3125rem;line-height:1.4;min-height:58px;margin:10px 0}.compare-description{font-size:0.875rem;line-height:1.65;color:var(--muted);min-height:48px;margin:0 0 18px}.compare-facts{margin:0;display:grid;gap:0}.compare-facts>div{padding:14px 0;border-top:1px solid var(--line)}.compare-facts dt{font-size:0.75rem;color:var(--muted);margin-bottom:8px}.compare-facts dd{font-size:0.9375rem;font-weight:600;margin:0;overflow-wrap:anywhere}.compare-facts .compare-price{font-size:1.6875rem;letter-spacing:-.02em}.compare-state{display:flex;gap:8px;align-items:flex-start;padding:12px;border-radius:12px;background:#f6f0e5;font-size:0.8125rem;line-height:1.5;margin-top:auto}.compare-state svg{width:18px;height:18px;flex:0 0 18px}.compare-state.is-available{background:#edf3e7;color:#28543e}.compare-add{display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;border:1px dashed #9eafa0;background:#f4f6f0;border-radius:22px;color:var(--ink);font:600 16px system-ui;min-height:220px;padding:24px;cursor:pointer}.compare-boundary{display:flex;gap:12px;align-items:flex-start;margin:26px 0;color:var(--muted);font-size:0.8125rem;line-height:1.8}.compare-boundary svg{width:20px;height:20px;flex:0 0 20px;margin-top:3px}.compare-boundary p{margin:0;max-width:850px}.compare-dock{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(89px + env(safe-area-inset-bottom));z-index:55;display:flex;gap:12px;align-items:center;width:min(400px,calc(100% - 28px));background:#fff;border:1px solid #b6c9b7;border-radius:18px;padding:10px 12px;box-shadow:0 6px 24px #25442d20}.compare-dock[hidden]{display:none}.compare-dock>span{font-size:0.8125rem;font-weight:650;flex:1}.compare-dock .btn{min-height:44px;padding:8px 15px}.compare-dock .icon-btn{flex:0 0 44px}.recovery-status{margin:22px 0;padding:20px;border:1px solid var(--line);border-radius:16px;background:#f5f7f0}.recovery-status h3{margin:0 0 10px}.recovery-status p{font-size:0.875rem;line-height:1.75}.recovery-status dl{display:flex;gap:24px;flex-wrap:wrap}.recovery-status dt{font-size:0.75rem}.recovery-status dd{margin:5px 0;font-size:1.375rem;font-weight:700}
@media(min-width:1050px){.compare-dock{bottom:22px}.app-frame .bottom-nav{width:380px}.brand-name{font-size:1rem;letter-spacing:.025em}.header-actions{gap:5px}}
@media(max-width:760px){.compare-grid{grid-template-columns:1fr}.compare-card{display:grid;grid-template-columns:124px minmax(0,1fr);border-radius:18px}.compare-image img{height:100%;min-height:165px;object-fit:cover}.compare-image>.icon-btn{top:8px;left:8px;right:auto}.compare-content{padding:18px}.compare-content h2{font-size:1.125rem;min-height:0;margin:7px 0 10px}.compare-description{min-height:0;font-size:0.75rem}.compare-facts>div{padding:10px 0}.compare-facts .compare-price{font-size:1.5rem}.compare-facts dd{font-size:0.8125rem}.compare-state{font-size:0.75rem}.compare-content .btn{font-size:0.8125rem}.compare-filters{padding:16px}.compare-filters .toolbar{grid-template-columns:1fr 1fr}.compare-filters .toolbar .field:last-child{grid-column:1/-1}.compare-add{min-height:100px;flex-direction:row}.brand-name{font-size:0.875rem}.brand-sub{font-size:0.5625rem}.compare-heading h1{font-size:2.125rem}.compare-heading p{font-size:0.875rem}}
@media(max-width:370px){.compare-card{display:flex}.compare-image img{height:135px;min-height:0}.compare-content{padding:18px}.brand-mark{width:34px;height:34px}.header-inner{gap:6px}.brand-name{font-size:0.75rem}.header-actions .icon-btn{min-width:40px;width:40px}.compare-dock{gap:6px}.compare-dock .btn{font-size:0.75rem;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.compare-toggle,.compare-add{transition:none;transform:none}}
/**/
@media(max-width:760px){.compare-card{display:flex}.compare-image{height:114px}.compare-image img{height:114px;min-height:0;object-fit:cover}.compare-content h2{font-size:1.1875rem}.compare-description{margin-bottom:12px}.compare-facts{grid-template-columns:1fr 1fr;column-gap:15px}.compare-facts>div{min-width:0}.compare-facts>div:first-child{grid-column:1/-1}.compare-facts dt{font-size:0.6875rem}.compare-facts dd{line-height:1.5}.compare-state{margin:10px 0}.compare-filters .toolbar .field:last-child{grid-column:auto}.compare-grid{gap:16px}.compare-heading{margin-bottom:20px}}
/**/
.experience-card{position:relative}
.experience-card .save-button{position:absolute;top:10px;right:10px;margin:0!important;background:#fff;box-shadow:0 2px 8px #173a3d14;z-index:2;border:1px solid #d7ded4}
.experience-card .meta-row{min-height:22px;margin-bottom:6px}
.compare-facts dt{font-size:0.75rem}

/**/
/**/
/**/
.times-heading{max-width:760px;margin:24px 0 20px}.times-heading>.eyebrow{display:block;margin-top:20px}.times-heading h2{font-size:clamp(1.625rem,4vw,2.375rem);line-height:1.2;margin:8px 0;overflow-wrap:anywhere}
.times-summary{display:flex;align-items:center;gap:32px;padding:24px;border:1px solid #c9d9ce;border-radius:20px;background:#edf3ed;margin:20px 0}.times-summary>div{display:flex;flex-direction:column;gap:4px}.times-summary b{font-size:2rem;line-height:1.1}.times-summary p{margin:0 0 0 auto;font-size:0.875rem;color:#456155;line-height:1.6}.times-scope{max-width:850px;line-height:1.7}
.time-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin-top:24px}.time-day{border:1px solid #d0ddd2;border-radius:18px;background:#fff;overflow:hidden}.time-day summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px;cursor:pointer;min-height:64px;font-weight:650}.time-day summary:focus-visible{outline:3px solid #34705d;outline-offset:-4px}.time-day[open] summary{border-bottom:1px solid #e2e9e1}.time-day-body{padding:0 20px}.time-sale-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0}.time-sale-row+.time-sale-row{border-top:1px solid #e2e9e1}.time-sale-row h3{margin:0 0 8px;font-size:1.25rem}.time-sale-row .btn{white-space:nowrap;min-height:48px}.time-sale-state{display:inline-flex;align-items:center;gap:6px;font-size:0.875rem;color:#6c5740}.time-sale-state.is-open{color:#245644}.time-sale-state svg,.time-sale-row .btn svg{width:20px;height:20px;flex:none}.time-sale-row p{margin:8px 0 0}.time-confirm-product{font-size:0.875rem;color:#52685c}.time-confirm-time{padding:16px;border-radius:14px;background:#eef3ed;font-size:1.375rem;line-height:1.5}.plan-line .badge{white-space:normal}.plan-line .text-btn{display:block;min-height:44px}
@media(max-width:720px){.time-day-list{grid-template-columns:1fr}.times-summary{gap:24px;padding:20px;flex-wrap:wrap}.times-summary p{margin:0;flex-basis:100%}.time-sale-row{align-items:flex-start}.time-day summary{padding:18px}.time-day-body{padding:0 18px}}
@media(prefers-reduced-motion:reduce){.time-day,.slot-choice{transition:none}}

/**/
/**/
/**/
.ideas-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:20px 0 30px;padding:28px;border:1px solid #e3e4d8;border-radius:24px;background:#f4f2e7}
.ideas-hero h1{font-size:clamp(1.875rem,4.4vw,3rem);line-height:1.08;letter-spacing:-.035em;margin:10px 0 14px;max-width:17ch}
.ideas-hero p{max-width:50ch;color:#466558;margin-bottom:0}
.ideas-art{display:flex;gap:10px;flex-shrink:0;align-items:center}
.ideas-art img{width:128px;height:112px;object-fit:cover;border-radius:80px 80px 20px 20px;border:3px solid #fff}
.ideas-art img:last-child{width:100px;height:96px;border-radius:20px 20px 60px 60px;margin-top:40px}
.ideas-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:24px}
.ideas-form{padding:22px}.ideas-form fieldset{border:0;min-width:0;margin:0 0 20px;padding:0}
.ideas-form legend{font-weight:750;margin-bottom:14px;padding:0;font-size:1.125rem}
.ideas-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ideas-fields .field{min-width:0;margin-bottom:0}
.ideas-fields .input{width:100%;min-width:0;min-height:48px}.ideas-form .field label{font-size:0.875rem}
.idea-purpose{display:grid;grid-template-columns:1fr 1fr;gap:8px}.idea-purpose label{position:relative;cursor:pointer}
.idea-purpose input{position:absolute;opacity:0;width:1px;height:1px}
.idea-purpose span{display:flex;align-items:center;gap:8px;border:1px solid #b7cbbf;border-radius:12px;min-height:48px;padding:10px 12px;font-size:0.875rem;background:#fff}
.idea-purpose input:checked+span{background:#e9f1e9;border-color:#225642;color:#163e2d;font-weight:700}
.idea-purpose input:focus-visible+span{outline:3px solid #1b7961;outline-offset:3px}
.idea-purpose svg,.idea-index svg,.idea-preferences summary svg{width:20px;height:20px;flex-shrink:0}
.idea-preferences{border-top:1px solid #dce5dd;border-bottom:1px solid #dce5dd;padding:14px 0;margin:10px 0 18px}
.idea-preferences summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:36px;font-weight:650}
.idea-preferences[open] summary{margin-bottom:18px}.ideas-content{min-width:0}
.idea-results{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}
.idea-card{background:#fff;border:1px solid #dbe2d9;border-radius:20px;overflow:hidden;padding:22px;display:flex;flex-direction:column;min-width:0}
.idea-card header h2{font-size:1.3125rem;line-height:1.3;margin:12px 0 6px;overflow-wrap:anywhere}
.idea-index{display:flex;gap:8px;align-items:center;font-size:0.8125rem;color:#527163;letter-spacing:.04em}
.idea-timeline{list-style:none;padding:0;margin:18px 0;flex:1}.idea-timeline li{position:relative;display:flex;gap:12px;padding-bottom:22px;font-size:0.875rem}
.idea-timeline li:not(:last-child):before{content:'';position:absolute;left:13px;top:28px;bottom:0;border-left:1px dashed #a7beb0}
.idea-node{border-radius:50%;display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;background:#eaf1e9;color:#264d3a;font-size:0.75rem;font-weight:700}
.idea-timeline strong{display:block;line-height:1.5}.idea-timeline p{font-size:0.8125rem;color:#5a6e61;margin:6px 0 0}
.idea-card footer{border-top:1px solid #e2e7dd;padding-top:18px;display:flex;gap:12px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}
.idea-card footer span,.idea-card footer strong{display:block}.idea-card .price{font-size:1.5rem;margin:6px 0}
.idea-card .btn{min-height:46px}.idea-empty{padding:32px;border:1px dashed #c1d0c3;border-radius:20px;text-align:center;background:#fbfcf8}
.idea-empty .hub-icon{margin:0 auto 14px}.idea-empty p{max-width:44ch;margin:12px auto 18px;color:#586b5f}
.idea-confirm-lines{padding-left:20px}.idea-confirm-lines li{padding:8px 0}.idea-confirm-lines span{display:block;color:#566f60}
.idea-confirm-total{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;border-top:1px solid #dce4da;padding-top:18px}
#ideaFeedback:not([hidden]),#ideaDialogError:not([hidden]){border-left:3px solid #9f3f28;padding:12px;background:#fff3ed;color:#78331f;margin:12px 0}
.ideas-home-link{margin:24px 0;display:flex;gap:14px;align-items:center;background:#f1f2e7;border:1px solid #dfe3d4;border-radius:18px;padding:18px}
.ideas-home-link div{flex:1}.ideas-home-link strong{display:block;font-size:1.1875rem}.ideas-home-link p{margin:6px 0 0;color:#586b5f;font-size:0.875rem}
@media(max-width:1000px){.idea-results{grid-template-columns:1fr}.ideas-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr)}}
@media(max-width:720px){.ideas-layout{grid-template-columns:1fr}.ideas-hero{padding:22px;gap:10px;align-items:flex-start}.ideas-art img{width:80px;height:100px}.ideas-art img:last-child{display:none}.ideas-hero p{font-size:0.875rem}.ideas-hero h1{font-size:2rem}.ideas-form{padding:20px}.idea-card{padding:20px}.ideas-home-link{flex-wrap:wrap}.ideas-home-link .btn{width:100%}}
@media(max-width:360px){.ideas-art{display:none}.ideas-fields{grid-template-columns:1fr}.idea-purpose{grid-template-columns:1fr}.ideas-hero h1{font-size:1.875rem}}

/**/
/**/
/**/
.app-update-note{max-width:1120px;margin:10px auto;padding:12px 20px;background:#f4ecd9;color:#493f27;border-radius:12px;font-size:0.875rem;line-height:1.6}
.app-update-note[hidden]{display:none!important}
.app-access-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0 28px}
.app-access-hero h1{font-size:clamp(1.875rem,4vw,2.75rem);line-height:1.12;letter-spacing:-.025em;margin:10px 0 14px}
.app-access-hero p{max-width:48ch;color:#50665a;line-height:1.65}
.app-access-art{flex:0 0 auto;width:176px;height:138px;border-radius:26px;object-fit:cover}
.app-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.app-access-card{padding:26px!important;min-width:0}
.app-access-card h2{margin:12px 0 10px;font-size:1.3125rem;line-height:1.3}
.app-access-card p{line-height:1.7;overflow-wrap:anywhere}
.app-access-guide{border-top:1px solid #d5dfd6;margin-top:18px;padding-top:8px}
.app-access-guide summary{min-height:44px;cursor:pointer;padding:10px 0;font-weight:600}
.app-access-result{padding:12px 16px;background:#f0f5ef;border-radius:12px}
@media(max-width:600px){.app-access-grid{grid-template-columns:1fr}.app-access-hero{gap:12px}.app-access-art{width:96px;height:96px;border-radius:20px}.app-access-card{padding:22px!important}.app-update-note{margin:8px 16px}.app-access-hero h1{font-size:1.875rem}}
@media(prefers-reduced-motion:reduce){.app-access-card,.app-access-guide{scroll-behavior:auto}}

.identity-retry{margin-top:16px}

/**/
/**/
/**/
.share-trigger{min-height:44px;gap:7px}
.share-trigger svg,.share-actions svg,.shared-info svg,.shared-footnote svg{width:20px;height:20px;flex:0 0 20px}
.detail-share-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}
.share-summary{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.share-summary p{margin:4px 0 0;color:var(--muted,#526760)}
.share-value{width:100%;box-sizing:border-box;resize:none;line-height:1.6;margin-top:8px;overflow-wrap:anywhere}
.share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.share-feedback{min-height:24px;margin:12px 0}
.shared-experience{padding:14px 0 26px}
.shared-intro{max-width:780px;margin:0 0 26px}
/**/
.shared-intro .eyebrow{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.shared-intro h1{font-size:clamp(1.75rem,4vw,2.875rem);line-height:1.18;letter-spacing:-.035em;margin:14px 0 12px}
.shared-intro p{font-size:1.0625rem;color:#536e61}
.shared-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:stretch}
.shared-cover{width:100%;height:100%;min-height:290px;max-height:440px;object-fit:cover;border-radius:24px}
.shared-info{padding:28px;display:flex;align-items:flex-start;flex-direction:column;gap:14px}
.shared-info h2,.shared-info p{margin:0}
.shared-price{display:flex;flex-direction:column;gap:4px}.shared-price strong{font-size:1.75rem;letter-spacing:-.03em}
.shared-info>.btn{margin-top:auto;min-height:48px;width:100%}.shared-info>.text-btn{align-self:center}
.shared-footnote{display:flex;gap:10px;align-items:flex-start;color:#536e61;font-size:0.875rem;margin:20px 0;line-height:1.6}
.share-unavailable h1{font-size:1.75rem}.share-unavailable .btn-row{justify-content:center}
@media(max-width:700px){.shared-layout{grid-template-columns:1fr;gap:16px}.shared-cover{min-height:0;height:auto;aspect-ratio:8/5}.shared-info{padding:22px}.shared-intro{margin-bottom:18px}.shared-experience{padding-top:8px}.share-actions>.btn{flex:1 1 140px}}
@media(prefers-reduced-motion:reduce){.shared-experience *{scroll-behavior:auto}}
/**/
#planBtn{position:relative}
#planBtn .plan-dot{position:absolute;right:-3px;top:-5px;min-width:18px;height:18px;border-radius:9px;background:#286b5b;color:#fff;border:2px solid #fff;padding:0 3px;font-size:0.625rem;line-height:14px;font-weight:700;text-align:center}

/**/
/**/
/**/
.service-list .section-head { align-items: center; }
.service-list .text-btn { min-height: 48px; }
.service-preview { display: grid; justify-items: start; gap: 12px; }
.service-preview .hub-icon { margin-bottom: 2px; }
.service-preview .badge { margin: 0; }
.service-preview h2, .service-preview p { margin: 0; }
.service-journey { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; width: 100%; margin: 14px 0; padding: 0; list-style: none; }
.service-journey li { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: #f9fbf7; font-size: 0.8125rem; font-weight: 650; }
.service-journey li svg { width: 20px; height: 20px; flex: 0 0 20px; }
.service-journey li span { overflow-wrap: anywhere; }
.service-preview .inline-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.service-preview .inline-actions .btn { min-height: 48px; }
@media (max-width: 520px) {
  .service-list .section-head { align-items: flex-start; flex-wrap: wrap; }
  .service-journey { grid-template-columns: 1fr; margin: 8px 0; }
  .service-preview .inline-actions { width: 100%; }
  .service-preview .inline-actions .btn { flex: 1 1 100%; }
}

/**/
/**/
/**/
.availability-insight {display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:18px 20px;border:1px solid #d9e5d8;border-radius:18px;background:#f4f8f0;}
.availability-insight h2,.availability-insight p {margin:0;}
.availability-insight h2 {font-size:1.1875rem;line-height:1.3;}
.availability-insight p {margin-top:5px;}
.availability-insight .btn {min-height:48px;flex:0 0 auto;}
.availability-insight .insight-detail {font-weight:650;color:#245440;}
.spatial-preview .section-head {margin-bottom:6px;}
.spatial-preview .section-head h2 {margin:4px 0 0;}
.space-hotels {display:flex;gap:8px;flex-wrap:wrap;margin:18px 0;}
.space-hotels .chip {min-height:44px;}
.space-hotels .chip:focus-visible,.space-pin:focus-visible,.space-choice:focus-visible {outline:3px solid #9b6f2f;outline-offset:3px;}
.space-layout {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(245px,.8fr);gap:18px;align-items:start;margin-top:18px;}
.space-art {position:relative;min-width:0;overflow:hidden;border:1px solid #d9e5d8;border-radius:22px;background:#f0f3eb;}
.space-art>img {display:block;width:100%;height:auto;aspect-ratio:5/3;object-fit:cover;}
.space-pin {position:absolute;display:flex;align-items:center;gap:6px;max-width:38%;min-height:44px;padding:5px 9px;border:1px solid #c5d4c9;border-radius:999px;background:#fff;color:#183c32;box-shadow:0 5px 13px #1d453523;font:inherit;font-size:0.75rem;font-weight:700;text-align:left;cursor:pointer;}
.space-pin span:last-child {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.space-pin-number,.space-choice-number {display:inline-grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#235847;color:#fff;font-size:0.75rem;}
.space-pin-1 {left:8%;top:56%;}.space-pin-2 {left:48%;top:20%;}.space-pin-3 {left:55%;top:66%;}.space-pin-4 {left:14%;top:20%;}
.space-details {padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;}
.space-details h3 {margin:0 0 14px;font-size:1.125rem;}
.space-choice {display:flex;align-items:center;gap:9px;width:100%;min-height:48px;margin-top:7px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:#fafbf8;color:var(--ink);font:inherit;font-weight:600;text-align:left;cursor:pointer;}
.space-choice span:nth-child(2) {flex:1;min-width:0;overflow-wrap:anywhere;}
.space-choice svg {width:16px;height:16px;flex:0 0 16px;}
.space-details .small {margin:14px 2px 0;}
@media(max-width:850px) {.space-layout {grid-template-columns:1fr;}.space-pin {display:none;}.space-details {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.space-details h3,.space-details .small {grid-column:1/-1;}.space-choice {margin:0;}}
@media(max-width:580px) {.availability-insight {display:block;padding:16px;}.availability-insight .btn {width:100%;margin-top:14px;}.space-details {display:block;}.space-choice {margin-top:7px;}}

/**/
/**/
/**/
.hub-tile strong,.category-tile strong,.category-tile span:last-child {overflow-wrap:anywhere;}
.time-summary {line-height:1.5;}
@media (max-width:700px) {
  .hub-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .hub-tile {min-height:96px;align-items:flex-start;text-align:left;padding:14px;gap:10px;}
  .hub-tile strong {font-size:0.875rem;line-height:1.4;}
  .hub-icon {width:42px;height:42px;flex-basis:42px;}
  .category-tile {font-size:0.875rem;line-height:1.45;}
  .editorial-products {grid-template-columns:1fr;gap:14px;}
  .editorial-products .experience-media,.editorial-products .experience-media img {height:148px;min-height:148px;}
  .editorial-products .experience-body {padding:16px;}
  .editorial-products .experience-title {font-size:1.0625rem;line-height:1.4;}
  .editorial-products .experience-footer .price {font-size:1.25rem;}
  .editorial-products .experience-body .product-open {min-height:48px;}
  .time-summary {font-size:0.8125rem;gap:8px 14px;}
  .time-summary>span {min-height:28px;}
}
@media (max-width:360px) {
  .hub-tile {padding:12px;}
  .hub-tile strong {font-size:0.8125rem;}
  .category-grid {grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce) {
  .hub-tile,.category-tile,.experience-card {transform:none!important;}
}

/**/
/**/
/**/
.policy-card {display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #b8d9c9;border-radius:16px;background:#eef7f1;color:#173e36;line-height:1.5;}
.policy-card>div {min-width:0;}
.policy-card strong,.policy-card time {display:block;overflow-wrap:anywhere;}
.policy-card strong {font-size:0.875rem;}
.policy-card time {font-size:1.0625rem;font-weight:750;margin:4px 0 8px;}
.policy-card p {font-size:0.875rem;margin:6px 0 0;}
.policy-card .policy-sample {font-size:0.8125rem;color:#4f625b;}
.policy-icon {display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:#d8ecdf;}
.policy-icon svg {width:21px;height:21px;}
.policy-card-closed,.policy-card-unknown {background:#fff8e9;border-color:#ead6ae;color:#634a23;}
.policy-card-closed .policy-icon {background:#f9e9c4;}
.quote-validity {display:block;line-height:1.5;}
.quote-validity time {display:block;font-weight:700;overflow-wrap:anywhere;}
/**/
body.checkout-focus .bottom-nav,body.space-focus .bottom-nav {position:relative;left:auto;top:auto;bottom:auto;transform:none;width:min(620px,calc(100% - 36px));height:var(--nav-h);grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto 24px;}
body.checkout-focus .shell,body.space-focus .shell {padding-bottom:24px;}
.staff-capacity {display:grid;gap:3px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:12px 0;color:var(--ink);}
.staff-capacity strong {font-size:1rem;}
.staff-capacity span {font-size:0.8125rem;color:var(--muted);}
@media (max-width:360px) {.policy-card {padding:13px;gap:9px;}.policy-card time {font-size:0.9375rem;}}

/**/
/**/
.draft-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:20px 0;}
.draft-controls .field{margin:0;min-width:96px;}
.draft-controls .btn,.draft-actions .btn{min-height:44px;white-space:normal;overflow-wrap:anywhere;}
.draft-controls .btn{max-width:100%;}
.draft-line{min-width:0;overflow-wrap:anywhere;padding:18px 0;border-left:0;margin-left:0;}
.draft-line::before{display:none;}
.draft-line:first-child{padding-top:0;}
.draft-line:last-child{padding-bottom:0;}
.draft-line h3{margin:8px 0;}
.draft-line .plan-time{display:block;margin:0;}
.draft-line p{margin:6px 0;}
.draft-price{font-weight:700;}
.draft-previous{display:inline-block;font-size:.8125rem;color:#5c685f;background:#edf1e9;border-radius:7px;padding:4px 8px;margin-bottom:8px;}
.draft-issue{background:#fff8e9;color:#694719;border-left:3px solid #a4651e;border-radius:10px;padding:10px 12px;margin:12px 0;line-height:1.6;}
.draft-issue p{margin:0;font-size:.875rem;}
.draft-issue p+p{margin-top:6px;}
.draft-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.draft-actions .btn{font-size:.875rem;max-width:100%;padding:10px 12px;}
.draft-actions .btn svg{flex-shrink:0;}
.draft-status{font-size:.875rem;line-height:1.6;}
.draft-unknown-amount{font-size:1.125rem;line-height:1.6;overflow-wrap:anywhere;}
/**/
body.draft-focus .bottom-nav{position:relative;left:auto;top:auto;bottom:auto;transform:none;width:min(620px,calc(100% - 36px));height:var(--nav-h);grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto 24px;}
body.draft-focus .shell{padding-bottom:24px;}
@media(max-width:380px){.draft-actions{gap:8px;}.draft-actions .btn{padding:10px;}}

/**/
/**/
/**/
.account-recovery-code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;padding:16px;border:1px solid var(--border,#d9dfd5);border-radius:16px;background:#eef4ed;font:500 .95rem/1.6 ui-monospace,monospace;max-width:100%}
.account-code-input{font-family:ui-monospace,monospace;font-size:1rem}
#accountHumanCheck{margin:16px 0;max-width:100%;min-height:65px}
.login-box .btn-row{margin-top:16px;flex-wrap:wrap}

/**/
.space-viewer{min-width:0}.space-viewer>[data-space3d-open]{margin-top:12px}
.space3d-canvas{display:block;width:100%;height:360px;border:1px solid var(--border,#d9dfd5);border-radius:24px;background:#edf2e8}
.space3d-canvas[hidden],.space3d-controls[hidden]{display:none}
.space3d-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.space3d-controls .btn{min-width:44px;min-height:44px;font-size:0.875rem}
@media(max-width:600px){.space3d-canvas{height:280px}.space3d-controls .btn{flex:1 1 28%;padding:10px 8px}}

/**/
/**/
/**/
@font-face{font-family:Inter;src:url('../assets/inter-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--page:#f6f7f9;--canvas:#f6f7f9;--ink:#162b30;--muted:#53646b;--brand:#176657;--line:#dce3e6;--line-strong:#aebcc2;--r20-soft:#eaf3ee;--nav-h:76px;--shadow:0 10px 30px #132d3610;--shadow-sm:0 3px 12px #132d3609}
body{font-family:Inter,'Apple SD Gothic Neo','Malgun Gothic','Segoe UI',system-ui,sans-serif;font-size:1rem;line-height:1.6;background:var(--page);font-weight:400}
html{scroll-behavior:auto;scroll-padding-top:100px;scroll-padding-bottom:100px}
button,input,select,textarea{font-family:inherit}button{font-weight:600}
h1,h2,h3,strong,b{font-weight:600}h1,h2,h3{letter-spacing:-.025em;line-height:1.25}
p{line-height:1.65}.small,.fine-print,.profile-section p{font-size:0.875rem;line-height:1.6}.tiny{font-size:0.8125rem;line-height:1.5}.muted{color:var(--muted)}
.app-header{background:#fff;backdrop-filter:none;border-bottom:1px solid var(--line)}
.header-inner{max-width:1320px;min-height:80px;padding:16px 32px;gap:14px}
.brand-mark{width:42px;height:42px;border-radius:12px;box-shadow:none;background:var(--brand)}
.brand-name{font-size:1.0625rem;font-weight:650;letter-spacing:.06em}.brand-sub{font-size:0.75rem;font-weight:400;letter-spacing:0;line-height:1.5}
.header-actions{gap:8px}.header-actions .icon-btn{border-color:transparent;background:#f6f8f9;border-radius:12px}
.demo-note{background:#edf1f4;color:#45565e;font-size:0.75rem;line-height:1.6;padding:8px 20px;border-bottom:1px solid var(--line)}
.shell{width:min(1320px,100%);max-width:1320px;padding:32px 32px 116px}
.btn{min-height:48px;padding:12px 20px;gap:9px;border-radius:12px;font-size:0.9375rem;font-weight:600;line-height:1.5;white-space:normal;word-break:normal;box-shadow:none}
.btn svg{width:20px;height:20px;flex:0 0 20px}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-secondary{background:#fff;border-color:#aebfc0;color:#214b44}
.icon-btn,.save-button{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:12px}.icon-btn svg,.save-button svg{width:22px;height:22px}.text-btn{font-size:0.875rem;font-weight:600;min-height:44px;line-height:1.5}
.text-btn svg{width:18px;height:18px}.btn:focus-visible,.text-btn:focus-visible,.icon-btn:focus-visible,.hub-tile:focus-visible,.category-tile:focus-visible,.nav-btn:focus-visible{outline:3px solid #116c98;outline-offset:4px}
.btn:disabled{opacity:.65;cursor:not-allowed}.btn:hover:not(:disabled){filter:brightness(.97)}
.eyebrow{font-size:0.75rem;line-height:1.5;font-weight:600;letter-spacing:.09em;color:#4a6660;text-transform:uppercase}
/**/
.editorial-hero{grid-template-columns:1fr 1.07fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:24px;min-height:420px;box-shadow:var(--shadow-sm);align-items:stretch}
.editorial-copy{padding:48px 40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.editorial-copy h1{font:600 clamp(38px,4.25vw,58px)/1.12 Inter,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;letter-spacing:-.045em;max-width:11ch;margin:18px 0;white-space:pre-line}
.editorial-copy p{font-size:1rem;line-height:1.7;max-width:38ch;color:var(--muted);margin:0 0 26px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.editorial-copy .btn{font-size:0.9375rem;min-height:48px;padding:12px 18px}
.editorial-art{padding:0;min-height:420px;position:relative;overflow:hidden;display:block}
.editorial-art img{width:100%;height:100%;max-height:none;position:absolute;inset:0;object-fit:cover;object-position:60% 50%;transform:none;opacity:1}
.art-caption{display:block;position:absolute;bottom:20px;left:20px;right:auto;color:#203d38;background:#ffffffee;font-size:0.75rem;line-height:1.5;font-weight:500;letter-spacing:0;padding:8px 12px;border-radius:8px;max-width:calc(100% - 40px)}
.time-summary{border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow-sm);gap:18px 28px;padding:20px 24px;margin:18px 0 28px;font-size:0.875rem;line-height:1.5}
.time-summary>span{gap:10px;min-height:28px}.time-summary svg{width:20px;height:20px;flex-basis:20px}.time-summary b{font-weight:600}.time-summary .time-edit{display:flex}
.section{margin-top:40px}.section-head{gap:16px;margin-bottom:20px;align-items:center}.section-head h2,.section-title h2{font-size:1.625rem;font-weight:600;letter-spacing:-.03em;line-height:1.3;margin:0}
.section-head .eyebrow{display:block;margin-bottom:8px}.section-head .btn{font-size:0.875rem;min-height:44px;padding:10px 16px}
.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hub-tile{flex-direction:row;align-items:center;text-align:left;min-height:98px;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line);gap:16px;box-shadow:var(--shadow-sm)}
.hub-tile strong{font-size:1rem;font-weight:600;line-height:1.45;word-break:normal;overflow-wrap:break-word}.hub-tile>svg{display:block;width:18px;height:18px;flex-basis:18px;color:#53756c}
.hub-icon,.card-icon{width:48px;height:48px;flex:0 0 48px;border-radius:14px;border:0;background:#eaf3ee;color:#246454;margin:0}.hub-icon svg,.card-icon svg{width:24px;height:24px}
.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-tile{display:flex;align-items:center;gap:16px;padding:22px;min-height:98px;border-radius:16px;font-size:1rem;font-weight:600;border:1px solid var(--line);background:#fff}
.category-tile .card-icon{width:48px;height:48px;background:#eaf3ee}.service-choices .category-tile{flex-direction:row;justify-content:flex-start;text-align:left;min-height:98px}
.hub-tile:hover,.category-tile:hover{background:#f7fbf9;border-color:#89aa9d;transform:none}
.breadcrumbs{font-size:0.875rem;gap:12px;margin-bottom:18px}.page-heading{margin:12px 0 28px}.page-heading h1{font:600 clamp(28px,3vw,38px)/1.25 Inter,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;letter-spacing:-.035em;margin-bottom:10px}.page-heading p{font-size:1rem;color:var(--muted)}
/**/
.product-grid,.editorial-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.experience-card,.editorial-products .experience-card{display:block;min-height:0;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff}
.experience-media,.editorial-products .experience-media{display:block;position:relative;width:100%;height:210px;min-height:210px;padding:0;background:#e4eee9;overflow:hidden;border-radius:0}
.experience-media img,.editorial-products .experience-media img{display:block;width:100%;height:210px;min-height:210px;object-fit:cover;aspect-ratio:auto}
.experience-body,.editorial-products .experience-body{padding:20px}.experience-body .meta-row{align-items:center;gap:10px}.experience-body .tiny{font-size:0.8125rem;line-height:1.5}
.experience-title,.editorial-products .experience-title{font-size:1.25rem;font-weight:600;line-height:1.4;letter-spacing:-.02em;margin:6px 0 8px}
.experience-body .product-open{min-height:60px}.experience-body .small{font-size:0.875rem}.experience-footer{border-top:1px solid #e6ecee;padding-top:16px;margin-top:16px;gap:12px;align-items:center}
.experience-footer .price,.editorial-products .experience-footer .price{font-size:1.375rem;font-weight:600;line-height:1.35}.experience-footer .icon-btn{background:#eaf3ee;color:#1e6251;border:0}
.badge{font-size:0.75rem;line-height:1.5;font-weight:600;border-radius:7px;padding:5px 9px;white-space:normal}.compare-button{font-size:0.8125rem;min-height:44px}
.search-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px 12px;gap:12px;margin-bottom:22px}.search-box input{font-size:1rem;min-width:0}.search-box .btn{min-height:48px}
.toolbar{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;gap:18px;align-items:end}.toolbar .field{min-width:0;flex:1}.field label{font-size:0.875rem;font-weight:500;margin-bottom:8px}.input{font-size:1rem;min-height:48px;border-radius:10px;border-color:#aebdc5;padding:11px 12px;background:#fff}
.filter-summary{margin:24px 0}.filter-summary p{font-size:0.875rem;margin:4px 0}.view-switch{background:#e8eef0;border-radius:10px;padding:4px}.seg-btn{font-size:0.875rem;font-weight:500;min-height:44px;border-radius:8px}.seg-btn.active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}
.detail-hero{grid-template-columns:1.12fr 1fr;gap:28px;align-items:start}.detail-media{height:490px;min-height:490px;border-radius:20px;overflow:hidden;background:#e4eee9}.detail-media img{width:100%;height:100%;object-fit:cover}
.detail-panel{padding:28px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm)}.detail-panel h1{font-size:2rem;font-weight:600;line-height:1.3;letter-spacing:-.03em}.detail-panel p{font-size:1rem}.detail-panel .fine-print{font-size:0.875rem}.facts{gap:12px;padding:18px 0}.fact{font-size:0.875rem}.fact b{font-size:1rem;font-weight:600}.slot-options{gap:10px;margin:14px 0}.slot-choice{min-height:48px;font-size:0.875rem;font-weight:500;border-radius:10px;padding:12px}.slot-choice.active{background:#eaf4ed;color:#1c5848;border-color:#397e68}
.plan-card,.plan-summary,.profile-section{border-radius:18px;box-shadow:var(--shadow-sm);padding:24px}.plan-summary h2{font-size:1.5rem;font-weight:600}.plan-line h3{font-size:1.125rem;font-weight:600}.journey-steps{gap:12px;margin:4px 0 24px}.journey-step{font-size:0.8125rem;font-weight:500}.step-number{font-weight:600}.journey-step.is-current{color:#185e4e}
.agreement-row{font-size:0.9375rem;line-height:1.6}.agreement-row input{width:20px;height:20px}.notice{font-size:0.875rem;line-height:1.6;border-radius:12px;padding:14px 16px}.policy-card{padding:18px}.policy-card strong{font-size:0.9375rem;font-weight:600}.policy-card time{font-size:1.125rem;font-weight:600}
/**/
.pass-list{max-width:820px;margin:auto;gap:24px}.pass-card{background:#fff;color:var(--ink);border:1px solid #c8d8d1;border-top:6px solid var(--brand);border-radius:18px;padding:28px;box-shadow:var(--shadow-sm)}
.pass-card:after{display:none}.pass-card .badge{background:#eaf3ee;color:#255f4d}.pass-card h2{font-size:1.75rem;font-weight:600;line-height:1.3}.pass-card h3{font-size:1.25rem;font-weight:600}.pass-card .small{font-size:0.875rem;color:#50646a}.pass-line{border-top:1px dashed #bdcdc7;padding-top:20px;margin-top:20px}.pass-actions{gap:10px}.pass-actions .btn{min-height:48px;background:#fff;color:#214e45;border:1px solid #a9beb5;font-size:0.875rem}.pass-card .pass-help .btn{color:#214e45}.refund-state{background:#f5f8f7}
.empty{background:#fff;border:1px solid var(--line);border-radius:18px;padding:44px 24px;max-width:780px;margin:24px auto}.empty h2{font-size:1.5rem;font-weight:600}.empty p{font-size:1rem;max-width:50ch;margin:0 auto 24px}.empty .card-icon{margin:auto}
.login-box{max-width:540px;border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:var(--shadow-sm)}.login-box p{font-size:1rem}.login-box .btn{font-size:0.9375rem}
.service-preview{max-width:820px;padding:32px}.service-preview h2{font-size:1.75rem;font-weight:600}.service-preview p{font-size:1rem;line-height:1.7}.service-journey li{font-size:0.875rem;font-weight:500;padding:16px;background:#f5f8f7}
.journal-teaser{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;margin-top:40px}.journal-teaser h2{font-size:1.5rem;font-weight:600}.journal-teaser p{font-size:0.9375rem}
.availability-insight{background:#edf4f1;border:1px solid #c7dcd2;border-radius:16px;padding:20px}.availability-insight h2{font-size:1.125rem;font-weight:600}.availability-insight p{font-size:0.875rem}.ideas-home-link{border-radius:16px;padding:24px}
.tl-dialog{border-radius:20px;padding:28px;border:1px solid var(--line);box-shadow:0 24px 80px #17343b30}.dialog-head h2{font-size:1.5rem;font-weight:600}.quick-plan .eyebrow{font-size:0.9375rem;text-transform:none;letter-spacing:0}.quick-plan .field label{font-size:0.875rem}
/**/
.bottom-nav{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 4px 20px #12303a14;backdrop-filter:none;padding:6px;width:min(600px,calc(100% - 24px));bottom:max(12px,env(safe-area-inset-bottom));height:var(--nav-h)}
.nav-btn{color:#53696c;font-size:0.75rem;font-weight:500;min-height:60px;border-radius:12px;gap:5px}.nav-btn svg{width:24px;height:24px}.nav-btn.active{background:#eaf3ee;color:#185e4e}
@media(min-width:1050px){.app-frame .shell,.app-frame .header-inner{padding-left:120px}.bottom-nav{left:20px;top:128px;bottom:auto;width:84px;height:auto;grid-template-columns:1fr;gap:6px}.bottom-nav .nav-btn{min-height:72px}.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1049px){.editorial-hero{min-height:360px}.editorial-copy{padding:32px}.editorial-copy h1{font-size:2.75rem}.editorial-art{min-height:360px}.product-grid,.editorial-products{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-grid,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-hero{grid-template-columns:1fr}.detail-media{height:360px;min-height:360px}}
@media(max-width:700px){.header-inner{min-height:72px;padding:12px 18px}.brand-name{font-size:0.9375rem}.brand-mark{width:36px;height:36px}.header-actions{gap:4px}.header-actions .icon-btn{background:transparent}.shell{padding:20px 18px 116px}.editorial-hero{grid-template-columns:1fr;border-radius:20px;min-height:0}.editorial-copy{padding:28px 24px}.editorial-copy h1{font-size:2.375rem;max-width:13ch;margin:14px 0}.editorial-copy p{font-size:0.9375rem;line-height:1.65;max-width:40ch;margin-bottom:22px}.editorial-copy .eyebrow{font-size:0.75rem;letter-spacing:.09em}.editorial-copy .btn{font-size:0.875rem;padding:12px 16px}.editorial-art{height:210px;min-height:210px}.editorial-art img{height:210px;min-height:210px;width:100%;transform:none;object-position:55% 55%;opacity:1}.art-caption{bottom:12px;left:12px;font-size:0.75rem;padding:6px 10px}.time-summary{margin:14px 0 22px;padding:16px;gap:12px 18px;font-size:0.875rem}.time-summary>span{min-height:28px}.time-summary .time-edit{margin-left:0}.section{margin-top:32px}.section-head{gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.section-head h2,.section-title h2{font-size:1.4375rem}.section-head .eyebrow{font-size:0.75rem}.section-head .btn{font-size:0.875rem}.hub-grid{gap:12px}.hub-tile{flex-direction:column;align-items:flex-start;text-align:left;padding:18px;min-height:130px;gap:12px}.hub-tile strong{font-size:1rem;line-height:1.45}.hub-tile>svg{display:none}.hub-icon{width:44px;height:44px;flex-basis:44px}.category-grid{gap:12px}.category-tile,.service-choices .category-tile{flex-direction:column;align-items:flex-start;text-align:left;padding:18px;min-height:126px;font-size:1rem}.product-grid,.editorial-products{grid-template-columns:1fr;gap:20px}.experience-media,.editorial-products .experience-media,.experience-media img,.editorial-products .experience-media img{height:210px;min-height:210px}.experience-body,.editorial-products .experience-body{padding:20px}.editorial-products .experience-title{font-size:1.25rem}.experience-body .tiny,.editorial-products .tiny{font-size:0.8125rem}.toolbar{padding:18px;gap:14px;flex-wrap:wrap}.toolbar .field:first-child{flex-basis:100%}.toolbar .field{flex:1 1 40%}.detail-panel{padding:22px}.detail-panel h1{font-size:1.75rem}.detail-media{height:260px;min-height:260px}.pass-card{padding:24px 20px}.pass-card h2{font-size:1.5625rem}.pass-actions{grid-template-columns:1fr 1fr}.journal-teaser{padding:20px;gap:12px;flex-wrap:wrap}.journal-teaser .hub-icon{display:none}.journal-teaser h2{font-size:1.375rem}.journal-teaser p{font-size:0.875rem}.journal-teaser>.btn{margin-left:0}.plan-card,.plan-summary,.profile-section{padding:20px}.service-preview{padding:24px}.journey-step{font-size:0.75rem}.tl-dialog{padding:22px}.page-heading h1{font-size:1.875rem}.service-preview h2{font-size:1.5rem}.login-box{padding:24px}}
@media(max-width:360px){.shell{padding-left:14px;padding-right:14px}.header-inner{padding-left:14px;padding-right:14px}.brand-name{font-size:0.8125rem}.brand-mark{width:32px;height:32px}.header-actions{gap:0}.header-actions .icon-btn{min-width:44px;width:44px}.editorial-copy{padding:24px 20px}.editorial-copy h1{font-size:2.125rem}.hero-actions{width:100%}.hero-actions .btn{flex:1 1 100%}.hub-tile,.category-tile{padding:16px;min-height:126px}.hub-tile strong,.category-tile{font-size:0.9375rem}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.time-summary{gap:10px 14px}.experience-media,.experience-media img,.editorial-products .experience-media,.editorial-products .experience-media img{height:190px;min-height:190px}.pass-actions{grid-template-columns:1fr}.search-box{flex-wrap:wrap}.search-box .btn{width:100%}.journey-steps{gap:6px}.journey-step{font-size:0.75rem}.service-journey{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/**/
.experience-media,
.detail-media,
.compare-image {
    position: relative;
}

.sample-image-note {
    position: absolute;
    left: 12px;
    bottom: 12px;
    max-width: calc(100% - 24px);
    padding: 6px 10px;
    border: 1px solid #d6ded6;
    border-radius: 8px;
    background: #fffffff2;
    color: #183c2f;
    font-size: .75rem;
    font-weight: 650;
    line-height: 1.35;
    overflow-wrap: anywhere;
    pointer-events: none;
}

.sample-text-caption {
    display: inline-block;
    margin: 8px 0 0;
    padding: 5px 9px;
    border: 1px solid var(--line);
    border-radius: 8px;
    color: var(--muted);
    font-size: .8rem;
    line-height: 1.4;
}

/**/
.compare-content > .sample-image-note {
    position: static;
    align-self: flex-start;
    max-width: 100%;
    margin: 0 0 12px;
}

/**/
.product-grid .experience-media.concept-media img,
.detail-hero .detail-media.concept-media img,
.compare-card .compare-image.concept-media img {
    object-fit: cover;
}

/**/
/**/
/**/
.room-continuation{margin-block:0 24px;padding:24px;min-width:0;border-inline-start:4px solid var(--brand,#1a6b55)}
.room-continuation h2{font-size:1.25rem;margin:0 0 8px}.room-continuation p{max-width:64ch;overflow-wrap:anywhere}
.room-continuation .btn-row{gap:12px;margin-top:16px;flex-wrap:wrap}.room-continuation .btn{white-space:normal;min-height:48px}
@media(max-width:600px){.room-continuation{padding:20px}.room-continuation .btn-row{display:grid;grid-template-columns:1fr}}
.room-intro{margin:8px 0 28px}.room-intro h1{font-size:2.25rem;margin:10px 0}.room-intro p{color:var(--muted);max-width:64ch}
.room-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:start}.room-visual,.room-controls{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;min-width:0}
.room-art{border-radius:16px;overflow:hidden;margin-bottom:18px}.room-art svg{width:100%;height:auto;display:block}.room-controls h2{font-size:1.5rem;margin:0 0 20px}.room-controls h3{font-size:1.125rem;margin:26px 0 14px}.room-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.room-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:86px;border:1px solid var(--line);border-radius:12px;background:#f7faf8;font-size:0.875rem;color:var(--ink);padding:12px;font-weight:500}.room-choice svg{width:24px;height:24px}.room-choice:disabled{opacity:.5}
.room-chips{display:flex;flex-wrap:wrap;gap:8px}.room-chips .chip{min-height:48px;display:flex;align-items:center;gap:8px;font-size:0.875rem;font-weight:500}.room-chips [aria-pressed=true]{border-color:#1a6b55;background:#eaf3ee;color:#185b49}.room-swatch{display:block;width:18px;height:18px;border-radius:50%;flex:0 0 18px}.swatch-forest,.swatch-olive{background:#789b83}.swatch-sand,.swatch-sun{background:#c8a154}.swatch-sky{background:#86a8b9}.swatch-coral{background:#bb7465}.swatch-navy{background:#496d87}
.room-item-list{display:grid;gap:8px}.room-item{display:flex;gap:10px;align-items:center;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;color:var(--ink);font-size:0.875rem;font-weight:500}.room-item svg{width:20px;height:20px;flex:none}.room-item small{font-size:0.8125rem;color:var(--muted);margin-left:auto}.room-item.selected{background:#eaf3ee;border-color:#438a71}.room-placement{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.room-placement .btn{font-size:0.875rem;padding:10px;min-width:0}.room-save{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.room-save p{font-size:0.875rem;min-height:24px;color:var(--muted)}.room-save .btn-row{gap:8px;flex-wrap:wrap}.room-choice:focus-visible,.room-item:focus-visible{outline:3px solid #116c98;outline-offset:3px}
@media(max-width:1049px){.room-layout{grid-template-columns:1fr}.room-visual{max-width:760px;width:100%}.room-art svg{max-height:420px}}
@media(max-width:520px){.room-visual,.room-controls{padding:20px}.room-intro h1{font-size:1.875rem}.room-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.room-placement{grid-template-columns:repeat(2,minmax(0,1fr))}.room-art svg{min-height:200px}.room-item{flex-wrap:wrap}.room-item small{flex-basis:100%;margin-left:30px}}

/**/
/**/
/**/
.guide-hotels,.guide-staff-list{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0}
.guide-hotel{display:flex;align-items:center;gap:18px;text-align:left;width:100%;padding:24px;min-height:140px;color:var(--ink,#19352d);font:inherit}
.guide-hotel-symbol{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border-radius:20px;background:#eaf0e7;color:#3f6552}
.guide-hotel-symbol svg{width:28px;height:28px}.guide-hotel>span:nth-child(2){display:grid;gap:8px;flex:1;min-width:0}.guide-hotel strong{font-size:1.25rem;line-height:1.3}.guide-hotel>span>span:not(.badge){color:#52665d;font-size:0.9375rem}
.guide-categories,.guide-language-pills{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.guide-categories .chip,.guide-language-pills .chip{min-height:48px;display:flex;align-items:center;gap:8px;padding:10px 16px}
.guide-categories button[aria-pressed=true],.guide-language-pills button[aria-pressed=true]{background:#244a3c;color:#fff;border-color:#244a3c}
.guide-answers{display:grid;gap:12px}.guide-answer{background:#fff;border:1px solid #dce5dd;border-radius:18px;overflow:hidden}.guide-answer summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px;min-height:64px;font-weight:600}.guide-answer summary::-webkit-details-marker{display:none}.guide-answer summary>span{display:flex;align-items:center;gap:12px}.guide-answer summary>svg{flex-shrink:0;transform:rotate(90deg)}.guide-answer[open] summary>svg{transform:rotate(-90deg)}.guide-answer p{margin:0;padding:0 22px 24px 54px;white-space:normal;overflow-wrap:anywhere;line-height:1.8;color:#40574c;max-width:75ch}
.guide-footer{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin:24px 0;color:#52665d;font-size:0.875rem}
.guide-staff-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:88px;padding:20px;font:inherit;text-align:left}.guide-staff-row>span:first-child{display:flex;align-items:center;gap:12px;min-width:0}.guide-staff-row strong{overflow-wrap:anywhere}
.hotel-guide-editor{max-width:100%;margin:24px 0}.guide-coverage{display:flex;gap:12px 24px;flex-wrap:wrap;padding:18px 20px;background:#f0f4ef;border-radius:16px;border:1px solid #dce5dd}.guide-coverage span{display:grid;gap:4px;font-size:0.875rem}.guide-coverage strong{font-size:1.0625rem;color:#234737}.guide-language-fields{border:0;padding:0;margin:0;min-width:0}.guide-language-fields legend{font-size:1.25rem;font-weight:700;margin:0 0 16px}.guide-language-fields[hidden]{display:none!important}
.guide-entry-editor{background:#fff;padding:20px;border:1px solid #dce5dd;border-radius:18px;margin-bottom:16px}.guide-entry-editor h3{margin:0 0 12px}.guide-entry-editor .field:last-child{margin-bottom:0}.guide-entry-controls{background:#fff;padding:20px;border:1px solid #dce5dd;border-radius:18px;margin:20px 0}.guide-entry-control{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:12px;margin:12px 0}.guide-entry-control label{font-size:0.9375rem;font-weight:600}
.guide-command-bar{display:flex;flex-wrap:wrap;gap:12px;padding:20px 0}.guide-review-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.guide-review-columns>.card{padding:24px;min-width:0}.guide-review-entry{padding:20px 0;border-top:1px solid #dce5dd}.guide-review-entry h4{font-size:1.0625rem;margin:12px 0}.guide-review-entry p{line-height:1.8;overflow-wrap:anywhere}.guide-review-checks{padding:24px}.hotel-guide-editor textarea{resize:vertical;min-height:80px;line-height:1.7}
@media(max-width:700px){.guide-hotels,.guide-staff-list,.guide-review-columns{grid-template-columns:1fr}.guide-hotel{padding:20px;min-height:120px}.guide-hotel-symbol{flex-basis:52px;width:52px;height:52px;border-radius:16px}.guide-answer summary{padding:18px;font-size:1rem}.guide-answer p{padding:0 18px 20px;line-height:1.8}.guide-entry-control{grid-template-columns:1fr auto}.guide-entry-control label{grid-column:1/-1}.guide-review-columns>.card,.guide-review-checks{padding:20px}}
@media(prefers-reduced-motion:reduce){.guide-answer summary>svg{transition:none}}

.guide-hotel>svg,.guide-staff-row>svg{width:18px;height:18px;flex:0 0 18px}.guide-staff-row>span:first-child svg{width:24px;height:24px;flex:0 0 24px}.guide-answer summary svg{width:20px;height:20px;flex:0 0 20px}

/**/
/**/
/**/
:root{--page:#faf9f6;--canvas:#faf9f6;--ink:#263b31;--muted:#58665e;--brand:#385a43;--line:#e1e6dc;--line-strong:#b6c2b3;--r20-soft:#eef2e8;--shadow-sm:0 2px 12px #263b3106;--shadow:0 8px 30px #263b310a;--r40-serif:Georgia,'Times New Roman','Batang',serif}
body{background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.app-header{background:#faf9f6}.header-inner{min-height:76px}.brand-name{font-size:1rem;letter-spacing:.08em}.brand-mark{background:#385a43;border-radius:50%;width:40px;height:40px}.brand-sub{color:#637062;font-size:0.6875rem}.header-actions .icon-btn{background:#f0f2eb;border:1px solid #e3e8dc;border-radius:50%}
.shell{padding-top:26px}.btn{min-height:48px;border-radius:999px;font-size:0.9375rem;padding:12px 22px;font-weight:600}.btn-primary{background:var(--brand);border-color:var(--brand)}.btn-secondary{background:#fff;border-color:#b8c4b4;color:#334f3a}.btn-block{border-radius:16px}.icon-btn,.save-button{border-radius:50%}.input,.select,textarea.input{border-radius:12px;border-color:#c5cfc0;background:#fff;min-height:48px;font-size:1rem;color:var(--ink)}.field label{font-size:0.875rem;font-weight:600;color:#3f5143}.field .input:focus,.field .select:focus{outline:3px solid #547341;outline-offset:2px}
.card{border-color:var(--line);box-shadow:var(--shadow-sm);border-radius:20px}.badge{font-size:0.75rem;font-weight:600;padding:5px 10px;line-height:1.5}.badge-soft{background:#eef2e8;color:#426044}.page-heading{margin-bottom:24px;align-items:flex-start}.page-heading h1{font-size:clamp(1.75rem,3vw,2.375rem);letter-spacing:-.035em}.page-heading p{max-width:65ch;font-size:0.9375rem;line-height:1.7}.breadcrumbs{font-size:0.8125rem;flex-wrap:wrap;line-height:1.7}.section-head h2{font-size:1.5rem}.section-head .eyebrow{font-size:0.6875rem}.empty{border-radius:20px;border:1px dashed #c6d1bd;background:#f5f7f0;padding:36px 24px}.empty h2,.empty h3{font-size:1.375rem;line-height:1.4}.empty p{font-size:0.9375rem;max-width:54ch;margin-left:auto;margin-right:auto}.empty>.card-icon{margin-left:auto;margin-right:auto}
/**/
.editorial-hero{position:relative;display:grid;grid-template-columns:1.2fr 1fr;min-height:330px;background:#f0f2e8;border:0;border-radius:24px;overflow:hidden;box-shadow:none}
.editorial-copy{padding:34px 36px;position:relative;z-index:1}.editorial-copy .eyebrow{font-size:0.6875rem;letter-spacing:.12em;color:#53684c}.editorial-copy h1{font:500 clamp(34px,4vw,52px)/1.12 var(--r40-serif);letter-spacing:-.035em;max-width:13ch;margin:14px 0;color:#2e4534}.editorial-copy p{font-size:0.9375rem;line-height:1.7;margin-bottom:20px;max-width:38ch}.hero-actions{gap:10px}.editorial-copy .btn{border-radius:999px;min-height:48px;font-size:0.875rem;padding:12px 20px}
.editorial-art{position:relative;display:grid;place-items:center;padding:12px;min-height:330px;overflow:visible}.editorial-art img{position:static;width:min(100%,350px);height:100%;max-height:310px;min-height:0;object-fit:contain;object-position:center;transform:none}.art-caption{position:absolute;bottom:16px;left:50%;right:auto;transform:translateX(-50%);max-width:90%;white-space:normal;background:#faf9f6e8;border-radius:999px;padding:5px 12px;font-size:0.6875rem;color:#52644b;text-align:center}
.time-summary{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:none;margin:18px 0 24px;padding:16px 20px;gap:16px 24px}.time-summary>span{min-height:32px;font-size:0.875rem}.time-summary>span:not(:last-child){padding-right:22px;border-right:1px solid #e4e8df}.time-summary .time-edit{margin-left:auto;border:0;padding:0;color:#435e3a}
/**/
.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.hub-tile{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:150px auto;align-items:stretch;text-align:left;gap:8px;padding:18px;min-height:220px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:none;overflow:hidden}.hub-tile:nth-child(4n+2){background:#f4f3ee}.hub-tile:nth-child(4n+3){background:#edf2ed}.hub-tile:nth-child(4n){background:#f6f1eb}.hub-tile .hub-picture{display:grid;place-items:center;height:150px;width:100%;margin:0}.hub-picture img{display:block;width:150px;height:150px;object-fit:contain;object-position:center}.hub-picture .hub-icon{width:70px;height:70px;border-radius:24px;margin:auto}.hub-picture .hub-icon svg{width:32px;height:32px}.hub-tile strong{font-size:1.125rem;line-height:1.4;font-weight:600;padding-right:26px;align-self:center}.hub-tile>svg{display:block;position:absolute;right:18px;bottom:24px;width:20px;height:20px}.category-grid{gap:14px}.category-tile,.service-choices .category-tile{background:#fff;border-color:var(--line);border-radius:18px;box-shadow:none;padding:22px;min-height:96px;gap:14px;display:flex;align-items:center;font-size:1rem}.category-tile .card-icon,.hub-icon{background:#eef2e7;color:#4e6a3e;border-radius:16px;flex-shrink:0}.service-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.experience-card{border-radius:20px;box-shadow:none;border-color:var(--line);background:#fff}.experience-media{border-radius:0;height:220px}.experience-media img{height:220px}.experience-body{padding:22px}.experience-title{font-size:1.25rem;letter-spacing:-.025em;line-height:1.4}.experience-body .tiny{font-size:0.8125rem;line-height:1.6}.experience-body .small{font-size:0.875rem}.experience-body .btn{font-size:0.875rem}.experience-price{font-weight:600;font-size:1.125rem}.product-grid,.editorial-products{gap:20px}.editorial-products .experience-title{font-size:1.3125rem}.editorial-products .experience-body{padding:22px}.toolbar{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.search-box{background:#fff;border-radius:18px;box-shadow:none;border-color:#c5cfc0}.search-box .input{border-color:transparent}.search-mode .chip,.chip{min-height:44px;border-radius:999px;font-size:0.875rem;line-height:1.5}.chip.active{background:#385a43;color:#fff;border-color:#385a43}
.availability-insight{background:#f0f4ea;border-color:#d3dec8;border-radius:18px;padding:20px}.availability-insight h2{font-size:1.0625rem}.availability-insight p{font-size:0.875rem;line-height:1.7}.resume-card{background:#fff;border:1px solid #d1dec4;border-radius:18px}.detail-panel{background:#fff;border:1px solid var(--line);border-radius:20px}.detail-panel h1{font-size:1.875rem}.detail-media{border-radius:20px}.plan-card,.plan-summary,.pass-card,.profile-section,.login-box,.support-thread,.review-compose{border-color:var(--line);border-radius:20px;box-shadow:none}.pass-card{background:#fff;padding:28px}.pass-card h2{font-size:1.625rem}.pass-card .pass-status{font-size:0.875rem}.pass-card dl{font-size:0.9375rem;line-height:1.8}.pass-actions{gap:10px}.pass-actions .btn{border-radius:14px}.journey-steps{background:#eff3e9;border-radius:18px;padding:14px}.journey-step.is-current{color:#345732}.step-number{background:#385a43;color:#fff}.service-preview{border-radius:20px;border:1px solid var(--line);background:#fff}.service-journey{background:#f5f7f1;border-radius:16px;padding:18px}.service-preview h2{font-size:1.625rem}
/**/
.profile-identity{display:flex;align-items:center;gap:18px;padding:24px;background:#f0f3e9;border-radius:20px;margin-bottom:24px}.profile-avatar{display:grid;place-items:center;width:72px;height:72px;flex:0 0 72px;border-radius:50%;background:#dde6d3;color:#405638;font:600 26px/1 Inter,sans-serif}.profile-identity-copy{flex:1;min-width:0}.profile-identity h2{font-size:1.4375rem;margin:0 0 6px;overflow-wrap:anywhere}.profile-identity p{margin:0;font-size:0.875rem;color:#58665e}.profile-identity .btn{flex-shrink:0}.profile-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.profile-group{padding:22px;background:#fff;border:1px solid var(--line);border-radius:20px}.profile-group h2{font-size:1.125rem;margin:0 0 12px}.profile-link{display:flex;align-items:center;gap:12px;min-height:56px;width:100%;padding:10px 0;font-family:inherit;font-size:0.9375rem;font-weight:500;line-height:1.5;color:#344c38;text-align:left;background:none;border:0;border-bottom:1px solid #e6eadf}.profile-link:last-child{border:0}.profile-link>svg:first-child{width:21px;height:21px;color:#627b52;flex-shrink:0}.profile-link span{flex:1}.profile-link>svg:last-child{width:17px;height:17px;color:#738367}.profile-list{gap:20px}.profile-section{padding:24px}.profile-section h2{font-size:1.25rem}.profile-section h3{font-size:1rem}.profile-section p{font-size:0.875rem;line-height:1.75}.profile-section .check-label{min-height:48px}.journal-teaser,.ideas-home-link{background:#f0f4eb;border-color:#d6e0cc;border-radius:20px}.journal-teaser h2{font-size:1.375rem}.tl-dialog{border-radius:24px;padding:28px;background:#fff}.dialog-head h2{font-size:1.5rem}.tl-dialog .btn{min-height:48px}
.bottom-nav{background:#fffefb;border-color:#dde4d4;border-radius:20px;box-shadow:0 5px 24px #314c3010}.nav-btn.active{background:#edf3e4;color:#385c34}.nav-btn{color:#677260;font-size:0.75rem}.nav-btn svg{width:24px;height:24px}.guide-hotel-symbol{background:#edf3e6}.guide-answer summary:focus-visible,.profile-link:focus-visible,.guide-hotel:focus-visible{outline:3px solid #3e6a91;outline-offset:3px}
@media(min-width:1050px){.app-frame .shell,.app-frame .header-inner{padding-left:24px}.editorial-copy h1{max-width:14ch}.profile-list{grid-template-columns:1fr 1fr}.profile-section:last-child{grid-column:1/-1}}
@media(max-width:1049px){.editorial-hero{min-height:320px;grid-template-columns:1.15fr 1fr}.editorial-copy{padding:28px}.editorial-copy h1{font-size:2.5rem}.editorial-art{min-height:320px}.editorial-art img{max-height:290px;min-height:0}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.header-inner{padding:12px 18px;min-height:68px}.brand-mark{width:34px;height:34px}.brand-name{font-size:0.875rem}.brand-sub{font-size:0.625rem}.header-actions{gap:3px}.header-actions .icon-btn{background:transparent;border:0}.shell{padding:20px 18px 112px}.editorial-hero{display:block;min-height:0;padding:0;overflow:hidden}.editorial-copy{padding:26px 24px 24px;min-height:260px}.editorial-copy h1{font-size:2.25rem;max-width:9ch;margin:10px 0 14px}.editorial-copy p{max-width:24ch;font-size:0.875rem;line-height:1.7;padding-right:22px;margin:0 0 20px}.editorial-copy .eyebrow{max-width:75%;font-size:0.625rem}.hero-actions{max-width:100%;gap:8px}.hero-actions .btn{font-size:0.8125rem;min-height:44px;padding:10px 16px}.editorial-art{position:absolute;right:-2px;top:44px;width:45%;min-height:0;height:174px;padding:0;pointer-events:none;z-index:0}.editorial-art img{position:static;width:100%;height:174px;min-height:0;max-height:none;object-fit:contain}.art-caption{display:none}.time-summary{padding:12px 16px;gap:8px 10px;border-radius:16px;margin:14px 0 22px;display:flex;flex-wrap:wrap}.time-summary>span{font-size:0.75rem;min-height:28px;gap:6px}.time-summary>span:not(:last-child){padding-right:10px}.time-summary svg{width:17px;height:17px;flex-basis:17px}.time-summary .time-edit{margin-left:auto}.hub-grid{gap:12px}.hub-tile{grid-template-rows:105px auto;min-height:170px;padding:14px;gap:8px}.hub-tile .hub-picture{height:105px}.hub-picture img{width:105px;height:105px}.hub-picture .hub-icon{width:56px;height:56px}.hub-tile strong{font-size:0.9375rem;padding-right:18px}.hub-tile>svg{right:12px;bottom:19px;width:16px;height:16px}.category-grid{gap:12px}.category-tile,.service-choices .category-tile{display:flex;flex-direction:row;align-items:center;padding:16px;min-height:88px;gap:12px;font-size:0.875rem}.category-tile .card-icon{width:38px;height:38px;flex-basis:38px;border-radius:12px}.category-tile .card-icon svg{width:20px;height:20px}.category-tile>svg{display:none}.section{margin-top:30px}.section-head h2{font-size:1.375rem}.experience-media,.experience-media img,.editorial-products .experience-media,.editorial-products .experience-media img{height:210px;min-height:210px}.experience-body,.editorial-products .experience-body{padding:20px}.toolbar{padding:18px}.pass-card{padding:24px 20px}.profile-identity{gap:12px;flex-wrap:wrap;padding:20px}.profile-avatar{width:58px;height:58px;flex-basis:58px;font-size:1.375rem}.profile-identity h2{font-size:1.25rem}.profile-identity .btn{margin-left:70px}.profile-groups{grid-template-columns:1fr;gap:16px}.profile-group{padding:20px}.profile-list{grid-template-columns:1fr}.profile-section{padding:20px}.bottom-nav{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 20px);padding:5px;border-radius:18px}.nav-btn{min-height:59px;font-size:0.6875rem;gap:4px}.page-heading h1{font-size:1.75rem}.tl-dialog{padding:24px}.guide-categories{gap:8px}.guide-categories .chip{font-size:0.8125rem;padding:10px 13px}}
@media(max-width:360px){.header-inner{padding-left:14px;padding-right:14px}.shell{padding-left:14px;padding-right:14px}.brand-sub{display:none}.brand-name{font-size:0.75rem;letter-spacing:.04em}.header-actions .icon-btn{width:44px;min-width:44px}.editorial-copy{padding:24px 20px;min-height:260px}.editorial-copy h1{font-size:2.0625rem}.editorial-copy p{max-width:24ch}.editorial-art{top:48px;width:43%;right:-3px;height:155px}.editorial-art img{height:155px}.hero-actions .btn{flex:0 1 auto;font-size:0.75rem;padding:10px 14px}.hub-tile strong{font-size:0.875rem}.category-tile,.service-choices .category-tile{gap:8px;padding:14px;font-size:0.8125rem}.time-summary>span{font-size:0.6875rem}.profile-identity .btn{margin-left:0;flex:1}.pass-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/**/
.profile-avatar svg{width:30px;height:30px;display:block}.guide-hotel>svg,.guide-staff-row>svg{width:18px;height:18px;flex:0 0 18px}.guide-staff-row>span:first-child svg{width:24px;height:24px;flex:0 0 24px}.guide-hotel-symbol svg{width:28px;height:28px}.profile-link svg{flex-shrink:0}
@media(max-width:700px){.profile-identity-copy{flex:1 1 calc(100% - 74px);min-width:0}.profile-identity .btn{margin-left:70px}.editorial-copy p{max-width:20ch;padding-right:0}}

/**/
html[lang=ko] .editorial-copy h1{word-break:keep-all;overflow-wrap:normal}
@media(max-width:700px){html[lang=ko] .editorial-copy h1{font-size:1.875rem;max-width:none;width:70%;line-height:1.2}}
@media(max-width:360px){html[lang=ko] .editorial-copy h1{font-size:1.6875rem;width:70%}}
/**/
.bottom-nav{backdrop-filter:none;-webkit-backdrop-filter:none}

/**/
.experience-media img,.editorial-products .experience-media img,.detail-media img{object-fit:contain;object-position:center;background:#f3f4ec}

/**/
html[lang=ko] .editorial-copy h1{font-family:Inter,'Apple SD Gothic Neo','Malgun Gothic',system-ui,sans-serif;font-weight:700;letter-spacing:-.05em}
@media(max-width:700px){.editorial-copy p{max-width:52%}.editorial-art{top:62px;right:2%;width:43%;height:156px}.editorial-art img{height:156px}}
@media(max-width:360px){.editorial-art{top:62px;height:144px}.editorial-art img{height:144px}}

/**/
/**/
/**/
.room-controls,.room-visual{min-width:0;max-width:100%}
.room-layout{gap:24px}.room-visual{border-radius:22px;background:#f2f4ec;border:1px solid #dce4d2;padding:20px}.room-art{border-radius:18px;overflow:hidden}.room-controls{background:#fff;border:1px solid #dce4d2;border-radius:22px;padding:24px}.room-controls h2{font-size:1.3125rem;margin:0}.room-controls h3{font-size:1rem}.room-history{display:flex;gap:6px;flex-wrap:wrap}.room-history .btn{min-height:44px;font-size:0.75rem;padding:9px 12px;border-radius:12px}.room-history .btn svg{width:16px;height:16px;flex-basis:16px}.room-presets{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.room-presets .chip{min-height:44px;font-size:0.875rem;padding:10px 16px}.room-picker{gap:10px}.room-choice{border-color:#d4dec9;border-radius:14px;background:#f8faf4;min-height:78px}.room-choice svg{width:25px;height:25px}.room-choice span{font-size:0.8125rem}.room-item{border-radius:12px;min-height:54px;font-size:0.875rem;border-color:#dce4d2;background:#fafbf7}.room-item.selected{border-color:#526f3f;background:#edf3e3;box-shadow:0 0 0 1px #526f3f}.room-item svg{width:21px;height:21px}.room-item small{font-size:0.75rem}.room-placement{gap:8px}.room-placement .btn{border-radius:12px;font-size:0.8125rem;padding:10px 12px;min-height:44px}.room-options h3{margin-bottom:10px}.room-options .chip{min-height:44px;font-size:0.8125rem;padding:10px 14px}.room-save{border-top:1px solid #d6dfca;padding-top:18px;margin-top:18px}.room-save [data-room-status]{font-size:0.875rem;line-height:1.7}.room-map-section{margin-top:24px}.room-map-section h3{margin-bottom:8px}.room-map-section p{font-size:0.8125rem;line-height:1.7}.room-map-scroll{overflow-x:auto;max-width:100%;padding:8px 4px 12px;outline-offset:2px;overscroll-behavior-x:contain}.room-map{display:grid;grid-template-columns:repeat(8,44px);gap:4px;width:max-content;padding:8px;background:#f2f5ec;border-radius:16px;border:1px solid #dce4d2}.room-cell{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid #d5dfcb;border-radius:10px;background:#fff;color:#607a4a}.room-cell svg{width:20px;height:20px}.room-cell.has-item{background:#e6efdb}.room-cell.is-selected{background:#456538;color:#fff;border-color:#456538}.room-cell-dot{display:block;width:4px;height:4px;background:#a7b79a;border-radius:50%}.room-cell:focus-visible{outline:3px solid #2e7395;outline-offset:2px}.room-visual [data-space3d-open]{margin-top:16px}.room-visual .space3d-controls{gap:8px}.room-visual .space3d-controls .btn{font-size:0.8125rem;padding:10px 12px}.room-controls>.row{flex-wrap:wrap;gap:12px}
@media(min-width:1200px){.room-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.room-visual{position:sticky;top:110px;align-self:start}.room-map-scroll{width:100%}}
@media(max-width:800px){.room-layout{grid-template-columns:1fr;gap:18px}.room-visual,.room-controls{padding:18px}.room-history{gap:8px}.room-controls h2{font-size:1.25rem}.room-save .btn-row{gap:10px}.room-save .btn{font-size:0.8125rem;padding:10px 15px}.room-item-list{grid-template-columns:1fr}.room-options{gap:18px}.room-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.room-choice{min-height:72px;padding:10px}.room-choice span{font-size:0.75rem}}
@media(max-width:360px){.room-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.room-visual,.room-controls{padding:16px}.room-history .btn{font-size:0.6875rem;padding:9px 10px}.room-save .btn-row>.btn{flex:1}.room-options .chip{padding:10px 12px;font-size:0.75rem}}

/**/
.space3d-controls .btn[aria-pressed=true]{background:#284f3d;border-color:#284f3d;color:#fff}

/**/
.room-visual .space3d-controls:not([hidden]) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    margin-top: 16px;
}

.room-camera-controls,
.room-character-options {
    min-width: 0;
}

.room-camera-controls > strong,
.room-character-options > strong {
    display: block;
    margin-bottom: 8px;
}

.room-camera-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.room-visual .space3d-controls .btn {
    min-height: 48px;
    min-width: 48px;
    white-space: normal;
}

.room-character-options .space3d-character-controls {
    margin-top: 0;
}

.guest-room button,
.guest-room summary {
    scroll-margin-bottom: calc(100px + env(safe-area-inset-bottom, 0px));
}

@media (max-width: 800px) {
    .room-camera-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .room-camera-actions .btn {
        width: 100%;
    }

    .personal-studio {
        padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px));
    }
}

/**/
/**/
/**/
.hotel-request-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:20px 0}
.hotel-request-list,.hotel-request-visits{display:grid;gap:12px}
.hotel-request-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.hotel-request-card,.hotel-request-visit{display:flex;align-items:center;gap:14px;text-align:left;text-decoration:none;color:inherit;padding:20px;min-width:0}
.hotel-request-card>span:nth-child(2),.hotel-request-visit>span:nth-child(2){display:grid;gap:7px;min-width:0;flex:1}
.hotel-request-card strong,.hotel-request-visit strong{font-size:1.125rem;line-height:1.45;overflow-wrap:anywhere}
.hotel-request-card small,.hotel-request-visit small{color:var(--muted);font-size:0.875rem}
.hotel-request-visit-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#e9eee4;color:#31543d;flex-shrink:0}
.hotel-request-card>svg,.hotel-request-visit>svg{width:20px;height:20px;flex-shrink:0}
.hotel-request-visit.selected{border-color:#31543d;box-shadow:0 0 0 1px #31543d}
.hotel-request-visit:disabled{opacity:.7;cursor:default}
.hotel-request-compose-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:start}
.hotel-request-compose-layout h2{font-size:1.25rem;line-height:1.4;margin:0 0 16px}
.hotel-request-compose{padding:24px;max-width:760px;margin:0 auto;width:100%;box-sizing:border-box}
.hotel-request-topics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.hotel-request-topics .chip{min-height:44px;gap:8px}
.hotel-request-topics .chip[aria-pressed=true]{background:#31543d;color:white;border-color:#31543d}
.hotel-request-topics svg{width:20px;height:20px}
.hotel-request-editor{resize:vertical;min-height:150px;font:inherit;line-height:1.7}
.hotel-request-context{display:flex;flex-wrap:wrap;gap:12px 24px;margin:16px auto;max-width:760px;padding:18px 22px}
.hotel-request-context>span{display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}
.hotel-request-context svg{width:20px;height:20px;flex-shrink:0}
.hotel-request-thread{list-style:none;margin:24px auto;padding:0;max-width:760px;display:grid;gap:16px}
.hotel-request-bubble{max-width:90%;background:#fff;border:1px solid #dedfd6;border-radius:20px;padding:20px;overflow-wrap:anywhere}
.hotel-request-bubble.is-guest{margin-left:auto;background:#edf2e7}
.hotel-request-bubble>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.hotel-request-bubble>div>span{font-size:0.75rem;color:var(--muted)}
.hotel-request-bubble p{margin:12px 0 0;line-height:1.75;white-space:normal}
.hotel-request-staff-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.hotel-request-channel{margin:20px 0;padding:22px}
.hotel-request-channel fieldset{border:0;padding:0;margin:18px 0;display:flex;flex-wrap:wrap;gap:16px}
.hotel-request-channel label{min-height:44px}
@media(max-width:700px){.hotel-request-list,.hotel-request-compose-layout{grid-template-columns:1fr}.hotel-request-card,.hotel-request-visit{padding:16px}.hotel-request-compose{padding:20px}.hotel-request-bubble{max-width:95%;padding:16px}.hotel-request-toolbar>.btn-row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hotel-request-card,.hotel-request-visit{transition:none}}

/**/
/**/
/**/
.hotel-space-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:24px;align-items:start}
.hotel-space-visual{padding:18px;background:#edf2e7;border:1px solid #d3dfc8;border-radius:24px;min-width:0}
.hotel-space-board{position:relative;aspect-ratio:3/2;background:repeating-linear-gradient(0deg,transparent 0 calc(12.5% - 1px),#d1dcc9 calc(12.5% - 1px) 12.5%),repeating-linear-gradient(90deg,#f8faf5 0 calc(8.333% - 1px),#d1dcc9 calc(8.333% - 1px) 8.333%);border:1px solid #b5c5aa;border-radius:12px;overflow:visible}
.hotel-space-block{position:absolute;display:grid;place-items:center;box-sizing:border-box;border:2px solid #f8faf5;border-radius:10px;background:#d5dfca}
.hotel-space-block.kind-POOL{background:#b9d9dc}.hotel-space-block.kind-SPA{background:#dfd0bd}.hotel-space-block.kind-ROOM{background:#d4dccd}.hotel-space-block.kind-MEETING{background:#c9d7e0}.hotel-space-block.kind-ENTRY{background:#e7dcbd}
.hotel-space-pin{width:44px;height:44px;border:1px solid #8b9d7c;background:#fff;color:#31543d;border-radius:50%;font:600 17px/1 system-ui;cursor:pointer;flex:none}
.hotel-space-pin[aria-pressed=true]{background:#31543d;color:white;outline:2px solid #fff;outline-offset:1px}
.hotel-space-visual>[data-space3d-open]{margin-top:16px}.hotel-space-visual .space3d-canvas{width:100%;height:auto;aspect-ratio:3/2;border-radius:12px}
.hotel-space-selection{padding:24px;min-width:0}.hotel-space-selection h3{font-size:1.4375rem;line-height:1.4;overflow-wrap:anywhere}.hotel-space-selection p{line-height:1.8;overflow-wrap:anywhere}.hotel-space-selection .space-choice{width:100%;min-height:48px}
.hotel-space-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.hotel-space-area{display:flex;align-items:center;gap:10px;padding:16px;text-align:left;min-height:56px;font:inherit;border:1px solid #c4d0bb;background:#fff;color:#31543d;border-radius:16px;cursor:pointer;min-width:0}
.hotel-space-area>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf2e7;flex:none}.hotel-space-area svg{width:20px;height:20px;flex:none}.hotel-space-area strong{overflow-wrap:anywhere}.hotel-space-area[aria-pressed=true]{background:#edf2e7;border-color:#31543d}
.hotel-space-unavailable{padding:24px}.hotel-space-pin:focus-visible,.hotel-space-area:focus-visible{outline:3px solid #347093;outline-offset:3px}
.hotel-space-author{padding:24px;min-width:0;overflow-wrap:anywhere}.hotel-space-author fieldset{border:0;padding:0;margin:20px 0}.hotel-space-editor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hotel-space-author .input,.hotel-space-author .select{width:100%;min-width:0}.hotel-space-area-editor{margin:24px 0;padding:22px;border:1px solid #dce4d5;border-radius:18px}.hotel-space-copy-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.hotel-space-product-links{display:grid;gap:8px;margin:16px 0}.hotel-space-status{margin:20px 0}.hotel-space-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
@media(max-width:800px){.hotel-space-layout,.hotel-space-copy-columns{grid-template-columns:1fr}.hotel-space-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-space-visual{padding:8px}.hotel-space-selection,.hotel-space-author{padding:20px}.hotel-space-area-editor{padding:16px}.hotel-space-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-space-area{padding:12px;gap:8px}.hotel-space-pin{width:44px;height:44px}}
@media(max-width:360px){.hotel-space-areas{grid-template-columns:1fr}.hotel-space-visual{padding:2px}.hotel-space-pin{width:44px;height:44px}.hotel-space-selection{padding:18px}}
/**/
.hotel-space-area-editor>summary{min-height:48px;line-height:1.6;font-weight:700;cursor:pointer;overflow-wrap:anywhere}.hotel-space-area-editor:not([open]){padding-block:12px}.hotel-space-area-editor>summary:focus-visible{outline:3px solid #347093;outline-offset:4px;border-radius:6px}
/**/
.hotel-space-composer{padding:18px;border:1px solid #c7d5bc;border-radius:18px;background:#f5f8f0;margin:24px 0;min-width:0}.hotel-space-composer h3{margin:0 0 10px;font-size:1.25rem}.hotel-space-composer .hotel-space-board{max-width:640px;margin:18px auto}.hotel-space-composer .hotel-space-block b{display:grid;place-items:center;border-radius:50%;width:26px;height:26px;background:white;color:#31543d;font-size:0.875rem}.hotel-space-composer .hotel-space-block.selected{outline:2px solid #31543d;outline-offset:-3px}.hotel-space-compose-choices,.hotel-space-adjustments{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.hotel-space-compose-choices .btn{min-width:48px;overflow-wrap:anywhere}.hotel-space-compose-choices [aria-pressed=true]{background:#31543d;color:#fff}.hotel-space-adjustments .btn{min-height:48px;font-size:0.875rem}.hotel-space-adjustments svg{width:18px;height:18px;flex:none}@media(max-width:360px){.hotel-space-composer{padding:12px}.hotel-space-adjustments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}

/**/
.hotel-access-panel{padding:24px;margin-block:24px;min-width:0;overflow-wrap:anywhere}
.hotel-access-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,16em),1fr))}
.hotel-access-list>article{padding:18px;border:1px solid #cad6c2;border-radius:16px;min-width:0}
.hotel-access-list .btn,#hotelGuestDecision .btn{min-height:48px;white-space:normal}
/**/
.hotel-access-panel>.hotel-space-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.hotel-access-panel>.hotel-space-toolbar h3{margin:0;flex:1 1 8em}
.hotel-access-panel [data-hotel-guest-refresh]{min-height:48px;white-space:normal}
.hotel-access-panel [data-hotel-access-status]{min-height:1.5em}
.hotel-access-panel [aria-disabled=true]{opacity:.65;cursor:progress}
.hotel-access-count{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}
#hotelGuestDecision .input{width:100%;min-width:0}

/**/
.hotel-gathering-preview{margin:18px 0;padding:16px;background:#fff;border:1px solid #d8e0d2;border-radius:14px;min-width:0}
.hotel-gathering-preview h4{margin:0 0 12px;font-size:1rem;overflow-wrap:anywhere}
.hotel-gathering-floor{position:relative;max-width:360px;aspect-ratio:8/6;margin:12px auto;border:1px solid #dce3d6;border-radius:12px;background:#eef2e8}
.hotel-gathering-item{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:24px;height:24px;border:1px solid #b7c6ac;border-radius:6px;background:#e4d9c2;color:#3c5c45}
.hotel-gathering-item svg{width:15px;height:15px}.hotel-gathering-item.gathering-plant{background:#cbdcc2}.hotel-gathering-item.gathering-rug{opacity:.55}

/**/
/**/
/**/
.detail-conditions{padding:18px;background:#f0f4ea;border:1px solid #d5dfcd;border-radius:16px;margin:24px 0;overflow-wrap:anywhere}.detail-conditions h3{display:flex;gap:8px;align-items:center;font-size:1.0625rem}.detail-conditions h3 svg{width:20px;height:20px;flex:none}.detail-conditions p{line-height:1.75;margin:10px 0}
.booking-conditions{display:grid;gap:16px;min-width:0}.booking-condition{padding:16px;border:1px solid var(--line,#d9dfd5);border-radius:16px;overflow-wrap:anywhere;min-width:0}.booking-condition h3{margin:0 0 8px;font-size:1.0625rem;line-height:1.5}.booking-condition p{line-height:1.75;margin:8px 0}.booking-condition-deadline{border-top:1px solid var(--line,#d9dfd5);padding-top:12px;margin-top:12px}.booking-condition-deadline strong,.booking-condition-deadline time{display:block;line-height:1.7}.booking-condition-deadline time{margin-top:4px}
/**/
.room-save .btn-row>.btn{flex:1 1 108px;white-space:nowrap;font-size:0.875rem}.room-save [data-room-reset]{min-height:44px;white-space:nowrap}

/**/
/**/
/**/
:root{--r42-ink:#18362c;--r42-muted:#596b60;--r42-line:#dbe2d8;--r42-paper:#fffefa;--r42-wash:#f0f2e9;--r42-radius:18px}
:root{--ink:#18362c;--ink-2:#284c3a;--muted:#596b60;--line:#dbe2d8;--line-strong:#b7c6b7;--canvas:#f8f8f3;--paper:#fffefa;--wash:#f0f2e9;--brand:#284f3d;--brand-2:#326e56}
body{font-family:"Segoe UI","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;font-size:1rem;line-height:1.55;color:var(--r42-ink);background:#f8f8f3}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
h1,h2,h3{font-weight:650;letter-spacing:-.025em;line-height:1.22;text-wrap:balance}p{color:var(--r42-muted)}
/**/
html[lang=ko] h1,html[lang=ko] h2,html[lang=ko] h3{word-break:keep-all;overflow-wrap:anywhere}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #326e56;outline-offset:4px}
.app-header{background:#fffefa;border-bottom:1px solid var(--r42-line);box-shadow:none;backdrop-filter:none}
.header-inner{min-height:76px;padding-block:12px}.brand-name{font-size:0.9375rem;font-weight:700;letter-spacing:.08em}.brand-sub{font-size:0.6875rem;font-weight:400;letter-spacing:.015em;margin-top:3px}
.header-actions{gap:8px}.header-actions .icon-btn{width:48px;height:48px;min-width:48px;min-height:48px;background:transparent;border-radius:14px}.header-actions .icon-btn:hover{background:var(--r42-wash)}
.shell{padding-top:26px;padding-bottom:130px}.page-heading{margin-bottom:26px}.page-heading h1{font-size:clamp(1.75rem,3vw,2.375rem);line-height:1.2;margin-bottom:12px}.page-heading p{max-width:55ch;font-size:1rem;line-height:1.6}
.btn{min-height:48px;border-radius:12px;padding:12px 18px;font-size:0.9375rem;font-weight:600;line-height:1.3;gap:9px;box-shadow:none;word-break:normal;overflow-wrap:anywhere}
.btn svg{width:22px;height:22px;flex:0 0 22px}.btn-secondary{background:var(--r42-paper);border:1px solid #bdcbbd}.btn-primary{background:#284f3d;color:#fff;border-color:#284f3d}.btn-danger{background:#a9322d;border-color:#a9322d;color:#fff}
.icon-btn,.text-btn,.chip{min-height:44px}.text-btn{font-size:0.875rem;padding:10px 8px}.chip{font-size:0.875rem;font-weight:550;padding:10px 14px}.input{min-height:50px;font-size:1rem;border-radius:12px;background:var(--r42-paper);border-color:#b7c6b7}
.card,.toolbar,.data-form,.profile-group{border-color:var(--r42-line);border-radius:var(--r42-radius);box-shadow:none}.field label{font-size:0.9375rem;font-weight:600}.field{gap:8px}.form-error{font-size:0.9375rem;line-height:1.55}.small{font-size:0.875rem}.tiny{font-size:0.8125rem}
.editorial-hero{min-height:292px;display:grid;grid-template-columns:1.2fr .8fr;padding:30px;border:1px solid #d7dfce;border-radius:22px;background:var(--r42-wash);position:relative;overflow:hidden}
.editorial-copy{padding:0;min-height:0;position:relative;z-index:1}.editorial-copy .eyebrow{font-size:0.6875rem;letter-spacing:.14em;color:#516a4d}.editorial-copy h1{font-size:clamp(2.125rem,4vw,3rem);line-height:1.12;max-width:12ch;margin:16px 0 14px}.editorial-copy p{font-size:1rem;line-height:1.55;max-width:32ch;padding:0;margin-bottom:24px}
.hero-actions{max-width:100%;gap:10px}.hero-actions .btn{min-height:48px;font-size:0.9375rem;padding:12px 16px;border-radius:12px;flex:0 1 auto}.editorial-art{position:relative;top:auto;right:auto;width:100%;height:100%;min-height:0;padding:0;display:grid;place-items:center;pointer-events:none}.editorial-art img{position:static;display:block;width:100%;height:240px;max-height:240px;min-height:0;object-fit:contain}.art-caption{display:none}
.time-summary{margin:14px 0 24px;padding:12px 16px;border:1px solid var(--r42-line);border-radius:14px;background:var(--r42-paper);gap:10px;min-height:52px}.time-summary>span{font-size:0.875rem;gap:7px;min-height:26px}.time-summary svg{width:20px;height:20px;flex-basis:20px}.time-summary .time-edit{margin-left:auto}
.section{margin-top:28px}.section-head{align-items:center;margin-bottom:16px;gap:12px}.section-head h2{font-size:1.5rem}.section-head .eyebrow{font-size:0.6875rem}
.hub-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.hub-tile{display:grid;grid-template-columns:44px 1fr 20px;grid-template-rows:auto;align-items:center;min-height:88px;padding:18px;gap:12px;background:var(--r42-paper);border:1px solid var(--r42-line);border-radius:16px;text-align:left;box-shadow:none}.hub-tile .hub-picture{height:44px;width:44px;display:grid;place-items:center;grid-column:1;grid-row:1}.hub-tile .hub-picture img{width:44px;height:44px;object-fit:contain}.hub-tile .hub-icon{width:44px;height:44px;border-radius:14px;background:#edf2e6}.hub-tile .hub-icon svg{width:24px;height:24px}.hub-tile strong{font-size:1rem;padding:0;line-height:1.3;word-break:keep-all}.hub-tile>svg{position:static;width:20px;height:20px;grid-column:3;grid-row:1;color:#657c63}
.category-grid{gap:12px}.category-tile,.service-choices .category-tile{min-height:82px;padding:16px;gap:12px;display:flex;align-items:center;flex-direction:row;border-radius:16px;font-size:0.9375rem;line-height:1.3;background:var(--r42-paper)}.category-tile .card-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px}.category-tile .card-icon svg{width:24px;height:24px}
.availability-insight,.ideas-home-link,.journal-teaser{border-radius:16px;padding:18px;background:#edf2e6;border:1px solid #d9e4ce;gap:14px;box-shadow:none}.availability-insight h2{font-size:1.0625rem}.availability-insight p{font-size:0.875rem;line-height:1.55}.availability-insight .insight-detail{font-size:1rem;font-weight:600}.availability-insight .btn{min-height:48px}
/**/
.product-grid .experience-card{display:grid;grid-template-columns:108px minmax(0,1fr);align-items:stretch;gap:0;overflow:hidden;border:1px solid var(--r42-line);border-radius:16px;box-shadow:none;background:var(--r42-paper)}
.product-grid .experience-media,.product-grid .experience-media img,.editorial-products .experience-media,.editorial-products .experience-media img{width:100%;height:100%;min-height:180px;max-height:none;object-fit:contain;background:#eff1e9;border-radius:0;border:0;position:relative}.product-grid .experience-media{padding:8px;align-self:stretch}.product-grid .experience-body,.editorial-products .experience-body{padding:16px;min-width:0;display:flex;flex-direction:column;gap:8px}.product-grid .meta-row{margin:0;min-height:32px;gap:8px}.product-grid .meta-row .icon-btn{width:44px;height:44px;min-width:44px;background:transparent;border:0;position:static}.product-grid .experience-title{font-size:1.125rem;line-height:1.3;letter-spacing:-.015em;font-weight:650}.product-grid .product-open{padding:0;min-height:52px;text-align:left;display:flex;flex-direction:column;gap:6px}.product-grid .experience-footer{margin:0;padding:0;border:0;gap:10px;min-height:42px}.product-grid .experience-footer>.icon-btn{display:none}.product-grid .price{font-size:1.25rem;line-height:1.25}.product-grid .experience-body>.btn{margin-top:auto;min-height:44px;font-size:0.875rem}.product-grid{gap:16px}
@media(min-width:900px){.editorial-products{grid-template-columns:1fr}.editorial-products .experience-card{grid-template-columns:160px minmax(0,1fr)}.editorial-products .experience-body{display:grid;grid-template-columns:1fr 160px;gap:10px 24px;align-items:center}.editorial-products .meta-row{grid-column:1}.editorial-products .product-open{grid-column:1}.editorial-products .experience-footer{grid-column:2;grid-row:1 / span 2}.editorial-products .experience-body>.btn{grid-column:2;grid-row:3;align-self:end}.editorial-products .experience-media,.editorial-products .experience-media img{min-height:164px}.editorial-products .experience-title{font-size:1.3125rem}}
.profile-identity{border:1px solid var(--r42-line);background:var(--r42-paper);border-radius:18px;padding:22px}.profile-identity h2{font-size:1.5rem}.profile-identity p{font-size:0.9375rem}.profile-identity .btn{margin-left:auto}.profile-avatar{width:60px;height:60px;flex:0 0 60px;border-radius:18px;background:#eaf0e1;color:#284f3d;font-size:1.375rem}.profile-groups{gap:18px;margin-top:22px}.profile-group{padding:20px;background:var(--r42-paper)}.profile-group h2{font-size:1.0625rem;margin-bottom:12px;color:#496143}.profile-link{min-height:56px;font-size:1rem;border-top:1px solid #edf0e8}.profile-link svg{width:22px;height:22px;flex:0 0 22px}.profile-link:first-of-type{border-top:0}
.data-hub-grid{gap:12px}.data-tile{min-height:94px;padding:18px;border-radius:16px;box-shadow:none;font-size:1rem}.data-tile .card-icon{width:42px;height:42px;border-radius:13px}.data-tile .card-icon svg{width:24px;height:24px}.data-retained{border-radius:16px;padding:18px;margin-top:20px}.data-retained h2{font-size:1.0625rem}.data-retained p{font-size:0.9375rem}.data-counts div{min-height:54px}.data-help{padding:22px}.data-help h2{font-size:1.1875rem}.data-help p{font-size:0.9375rem}.data-help .inline-actions{gap:10px}
.pass-card{padding:24px;border:1px solid var(--r42-line);border-radius:18px;box-shadow:none;background:var(--r42-paper)}.pass-card h2{font-size:1.375rem}.pass-actions{gap:10px}.pass-facility{border-radius:14px;padding:18px}.pass-facility h3{font-size:1.125rem}.status-chip{font-size:0.8125rem;font-weight:600;line-height:1.35;padding:6px 10px}
.closure-card{max-width:700px;padding:26px;margin:0 auto;background:var(--r42-paper);border:1px solid var(--r42-line);border-radius:20px}.closure-card h2{font-size:1.375rem;margin-bottom:16px}.closure-card p{font-size:1rem;line-height:1.6}.closure-summary{margin:20px 0;padding:18px;background:var(--r42-wash);border-radius:14px}.closure-summary dl{margin:0}.closure-summary dl>div{display:flex;gap:16px;justify-content:space-between;padding:8px 0;border-bottom:1px solid #d9e1d1}.closure-summary dl>div:last-child{border:0}.closure-summary dt{display:flex;align-items:center;gap:8px;font-size:0.9375rem}.closure-summary dt svg{width:20px;height:20px}.closure-summary dd{font-size:1rem;font-weight:650;margin:0}.closure-boundary{border-left:3px solid #92aa82;padding:0 0 0 16px;margin:20px 0}.closure-boundary p{font-size:0.9375rem;margin:8px 0}.closure-confirm{display:flex;align-items:flex-start;gap:12px;margin:22px 0;font-size:0.9375rem}.closure-confirm input{width:24px;height:24px;margin:0;flex:0 0 24px;accent-color:#284f3d}.closure-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.closure-actions .btn{flex:1 1 180px}.closure-symbol{width:60px;height:60px;border-radius:18px;background:#eaf0e1;display:grid;place-items:center;margin-bottom:22px}.closure-symbol svg{width:32px;height:32px}.closure-reference{font-size:0.8125rem;overflow-wrap:anywhere;padding:14px;border:1px solid var(--r42-line);border-radius:12px;background:#f5f6ee}
/**/
@media (min-width:1000px) {
  .app-frame .header-inner { max-width:1180px; padding-left:24px; }
  .app-frame .shell { max-width:1180px; padding-left:204px; padding-right:24px; }
  body .app-frame .bottom-nav {
    position:fixed; top:124px; bottom:auto;
    left:max(24px,calc((100vw - 1180px)/2 + 24px)); transform:none;
    width:154px; height:auto; display:flex; flex-direction:column;
    grid-template-columns:1fr; gap:8px; margin:0; padding:0;
    background:transparent; border:0; box-shadow:none; border-radius:0;
  }
  body .app-frame .bottom-nav .nav-btn {
    min-height:56px; display:flex; flex-direction:row;
    align-items:center; justify-content:flex-start; gap:12px;
    padding:14px 16px; border-radius:14px; font-size:0.9375rem;
  }
  body .app-frame .bottom-nav .nav-btn svg { width:23px; height:23px; }
  body .app-frame .bottom-nav .nav-btn[aria-current=page] { background:#e7eddc; }
  .profile-groups { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .profile-groups>.profile-group:last-of-type { grid-column:auto; }
}
@media(max-width:700px){.header-inner{padding:10px 16px;min-height:68px}.brand-mark{width:30px;height:30px}.brand-name{font-size:0.75rem;letter-spacing:.07em}.brand-sub{display:none}.header-actions{gap:0}.header-actions .icon-btn{width:44px;height:44px;min-width:44px;min-height:44px}.shell{padding:18px 16px 120px}.editorial-hero{display:grid;grid-template-columns:1fr .6fr;min-height:234px;padding:24px 20px;gap:6px;border-radius:20px}.editorial-copy{padding:0;min-height:0}.editorial-copy h1{font-size:1.875rem;max-width:11ch;margin:12px 0}.editorial-copy p{font-size:0.9375rem;line-height:1.55;max-width:24ch;margin-bottom:18px}.editorial-copy .eyebrow{font-size:0.625rem;max-width:none}.editorial-art{height:170px;align-self:center}.editorial-art img{height:170px;max-height:170px;min-height:0;width:100%}.hero-actions{width:calc(160% + 6px);position:relative;gap:8px}.hero-actions .btn{font-size:0.875rem;padding:11px 13px;min-height:46px}.time-summary{padding:10px 12px;margin:12px 0 22px;gap:8px}.time-summary>span{font-size:0.8125rem;padding-right:4px}.time-summary svg{width:18px;height:18px;flex-basis:18px}.section-head h2{font-size:1.3125rem}.section{margin-top:24px}.hub-grid{gap:10px}.hub-tile{grid-template-columns:34px 1fr 14px;min-height:80px;padding:14px 12px;gap:8px}.hub-tile .hub-picture{width:34px;height:34px}.hub-tile .hub-icon{width:34px;height:34px;border-radius:11px}.hub-tile .hub-icon svg{width:21px;height:21px}.hub-tile strong{font-size:0.875rem;word-break:keep-all}.hub-tile>svg{width:14px;height:14px}.category-tile,.service-choices .category-tile{min-height:78px;font-size:0.9375rem;padding:14px;gap:10px}.category-tile .card-icon{width:36px;height:36px;flex-basis:36px}.category-tile .card-icon svg{width:22px;height:22px}.profile-groups{grid-template-columns:1fr}.profile-identity{padding:20px;gap:12px}.profile-identity .btn{margin-left:0;flex:1 1 100%;width:100%}.profile-identity h2{font-size:1.375rem}.page-heading h1{font-size:1.75rem}.page-heading p{font-size:1rem}.bottom-nav{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 20px);padding:6px;border-radius:17px;border:1px solid #d3ddca;background:#fffefa;box-shadow:0 5px 20px #29412d12;backdrop-filter:none}.nav-btn{min-height:56px;font-size:0.75rem;line-height:1.3;gap:5px}.nav-btn svg{width:22px;height:22px}.closure-card{padding:22px 18px}.closure-card p{font-size:0.9375rem}.closure-card h2{font-size:1.3125rem}.closure-summary{padding:14px}.data-help .inline-actions .btn{flex:1 1 170px}.data-tile{padding:16px;font-size:0.9375rem}.data-hub-grid{gap:10px}.data-tile strong{word-break:keep-all}}
@media(max-width:360px){.shell{padding-inline:14px}.editorial-hero{grid-template-columns:1fr .48fr;padding:22px 18px;min-height:246px}.editorial-copy h1{font-size:1.75rem}.editorial-copy p{font-size:0.875rem;max-width:23ch}.editorial-art,.editorial-art img{height:140px;max-height:140px}.hero-actions{width:calc(148% + 6px);gap:7px}.hero-actions .btn{font-size:0.875rem;padding-inline:11px}.hub-tile{grid-template-columns:30px 1fr;gap:8px;min-height:82px;padding:12px}.hub-tile>svg{display:none}.hub-tile strong{font-size:0.875rem}.hub-tile .hub-picture,.hub-tile .hub-icon{width:30px;height:30px}.time-summary{gap:5px}.time-summary>span{font-size:0.75rem}.btn{font-size:0.875rem}.category-tile,.service-choices .category-tile{font-size:0.875rem;padding:12px}}
/**/
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
html[lang=ko] .editorial-copy h1{width:auto;max-width:11ch;font-size:clamp(1.75rem,4vw,2.75rem);word-break:keep-all;overflow-wrap:normal}
@media(max-width:700px){html[lang=ko] .editorial-copy h1{font-size:1.75rem;max-width:10ch}}

/**/
.editorial-copy { grid-column:1; grid-row:1; }
.editorial-art { grid-column:2; grid-row:1 / span 2; }
.editorial-hero>.hero-actions { grid-column:1; grid-row:2; width:auto; max-width:none; margin-top:0; }
@media (max-width:700px) {
  .editorial-art { grid-row:1; align-self:start; }
  .editorial-hero>.hero-actions { grid-column:1 / -1; width:100%; gap:8px; }
  .editorial-hero>.hero-actions .btn { flex:1 1 120px; min-height:48px; border-radius:12px; }
  .editorial-copy p { margin-bottom:12px; }
}

/**/
.guide-search{margin:22px 0 18px}.guide-search>label{display:block;font-size:0.9375rem;font-weight:600;margin-bottom:8px}
.guide-search>div{display:flex;gap:8px;align-items:center;border:1px solid #b7c6b7;border-radius:12px;background:var(--r42-paper);padding:0 8px 0 14px}
.guide-search>div>span{display:grid;place-items:center;color:#59735b}.guide-search svg{width:21px;height:21px;flex:none}
.guide-search .input{border:0;box-shadow:none;min-width:0;background:transparent;flex:1;padding-inline:4px}
.guide-search .text-btn{display:flex;gap:6px;align-items:center;flex:none;min-height:48px}
.guide-match-count{margin:18px 0 12px}.guide-answer summary{min-height:64px;font-size:1rem}.guide-answer p{font-size:1rem;line-height:1.75}

/**/
.room-colors { padding: 16px; margin: 18px 0; border: 1px solid var(--line); border-radius: 16px; background: var(--r42-paper); }
.room-color-options { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.room-color-options .chip { min-height: 44px; min-width: 92px; padding: 10px 13px; gap: 8px; }
.room-color-options .chip[aria-pressed=true] { background: #e7eee3; border-color: #537947; color: #254521; }

/**/
.room-visual .space3d-controls .btn { overflow-wrap: normal; word-break: normal; font-size: 0.875rem; min-height: 48px; }
@media (max-width: 600px) {
  .room-visual .space3d-controls { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .room-visual .space3d-controls .btn { min-width: 0; padding: 12px 10px; }
}
@media (min-width: 1050px) and (min-height: 800px) {
  .room-visual { position: sticky; top: 124px; }
}

/**/
.room-disclosure { border: 1px solid var(--r42-line); border-radius: 14px; margin: 22px 0; padding: 0 16px; background: var(--r42-paper); }
.room-disclosure > summary { min-height: 52px; display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 0.9375rem; font-weight: 600; list-style: none; }
.room-disclosure > summary::-webkit-details-marker { display: none; }
.room-disclosure > summary svg { width: 22px; height: 22px; flex: 0 0 22px; }
.room-disclosure > summary svg:last-child { margin-left: auto; width: 18px; height: 18px; }
.room-disclosure[open] > summary svg:last-child { transform: rotate(90deg); }
.room-disclosure .room-options { margin-top: 10px; padding-bottom: 18px; }
.room-disclosure.room-map-section > p { margin-top: 10px; }
.room-disclosure .room-map-scroll { margin-bottom: 10px; }
/**/
.room-controls .room-choice span,.room-controls .room-history .btn,.room-controls .room-item small{font-size:0.875rem}
.room-visual .room-save .btn{font-size:0.9375rem;min-height:48px}

/**/
.notice-card .notice-copy{min-width:0}
.notice-card h2{font-size:1.125rem;line-height:1.45;overflow-wrap:anywhere}
.notice-card .row-between{align-items:flex-start;gap:12px}
.notice-card .badge{flex:0 0 auto}
.notice-card .inline-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.notice-card .inline-actions .btn{min-height:44px;font-size:0.875rem;padding:10px 14px}
.notice-card .tiny{font-size:0.875rem;line-height:1.6}
.record-card .private-note{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}
.record-card .inline-actions{flex-wrap:wrap;gap:10px}
@media(max-width:600px){.notice-card{gap:12px}.notice-card .card-icon{width:36px;height:36px;flex:0 0 36px}.notice-card .notice-copy{flex:1}}

/**/
/**/
/**/
.room-library-shortcut{margin-top:20px}
.room-library .section-head{flex-wrap:wrap;align-items:center}
.room-library .section-head h2{font-size:1.125rem;line-height:1.5}
.room-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.room-library-card{min-width:0;background:var(--r42-paper,#fff);border:1px solid var(--r42-line,#dce5d8);border-radius:18px;padding:24px}
.room-library-card h3{font-size:1.3125rem;line-height:1.4;overflow-wrap:anywhere;margin:16px 0 8px}
.room-library-card .card-icon{width:44px;height:44px;border-radius:12px}
.room-library-card .card-icon svg{width:25px;height:25px}
.room-library-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.room-library-actions .btn{min-height:48px;line-height:1.4;font-size:0.875rem}
.room-library-art{background:#f1f5f4;border-radius:16px;margin:4px 0 22px;overflow:hidden}
.room-library-art svg{display:block;width:100%;height:auto;max-height:300px}
.room-library-card>.room-library-art{margin:0 0 20px;background:#f1f5f4}
.room-library-card>.room-library-art svg{height:auto;max-height:none}
.room-library-tools{border-top:1px solid var(--r42-line,#dce5d8);margin-top:18px}
.room-library-tools summary{display:flex;gap:8px;align-items:center;min-height:48px;cursor:pointer;font-size:0.875rem;font-weight:600}
.room-library-tools summary svg{width:18px;height:18px}
.room-library-tools .room-library-actions{margin-top:6px}
.room-library-scene-summary{font-size:1rem;line-height:1.55;margin:8px 0;color:var(--r42-ink,#294b39)}
.room-library-inventory{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:12px 0 20px}
.room-library-inventory li{padding:6px 10px;border:1px solid var(--r42-line,#dce5d8);border-radius:10px;font-size:0.875rem;line-height:1.5}
#roomLayoutForm .field label{font-size:1rem}
#roomLayoutForm .input{font-size:1rem;min-height:50px}
#roomLayoutForm .btn-row{gap:10px;flex-wrap:wrap;margin-top:22px}
#roomLayoutForm .btn-row .btn{min-height:48px;flex:1 1 140px}
@media(max-width:600px){.room-library-grid{grid-template-columns:1fr}.room-library-card{padding:20px}.room-library-card h3{font-size:1.25rem}.room-library-actions .btn{flex:1 1 8.5rem}}
/**/
.room-library-actions .btn,#roomLayoutForm .btn-row .btn{
 word-break:keep-all;overflow-wrap:normal;white-space:normal;
}
#roomLayoutForm .btn-row .btn{flex:1 1 8.75rem}

/**/
/**/
.page-heading>div{min-width:0;max-width:100%;overflow-wrap:anywhere}
.page-heading h1,.page-heading h2,.page-heading p{overflow-wrap:anywhere}
.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
.bottom-nav .nav-btn{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.bottom-nav .nav-btn span{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}

/**/
/**/
.pass-card .pass-actions {
    /**/
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 8.5rem), 1fr));
}
.pass-card .pass-actions > .btn {
    word-break: keep-all;
    overflow-wrap: normal;
}
.pass-help.btn-row,
.support-compose .btn-row,
.support-toolbar > .btn-row,
.visit-calendar-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: .75rem;
}
.pass-help.btn-row > .btn {
    flex: 1 1 8.5rem;
    min-width: min(100%, 8.5rem);
}
.support-compose .btn-row > .btn,
.visit-calendar-actions > .btn {
    flex: 1 1 10rem;
    min-width: min(100%, 10rem);
}
.support-toolbar > .btn-row {
    flex: 1 1 20rem;
}
.support-toolbar > .btn-row > .btn {
    flex: 1 1 9rem;
    min-width: min(100%, 9rem);
}
.pass-help.btn-row > .btn,
.support-compose .btn-row > .btn,
.support-toolbar > .btn-row > .btn,
.visit-calendar-actions > .btn {
    word-break: keep-all;
    overflow-wrap: normal;
}
/**/
.journey-steps {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}
.journey-step {
    flex: 1 1 3.5rem;
    min-width: min(100%, 3.5rem);
    word-break: keep-all;
}
.step-number {
    width: 1.75em;
    height: 1.75em;
    font-size: .8125rem;
    line-height: 1;
}
/**/
.support-close-actions > .btn {
    flex: 1 1 8rem;
    min-width: min(100%, 8rem);
    word-break: keep-all;
    overflow-wrap: normal;
}
.support-close-title,
.support-close-copy {
    word-break: keep-all;
    overflow-wrap: normal;
}

/**/
/**/
.home-welcome {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr);
    gap: 1rem;
    min-height: 0;
    padding: clamp(1.25rem, 4vw, 2rem);
    background: #edf2e6;
    border-color: #d7e1d0;
}
.home-welcome .editorial-copy { min-width: 0; }
.home-welcome .editorial-copy h1 { max-width: 14ch; margin: .75rem 0 1rem; line-height: 1.12; }
.home-welcome .editorial-copy p { margin-bottom: 0; }
.home-welcome .editorial-art { align-self: center; height: auto; }
.home-welcome .editorial-art img { width: 100%; height: auto; max-height: 14rem; max-width: 14rem; }
.home-welcome .hero-actions { grid-column: 1 / -1; width: 100%; display: flex; flex-wrap: wrap; gap: .75rem; }
.home-welcome .hero-actions .btn { min-height: 3rem; flex: 0 1 auto; }
.home-tool-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
    gap: .75rem;
}
.home-tool {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) 1rem;
    align-items: center;
    gap: .625rem;
    min-height: 4.75rem;
    padding: 1rem;
    border: 1px solid var(--line);
    border-radius: 1rem;
    background: var(--paper);
    color: var(--ink);
    text-align: start;
    font: inherit;
    font-weight: 600;
    line-height: 1.35;
    cursor: pointer;
}
.home-tool > span { min-width: 0; word-break: keep-all; overflow-wrap: normal; }
.home-tool > svg { width: 1rem; height: 1rem; }
.home-tool-icon { width: 2.5rem; height: 2.5rem; display: grid; place-items: center; border-radius: .75rem; background: var(--wash); }
.home-tool-icon svg { width: 1.5rem; height: 1.5rem; }
@media (hover: hover) { .home-tool:hover { background: #f2f5ec; border-color: #aabda4; } }
.home-tool:active { background: #eaf0e1; }
.home-tool:focus-visible { outline: 3px solid var(--brand); outline-offset: 3px; }
/**/
.cancellation-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
    gap: .75rem;
}
.cancellation-actions .btn {
    min-height: 3rem;
    white-space: normal;
    word-break: normal;
    overflow-wrap: normal;
}
@media (max-width: 600px) {
    .home-welcome { grid-template-columns: minmax(0, 1fr) minmax(4rem, .35fr); gap: 1rem; }
    .home-welcome .editorial-art img { max-height: 8rem; }
    .home-welcome .hero-actions .btn { flex: 1 1 9rem; }
    .home-tool { grid-template-columns: 2rem minmax(0, 1fr); padding: .875rem; gap: .625rem; }
    .home-tool > svg { display: none; }
    .home-tool-icon { width: 2rem; height: 2rem; }
    .home-tool-icon svg { width: 1.375rem; height: 1.375rem; }
}
@media (max-width: 380px) {
    .home-welcome { grid-template-columns: minmax(0, 1fr); }
    /**/
    .home-welcome .editorial-art { display: none; }
}
/**/
#arrivalCode {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .25em .75em;
  font-size: 1.35rem;
  padding: 1rem;
}
#arrivalCode > span { white-space: nowrap; }
/**/
@media (max-width: 999px) {
  body .app-frame .bottom-nav { padding-inline: 5px; }
  body .app-frame .bottom-nav .nav-btn { padding-inline: 0; }
  body .app-frame .bottom-nav .nav-btn span {
    word-break: keep-all;
    overflow-wrap: normal;
  }
}
/**/
@media (min-width: 1000px) {
  /**/
  body .app-frame .bottom-nav { top: max(124px, calc(6rem + 28px)); }
  body .app-frame .bottom-nav .nav-btn { padding-inline: 14px; }
  body .app-frame .bottom-nav .nav-btn span {
    word-break: keep-all;
    overflow-wrap: normal;
  }
}

/**/
.visit-home{margin:0 0 28px;padding:24px;background:#eef3ec;border:1px solid #cfddcf;border-radius:22px;min-width:0}
.visit-home-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.visit-home-heading h2{margin:.25rem 0 0;font-size:1.5rem;line-height:1.35}
.visit-home-heading .text-btn{min-height:48px;flex-shrink:0}
.visit-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.visit-home-card{background:#fffefa;border:1px solid #d7e2d4;border-radius:16px;padding:20px;display:flex;flex-direction:column;min-width:0}
.visit-home-status{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.visit-home-hotel{font-size:1rem;color:#536454;margin:18px 0 4px;overflow-wrap:anywhere}
.visit-home-card h3{font-size:1.1875rem;line-height:1.45;margin:0;overflow-wrap:anywhere}
.visit-home-time{display:flex;align-items:flex-start;gap:10px;line-height:1.6;margin:16px 0 20px}
.visit-home-time svg{width:20px;height:20px;flex:0 0 20px;margin-top:.25rem}
.visit-home-time>span{min-width:0;overflow-wrap:anywhere}
.visit-home-heading .text-btn svg{width:16px;height:16px;flex-shrink:0}
.visit-home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto}
.visit-home-actions .btn{flex:1 1 120px;min-height:48px;white-space:normal;text-align:center;overflow-wrap:anywhere}
.visit-home-message{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;min-width:0}
.visit-home-message p{margin:0;overflow-wrap:anywhere}
.visit-home-message .btn{min-height:48px}
.visit-home-note{margin:16px 0 0;overflow-wrap:anywhere}
@media(max-width:550px){.visit-home{padding:18px}.visit-home-card{padding:18px}.visit-home-heading{align-items:flex-start}}

/**/
/**/
:root{--action-min:3rem;--action-radius:.75rem;--action-icon:1.25rem;--tile-icon:1.5rem;--layout-gap:1rem}
/**/
body :is(.app-frame,.console-shell,.tl-dialog) .btn-row {
 align-items:stretch;gap:.75rem;
}
body :is(.app-frame,.console-shell,.tl-dialog) .btn-row>.btn {
 align-self:stretch;
}
body .app-frame .btn,body .app-frame .text-btn,body .app-frame .chip,
body .console-shell .btn,body .console-shell .text-btn,body .console-shell .chip,
body .tl-dialog .btn,body .tl-dialog .text-btn,body .tl-dialog .chip{
 min-height:var(--action-min);height:auto;max-width:100%;min-width:0;
 border-radius:var(--action-radius);padding:.625rem 1rem;font-size:.9375rem;
 font-weight:600;line-height:1.5;display:inline-flex;align-items:center;
 justify-content:center;gap:.5rem;white-space:normal;word-break:normal;overflow-wrap:anywhere;
}
body .app-frame .btn svg,body .app-frame .text-btn svg,body .app-frame .chip svg,
body .console-shell .btn svg,body .console-shell .text-btn svg,body .console-shell .chip svg,
body .tl-dialog .btn svg,body .tl-dialog .text-btn svg,body .tl-dialog .chip svg{
 width:var(--action-icon);height:var(--action-icon);flex:0 0 var(--action-icon);
}
html[lang=ko] :is(.btn,.text-btn,.chip,.category-tile,.home-tool){word-break:keep-all}
body :is(.app-frame,.console-shell,.tl-dialog) .input{min-width:0;max-width:100%;min-height:3rem;font-size:1rem;line-height:1.5;border-radius:.75rem}
body :is(.app-frame,.console-shell,.tl-dialog) :is(.btn-row,.section-head,.page-heading)>*{min-width:0}
body .app-frame .section-head{align-items:center;gap:1rem;flex-wrap:wrap}
body .app-frame :is(h1,h2,h3){font-family:inherit;font-weight:600}
body .app-frame .section-head>h2{flex:1;min-width:0;margin:0}
body .app-frame :is(.hub-grid,.category-grid,.home-tool-grid){gap:.75rem}
body .app-frame .hub-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
body .app-frame .hub-tile{display:grid;grid-template-columns:2.75rem minmax(0,1fr) 1rem;grid-template-rows:auto;gap:.75rem;min-height:5.5rem;height:auto;padding:1rem;border-radius:1rem;align-items:center;text-align:start;background:var(--paper)}
body .app-frame .hub-tile .hub-picture{width:2.75rem;height:2.75rem;display:grid;place-items:center}
body .app-frame .hub-tile .hub-icon{width:2.75rem;height:2.75rem;border-radius:.875rem;background:#edf2e8}
body .app-frame .hub-tile .hub-icon svg{width:var(--tile-icon);height:var(--tile-icon)}
body .app-frame .hub-tile strong{padding:0;font-size:1rem;line-height:1.4;word-break:keep-all;overflow-wrap:anywhere}
body .app-frame .hub-tile>svg{position:static;width:1rem;height:1rem}
body .app-frame .category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
body .app-frame .category-tile{min-height:5.5rem;padding:1rem;border-radius:1rem;display:flex;align-items:center;gap:.75rem;font-size:1rem;text-align:start;line-height:1.4}
body .app-frame .category-tile .card-icon{width:2.75rem;height:2.75rem;flex:0 0 2.75rem;border-radius:.875rem}
body .app-frame .category-tile .card-icon svg{width:var(--tile-icon);height:var(--tile-icon)}
body .app-frame .category-tile>:is(span,strong):not(.card-icon){min-width:0;overflow-wrap:anywhere;word-break:keep-all}
body .app-frame .home-tool{min-height:5.5rem;border-radius:1rem;padding:1rem}
body .app-frame .home-welcome{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:1.5rem;padding:clamp(1.25rem,4vw,2.5rem);background:#eaf0e2;border-radius:1.5rem}
body .app-frame .home-welcome .editorial-copy{padding:0;min-height:0;width:100%;grid-column:1;grid-row:1}
body .app-frame .home-welcome .editorial-copy h1{font-family:inherit;font-size:clamp(2rem,4vw,3rem);max-width:18ch;margin:.75rem 0 1rem;line-height:1.15;font-weight:650}
body .app-frame .home-welcome .editorial-copy p{max-width:36ch;padding:0;font-size:1rem;line-height:1.6}
body .app-frame .home-welcome .editorial-art{display:grid;position:static;align-self:center;place-items:center;width:100%;height:auto;min-height:0;padding:0;grid-column:2;grid-row:1}
body .app-frame .home-welcome .editorial-art img{width:100%;max-width:17rem;height:auto;max-height:none;object-fit:contain}
body .app-frame .home-welcome .hero-actions{margin:0;grid-column:1/-1;grid-row:2;gap:.75rem;width:100%}
body .app-frame .editorial-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem}
body .app-frame .editorial-products .experience-card{display:flex;flex-direction:column;border-radius:1.25rem;overflow:hidden}
body .app-frame .editorial-products .experience-media{width:100%;height:auto;min-height:0;aspect-ratio:16/10;background:#edf1e9}
body .app-frame .editorial-products .experience-media img{width:100%;height:100%;min-height:0;object-fit:contain}
body .app-frame .editorial-products .experience-body{width:100%;min-width:0;padding:1.25rem;display:flex;flex-direction:column;flex:1}
body .app-frame .editorial-products .experience-body>button{width:100%}
body .app-frame .editorial-products .experience-footer{margin-top:auto}
body .app-frame .digital-space{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.5rem;align-items:center;background:#233f35;color:white;padding:clamp(1.25rem,3vw,2rem);border-radius:1.5rem;margin-top:2rem}
.digital-space-art{display:grid;place-items:center;border-radius:1rem;background:#e7ecdf;aspect-ratio:4/3}
.digital-space-art img{width:85%;height:auto;max-height:15rem;object-fit:contain}
.digital-space-copy{min-width:0}.digital-space-copy .eyebrow{color:#cee0be;display:block;max-width:100%;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}.digital-space-copy h2{margin:.625rem 0;font-size:1.75rem}.digital-space-copy p{color:#e4eddf;margin:0 0 1rem;max-width:44ch}
.digital-space-actions{display:flex;flex-wrap:wrap;gap:.75rem}.digital-space-actions .btn{background:white;color:#233f35;border-color:white}
.digital-space-actions .btn-secondary{background:transparent;color:white;border-color:#a5bcaa}
body .app-frame .room-intro{max-width:54rem}.room-intro h1{font-family:inherit}
@media(max-width:700px){
 body .app-frame .home-welcome{grid-template-columns:minmax(0,1fr);gap:1rem}
 body .app-frame .home-welcome .editorial-art{grid-row:2;grid-column:1}
 body .app-frame .home-welcome .hero-actions{grid-row:3;grid-column:1}
 body .app-frame .home-welcome .editorial-art img{max-width:11rem}
 body .app-frame .home-welcome .hero-actions .btn{flex:1 1 9rem}
 body .app-frame .hub-tile{grid-template-columns:2rem minmax(0,1fr);gap:.625rem;padding:.875rem}
 body .app-frame .hub-tile .hub-picture,body .app-frame .hub-tile .hub-icon{width:2rem;height:2rem}
 body .app-frame .hub-tile>svg{display:none}
 body .app-frame .digital-space{grid-template-columns:minmax(0,1fr);gap:1rem}
 .digital-space-art{aspect-ratio:16/8}.digital-space-art img{max-height:10rem}
 .digital-space-actions .btn{flex:1 1 10rem}
 body .app-frame .btn-row{gap:.75rem}
 body .app-frame .btn-row>.btn{flex:1 1 10rem}
 body .console-shell .btn-row>.btn,body .tl-dialog .btn-row>.btn{flex:1 1 10rem}
}
@media(prefers-reduced-motion:reduce){.digital-space *{transition:none;animation:none}}

/**/
/**/
.record-search{margin:1.5rem 0;padding:1.25rem;border:1px solid var(--line,#d0ddc8);border-radius:1rem;background:var(--surface,#fff)}
.record-search fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1rem}
.record-search label{min-width:0;display:flex;flex-direction:column;gap:.5rem;font-weight:600}
.record-search input[type=search],.record-search select{box-sizing:border-box;width:100%;min-width:0;min-height:3rem;padding:.75rem .875rem;font:inherit;font-weight:400;line-height:1.5;color:inherit;border:1px solid var(--line,#d0ddc8);border-radius:.75rem;background:#fff}
.record-search input[type=search]:focus-visible,.record-search select:focus-visible{outline:3px solid #93b6a2;outline-offset:2px}
.record-search .check-label{flex-direction:row;align-items:center;min-height:3rem;font-weight:400}
.record-search-note,.record-search-actions{grid-column:1/-1}
.record-search-actions{justify-content:flex-start}
.record-search .error-copy:empty{display:none}
.record-search[aria-busy=true]{cursor:progress}
@media(max-width:550px){.record-search fieldset{grid-template-columns:minmax(0,1fr)}}

/**/
/**/
.photo-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.75rem;margin:1.25rem 0}.photo-tabs+.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}
.photo-tabs>.btn{flex:1 1 8rem}
/**/
.photo-tabs>.btn[aria-current=page]{background:#eaf1e4;border-color:#284f3d;color:#203f31;box-shadow:inset 0 0 0 1px #284f3d;font-weight:700}
.photo-grid,.album-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem;margin:1.25rem 0}
.photo-card,.album-card{background:var(--surface,#fff);border:1px solid var(--line,#dce3da);border-radius:1rem;overflow:hidden;min-width:0}
.photo-card>img,.photo-placeholder{display:block;width:100%;height:13rem;object-fit:contain;background:#eef3ef}
.photo-placeholder{display:flex;align-items:center;justify-content:center}
.photo-placeholder svg{width:3rem;height:3rem}
.photo-card-copy,.album-card{padding:1rem}
.photo-card h2,.album-card h2{font-size:1.125rem;line-height:1.5;overflow-wrap:anywhere;margin:0 0 .5rem}
.photo-card .btn-row>.btn,.album-card .btn-row>.btn{flex:1 1 7rem}
.photo-view{margin:0}.photo-view img{display:block;max-width:100%;height:auto;max-height:65vh;object-fit:contain;margin:auto}
.album-picks{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--line,#dce3da);border-radius:.75rem}
.album-picks label{display:flex;align-items:center;gap:.75rem;min-height:3rem;overflow-wrap:anywhere}
.room-photo-gallery figure{margin:1rem 0 0;text-align:center}
.room-photo-gallery img{max-width:100%;height:auto;max-height:20rem;object-fit:contain;border:1rem solid #faf8ef;box-shadow:0 6px 18px #18362914}
.room-photo-gallery figcaption{margin-top:.75rem;overflow-wrap:anywhere}
@media(min-width:1100px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}


/**/
#photoAlbumForm,#photoUploadForm{min-inline-size:0;max-inline-size:100%}
#photoAlbumForm .field,#photoUploadForm .field{min-inline-size:0;grid-template-columns:minmax(0,1fr)}
.album-picks{min-inline-size:0;max-inline-size:100%}
.album-picks label>span{min-inline-size:0;flex:1 1 auto}
.album-picks input[type=checkbox]{flex:0 0 auto;inline-size:1.125rem;block-size:1.125rem}
#photoUploadForm input[type=file]::file-selector-button{font:inherit;max-inline-size:100%;white-space:normal}
/**/
#photoBookingForm,#photoBookingForm .field{min-inline-size:0;max-inline-size:100%;grid-template-columns:minmax(0,1fr)}
#photoBookingForm select{inline-size:100%;min-inline-size:0;text-overflow:ellipsis}
.album-heading .btn-row{display:flex;flex-wrap:wrap;gap:.75rem}
.album-heading .btn-row>.btn{flex:1 1 8rem}
.space3d-canvas{touch-action:pan-y;cursor:grab}.space3d-canvas[data-dragging]{cursor:grabbing}.space3d-canvas:focus-visible{outline:3px solid var(--accent,#357650);outline-offset:3px}

.external-signin{margin-block:1rem;padding-block:1rem;border-block-start:1px solid var(--line);min-inline-size:0}.external-signin .btn-row,.wallet-options{display:flex;gap:.75rem;flex-wrap:wrap}.external-signin .btn,.wallet-options .btn{flex:1 1 10rem;min-inline-size:0;overflow-wrap:anywhere}#googleSigninButton{max-inline-size:100%;min-inline-size:0;overflow:hidden}

/**/
.space3d-avatar-controls{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0;border-top:1px solid var(--line);padding-top:.75rem}.space3d-avatar-controls>strong,.space3d-avatar-controls>p{grid-column:1/-1;margin:0}.space3d-avatar-controls .btn{min-height:48px;min-width:0;white-space:normal;overflow-wrap:anywhere}
.space3d-avatar-controls{flex:1 1 100%;width:100%}

/**/
.photo-batch-tools{margin-block:16px;min-width:0}.photo-batch-tools .btn-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.photo-batch-tools .btn-row[data-selection-mode=trash]{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-batch-tools .btn{min-height:48px;min-width:0;white-space:normal;overflow-wrap:anywhere}.photo-batch-tools p{margin-block:10px}
.photo-pick{min-height:48px;display:flex;align-items:center;gap:12px;padding:12px;cursor:pointer;overflow-wrap:anywhere}.photo-pick[hidden]{display:none}.photo-pick input{width:22px;height:22px;flex:none;accent-color:#284f3d}.photo-pick span{min-width:0}.photo-pick:focus-within{outline:3px solid var(--accent,#357650);outline-offset:-3px;border-radius:10px}

@media(max-width:640px){.photo-batch-tools .btn-row,.photo-batch-tools .btn-row[data-selection-mode=trash]{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-batch-tools [data-selection-mode=trash] [data-photo=batch-action]{grid-column:1/-1}}
/**/
body:has(#appMain){--customer-action:#284f3d;--customer-action-hover:#203f31}
body:has(#appMain) #commonDialog .btn-primary{background:var(--customer-action);border-color:var(--customer-action);color:#fff}
body:has(#appMain) #commonDialog .btn-primary:hover{background:var(--customer-action-hover);border-color:var(--customer-action-hover)}

body:has(#appMain) .btn-primary:hover{background:var(--customer-action-hover);border-color:var(--customer-action-hover)}

/**/
.album-card>.album-cover{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#eef3ef;border-radius:.625rem;margin:0 0 1rem;overflow:hidden}

/**/
/**/
:root{--control-height:3rem;--control-radius:.75rem;--control-icon:1.25rem}
body :is(.app-frame,.console-shell,.tl-dialog) :is(.btn,.text-btn,.chip,.compare-toggle,.seg-btn){
 min-block-size:var(--control-height);max-inline-size:100%;font-family:inherit;
 font-size:1rem;font-weight:600;line-height:1.4;letter-spacing:normal;
 border-radius:var(--control-radius);padding:.625rem 1rem;
 display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
 white-space:normal;word-break:keep-all;overflow-wrap:anywhere;vertical-align:middle;
}
body :is(.app-frame,.console-shell,.tl-dialog) :is(.btn,.text-btn,.chip,.compare-toggle,.seg-btn)>svg{
 inline-size:var(--control-icon);block-size:var(--control-icon);flex:0 0 var(--control-icon);
}
body :is(.app-frame,.console-shell,.tl-dialog) .icon-btn{
 min-inline-size:var(--control-height);min-block-size:var(--control-height);
 inline-size:var(--control-height);block-size:var(--control-height);border-radius:var(--control-radius);
 display:inline-flex;align-items:center;justify-content:center;
}
body :is(.app-frame,.console-shell,.tl-dialog) .btn-row{align-items:stretch;flex-wrap:wrap}
body :is(.app-frame,.console-shell,.tl-dialog) :is(input.input,select.input){
 min-block-size:var(--control-height);font-family:inherit;font-size:1rem;line-height:1.4;
 border-radius:var(--control-radius);max-inline-size:100%;
}
body .room-library-tools summary{min-block-size:var(--control-height);padding:.625rem;line-height:1.4;display:flex;align-items:center;gap:.5rem}
body .room-library-tools summary svg{inline-size:var(--control-icon);block-size:var(--control-icon)}
body .app-frame .segmented{max-inline-size:100%}
body .app-frame .seg-btn{min-inline-size:3rem}
body :is(.app-frame,.console-shell,.tl-dialog) :is(button,input,select,textarea,a,summary):focus-visible{outline:3px solid #126c83;outline-offset:3px}
@media(max-width:700px){body .app-frame .home-welcome .hero-actions .btn{flex:1 1 9rem}}

/**/
body .app-frame .experience-card .experience-media .save-button,
body .app-frame .product-card .product-media .save-button,
body .app-frame .save-button.icon-btn{
 min-inline-size:var(--control-height);min-block-size:var(--control-height);
 inline-size:var(--control-height);block-size:var(--control-height);
}

/**/
body .app-frame .detail-hero > .detail-media,
body .app-frame .detail-hero > .detail-panel {
    min-width: 0;
}

body .app-frame .detail-panel h1 {
    overflow-wrap: anywhere;
}

/**/
body .app-frame .detail-share-row {
    flex-wrap: wrap;
    gap: .75rem;
}

body .app-frame .detail-share-row .text-btn {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    word-break: normal;
    overflow-wrap: normal;
}

/**/
body .app-frame .compare-filters .toolbar {
    padding: 0;
    border: 0;
    background: transparent;
}

body .app-frame .compare-filters .toolbar .field {
    flex: 1 1 10rem;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
}

body .app-frame .compare-filters .toolbar .input {
    width: 100%;
    min-width: 0;
    max-width: 100%;
}

/**/
body .app-frame .product-grid .experience-card {
    display: flex;
    flex-direction: column;
}

body .app-frame .product-grid .experience-card > .experience-media {
    flex: 0 0 auto;
    width: 100%;
    height: clamp(180px, 20vw, 240px);
    min-height: clamp(180px, 20vw, 240px);
}

body .app-frame .product-grid .experience-card > .experience-media img {
    width: 100%;
    height: 100%;
    min-height: 0;
}

@media (max-width: 599px) {
    body .app-frame .product-grid .experience-card > .experience-media {
        height: clamp(160px, 48vw, 210px);
        min-height: clamp(160px, 48vw, 210px);
    }
}

@media (max-width: 399px) {
    /**/
    body .app-frame .detail-panel h1 {
        font-size: 1.5rem;
    }
}

/**/
/**/
.room-map-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.room-map{grid-template-columns:repeat(8,minmax(3rem,1fr));min-width:calc(24rem + 42px)}
.room-cell{min-width:3rem;min-height:3rem}
.photo-tabs>.btn{width:100%;min-height:3rem}

/**/
/**/
.shared-space{margin-block:24px;padding:20px;border:1px solid var(--line,#dce3d9);border-radius:20px;background:var(--surface,#fff);min-width:0}
.shared-space .btn-row{display:flex;flex-wrap:wrap;gap:8px}
.shared-space .btn,.shared-space .input{min-height:48px;max-width:100%;box-sizing:border-box}
.shared-space .input{width:100%;font:inherit;overflow-wrap:anywhere}
.shared-space .field{display:grid;gap:8px;margin-block:16px;min-width:0}
.shared-roster{display:grid;gap:8px;margin-block:16px}
.shared-roster>div{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.shared-roster .btn{margin-inline-start:auto}
.shared-space .room-visual{margin-block:16px;position:relative;top:auto;max-width:100%;width:100%;padding:12px}
/**/
.shared-space [data-space3d-controls]{display:flex;flex-wrap:wrap;gap:8px}
.shared-space [data-space3d-controls]>.space3d-avatar-controls{flex:1 1 100%}
.shared-space [data-space3d-controls]>.btn{flex:1 1 7.5em;word-break:keep-all}
.space3d-avatar-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8em),1fr));gap:8px;min-width:0}
.space3d-avatar-controls>strong,.space3d-avatar-controls>p{grid-column:1/-1}
.room-visual .space3d-avatar-controls .btn{min-width:0;width:100%;white-space:normal;word-break:keep-all;overflow-wrap:normal}
@media(max-width:420px){.shared-space{padding:16px}.shared-space .btn-row>.btn{flex:1 1 120px}}

/**/
.shared-space .btn{white-space:normal;word-break:keep-all;overflow-wrap:normal;min-width:48px;gap:8px}
.shared-space .btn svg{flex-shrink:0}
.shared-space [data-shared-copy]{width:100%;margin-block:0 12px}
.shared-space .shared-roster .small{flex:0 1 auto}

.hotel-guest-choices{display:grid;gap:12px}.hotel-guest-choices .btn{width:100%;text-align:start;justify-content:space-between;min-width:0}.hotel-guest-choices .btn>span{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.personal-studio{margin-block:24px;border:1px solid var(--line);border-radius:20px;padding:16px}.personal-studio>summary{min-height:48px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.personal-studio .room-layout{margin-block:20px}
.hotel-guest-choices .hotel-guest-count{font-size:.875em;line-height:1.5;font-weight:500;color:var(--muted,#586258);overflow-wrap:normal}
.hotel-guest-count-note{margin-block:12px 20px;line-height:1.7;word-break:keep-all}

/**/
.hotel-guest-requests{margin-block:24px;border-top:1px solid #cbd6c4;padding-top:16px}
.hotel-guest-requests>summary{min-height:48px;cursor:pointer;font-weight:650;line-height:1.7}
.hotel-guest-request{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;border:1px solid #cbd6c4;border-radius:16px;padding:16px;min-width:0}
.hotel-guest-request>span{display:grid;gap:6px;overflow-wrap:anywhere;min-width:0;flex:1 1 10em}
.hotel-guest-request .btn{flex:0 1 auto;min-height:48px;white-space:normal}

.hotel-guest-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10em),1fr));gap:12px;margin-block:18px}
.hotel-guest-picker .chip{min-height:48px;white-space:normal;overflow-wrap:anywhere;line-height:1.6;text-align:left}
.hotel-guest-picker .chip svg{width:20px;height:20px;flex:none}
.hotel-guest-picker [aria-pressed=true]{background:#31543d;color:#fff;border-color:#31543d}

/**/
.hotel-channel{margin-block:24px;padding:16px;border:1px solid var(--line,#d8e0d8);border-radius:18px;min-width:0}
.hotel-channel>summary,.hotel-channel-list summary{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px;cursor:pointer;font-weight:650;overflow-wrap:anywhere}
.hotel-channel-list{list-style:none;padding:0;display:grid;gap:12px;min-width:0}
.hotel-channel-list article{padding:14px;background:var(--surface,#fff);border:1px solid var(--line,#d8e0d8);border-radius:14px;min-width:0}
.hotel-channel-list header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hotel-channel-list time{font-size:.85em;color:var(--muted,#586258)}
.channel-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.hotel-channel textarea{width:100%;min-height:100px;resize:vertical;box-sizing:border-box}
.hotel-channel .btn-row{flex-wrap:wrap}.hotel-channel .btn{min-height:48px;white-space:normal;overflow-wrap:anywhere}

.hotel-channel>summary{font-size:1.08rem;line-height:1.4;list-style:none}
.hotel-channel>summary>span{flex:1;min-width:0}
.hotel-channel summary>svg{display:block;width:22px;height:22px;flex:0 0 22px}
.hotel-channel[open]>summary>svg:last-child{transform:rotate(90deg)}
.hotel-channel-list summary{font-size:.9rem}.hotel-channel-list summary:focus-visible,.hotel-channel>summary:focus-visible{outline:3px solid #315f4a;outline-offset:3px;border-radius:8px}

.shared-roster>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.shared-roster [data-shared-report]{margin-inline-start:auto;min-height:48px;padding:8px 12px;display:inline-flex;align-items:center;gap:6px;white-space:normal;overflow-wrap:anywhere}
.shared-roster [data-shared-report]>svg{width:20px;height:20px;flex:0 0 20px}
.shared-roster [data-safety-peer]{min-height:48px;min-width:48px;padding:8px 12px;display:inline-flex;align-items:center;gap:6px;white-space:normal;overflow-wrap:anywhere}
.shared-roster [data-safety-peer]>svg{width:20px;height:20px;flex:0 0 20px}
/**/
[data-guest-safety]{min-width:0;overflow-wrap:anywhere}
[data-guest-safety] .btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-block:20px 8px}
[data-guest-safety] .btn{min-height:48px;min-width:48px;max-width:100%;white-space:normal;word-break:keep-all;gap:8px}
[data-guest-safety] .btn svg{width:20px;height:20px;flex:none}
[data-guest-safety] .check-label{display:flex;align-items:flex-start;gap:12px;min-height:48px;padding-block:12px}
[data-guest-safety] input[type=checkbox]{width:24px;height:24px;flex:none}
.safety-list{display:grid;gap:12px;padding:0;list-style:none;margin-block:20px}
.safety-list li{display:flex;align-items:center;gap:12px;border:1px solid var(--line,#dce3d9);border-radius:12px;padding:12px}
.safety-list svg{width:20px;height:20px;flex:none}

/**/
.hotel-channel [data-channel-messages]{max-height:min(52vh,26rem);overflow-y:auto;padding-inline:2px;scrollbar-gutter:stable}
.hotel-channel [data-channel-messages]:focus-visible{outline:3px solid #315f4a;outline-offset:2px;border-radius:8px}

/**/
.personal-studio > summary > svg {
    inline-size: 24px;
    block-size: 24px;
    flex: 0 0 24px;
}
.personal-studio .room-picker {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 5.5em), 1fr));
}
.personal-studio .room-choice {
    min-inline-size: 0;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: normal;
}
.personal-studio .room-save .btn-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 9em), 1fr));
}
.personal-studio .room-save .btn-row > button {
    min-inline-size: 0;
    inline-size: 100%;
    flex-wrap: wrap;
    padding-inline: 12px;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: normal;
}

/**/
.shared-space .space3d-avatar-controls{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,6.5em),1fr));
}
@media(max-width:600px) and (max-height:740px){
  .shared-space .space3d-canvas{height:180px}
}
@media(max-width:359px) and (max-height:740px){
  .shared-space .space3d-canvas{height:160px}
}

/**/
.shared-space [data-space3d-controls] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 7.5em), 1fr));
    gap: .75rem;
    align-items: stretch;
}
.shared-space [data-space3d-controls] > .space3d-avatar-controls {
    grid-column: 1 / -1;
    gap: .75rem;
}
.room-visual .space3d-character-controls {
    grid-column: 1 / -1;
    flex: 1 1 100%;
    display: grid;
    /**/
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr));
    gap: .75rem;
    min-inline-size: 0;
}
.room-visual .space3d-character-controls > .btn {
    inline-size: 100%;
    min-inline-size: 0;
    white-space: normal;
    flex-wrap: wrap;
}
.space3d-character-retry {
    margin-block: .75rem;
    padding: .75rem;
    border: 1px solid var(--line, #dce3d9);
    border-radius: .75rem;
}
.space3d-character-retry > p { margin-block: 0 .75rem; }
.space3d-character-retry > .btn { inline-size: 100%; }
.shared-space [data-space3d-controls] > .btn {
    inline-size: 100%;
    align-self: stretch;
}
/**/
.room-visual [data-space3d-controls] .btn[aria-pressed="true"] {
    background: #e8f0e9;
    color: #234633;
    border-color: #315f47;
    box-shadow: inset 0 0 0 1px #315f47;
}
.room-visual [data-space3d-controls] .btn[aria-pressed="true"]::after {
    content: "";
    inline-size: .35rem;
    block-size: .65rem;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    flex: 0 0 .35rem;
    margin-inline-start: .25rem;
}

/**/
.hotel-social:empty{display:none}.hotel-social{padding:16px;border:1px solid var(--line);border-radius:16px;margin-block:16px;min-width:0}
.hotel-social h4{margin:0 0 8px;font-size:1.1rem}.hotel-social p{overflow-wrap:anywhere}
.hotel-social-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));grid-auto-rows:1fr;gap:12px;align-items:stretch}
.hotel-social-choices .btn{width:100%;height:100%;min-height:48px;min-width:0;line-height:1.5;white-space:normal}
.hotel-social-choices [aria-pressed=true]{background:#31543d;border-color:#31543d;color:#fff}
.hotel-social-badge{padding:4px 8px;border-radius:8px;background:#eaf3ee;color:#254d39;font-size:.85em;line-height:1.6}
.hotel-social-choices [aria-disabled=true]{opacity:.65;cursor:wait}

/**/
.shared-flat-navigation{margin-block:16px;border-top:1px solid var(--line);padding-top:8px}
.shared-flat-navigation>summary{display:flex;align-items:center;gap:8px;min-height:48px;cursor:pointer;font-weight:650}
.shared-flat-navigation>summary svg{width:20px;height:20px;flex:none}
.shared-flat-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr));grid-auto-rows:1fr;gap:12px;margin-block:12px}
.shared-flat-buttons .btn{width:100%;height:100%;min-width:0;min-height:48px}
.shared-flat-navigation[hidden]{display:none}

/**/
.shared-room-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));gap:12px;min-width:0;width:100%}
.shared-room-actions>.btn{min-width:0;min-height:48px;height:100%;white-space:normal}
.room-hotel-guide{min-width:0;display:grid;gap:12px}
.room-hotel-guide>h3,.room-hotel-guide>p{margin:0}
.room-hotel-guide h3,.room-hotel-guide p,.room-hotel-guide summary{overflow-wrap:anywhere}
/**/
.hotel-companion:empty { display: none; }
.hotel-companion:not(:empty) { margin: 1rem 0; padding: 1rem; border: 1px solid var(--line, #d8e1d8); border-radius: 1rem; background: var(--surface, #fff); }
.hotel-companion h4 { margin: 0 0 .5rem; }
.companion-peers { display: grid; gap: .75rem; }
.companion-peer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding-top: .5rem; }
.companion-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.hotel-companion .btn { min-height: 48px; max-width: 100%; white-space: normal; }
.hotel-companion p { overflow-wrap: anywhere; }

/**/
.hotel-guest-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:16px 0}
.hotel-guest-actions>.btn{min-height:48px;white-space:normal;flex:1 1 132px;min-width:0}

/**/
/**/
.brand .brand-mark:has(.brand-wordmark){width:clamp(110px,28vw,146px);height:48px;flex:none;border-radius:0;background:transparent;box-shadow:none;display:flex;align-items:center}
.brand-wordmark{display:block;width:100%;height:auto;max-height:48px;object-fit:contain}
.console-head>.brand-mark:has(.brand-wordmark){width:146px;height:48px;flex:none;border-radius:0;background:transparent;box-shadow:none;display:flex;align-items:center}
.brand:has(.brand-wordmark)>.brand-name{display:none}
@media(max-width:360px){.header-inner:has(#planBtn:not([hidden])){flex-wrap:wrap}.header-inner:has(#planBtn:not([hidden])) .header-actions{margin-inline-start:auto;max-width:100%}}

/**/
/**/
#profileBtn:has(.account-label){display:grid;justify-items:center;width:52px;min-width:52px;height:auto;min-height:52px;padding:6px 2px;gap:3px;grid-template-rows:auto auto;align-content:center}
#profileBtn .account-label{display:block;font-size:.6875rem;line-height:1.2;max-width:100%;overflow-wrap:anywhere;white-space:normal}
.session-receipt{padding:18px 20px;margin:0 0 18px;border:1px solid #cadcc2;border-radius:16px;background:#eff5e9;color:#294b39}
.session-receipt p{margin:6px 0 0;line-height:1.6}
/**/
body .app-frame .bottom-nav .nav-btn>span{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
@media(max-width:999px){
 body .app-frame .bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));height:auto;align-items:stretch}
 body .app-frame .bottom-nav .nav-btn{min-width:0;min-height:56px;padding:8px 2px;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
}
@media(max-width:360px){.header-inner:has(.account-label){flex-wrap:wrap}.header-actions:has(.account-label){flex-wrap:wrap;justify-content:flex-end}}

/**/
#profileBtn:has(.account-label) {
    inline-size: auto;
    min-inline-size: max(52px, 3.5em);
}
#profileBtn .account-label {
    overflow-wrap: normal;
    word-break: keep-all;
}
body .app-frame .bottom-nav .nav-btn > span {
    overflow-wrap: normal;
    word-break: keep-all;
}
@media (max-width: 999px) {
    body .app-frame .bottom-nav {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 2.75rem), 1fr));
    }
    body .app-frame .shell {
        padding-bottom: var(--navigation-clearance, 130px);
    }
    html { scroll-padding-bottom: var(--navigation-clearance, 130px); }
}
@media (max-width: 600px) {
    .header-inner:has(.account-label) { flex-wrap: wrap; }
    /**/
    .header-actions:has(.account-label) { flex: 0 1 auto; min-width: 0; max-width: 100%; flex-wrap: wrap; justify-content: flex-end; }
}

@media (min-width: 1000px) {
    body .app-frame .bottom-nav .nav-btn {
        padding-inline: 10px;
        gap: 8px;
    }
}

/**/
/**/
.hotel-events,.hotel-event-console{min-width:0;max-width:100%;}
.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;margin-block:16px;}
.event-card,.event-detail,.event-ticket,.event-editor{min-width:0;overflow-wrap:anywhere;}
.event-card,.event-detail{padding:20px;}
.event-card{display:flex;flex-direction:column;gap:12px;}
.event-card h3,.event-card p{margin:0;}
.event-card>.btn{margin-top:auto;}
.event-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:12px;margin-block:16px;}
.event-actions>.btn{width:100%;min-width:0;min-height:48px;height:auto;white-space:normal;overflow-wrap:anywhere;line-height:1.4;}
.event-schedule{font-variant-numeric:tabular-nums;line-height:1.6;}
.event-schedule time{display:inline;overflow-wrap:anywhere;}
.event-navigation [aria-current=page]{background:var(--sage-50,#edf2e5);border:2px solid var(--green-700,#2a503f);}
.event-badges{display:flex;flex-wrap:wrap;gap:8px;}
.event-description{white-space:pre-wrap;overflow-wrap:anywhere;}
.event-ticket{padding:20px;margin-top:24px;border:1px solid var(--line,#d9e0d4);border-radius:18px;background:var(--sage-50,#f3f6ed);}
.event-ticket code{display:block;overflow-wrap:anywhere;white-space:normal;user-select:all;font-size:.95em;}
.event-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.event-editor-time{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:12px;min-width:0;}
/**/
.event-editor{overflow:clip;overflow-clip-margin:4px;}
.event-editor fieldset{min-width:0;border:1px solid var(--line,#d9e0d4);border-radius:16px;padding:16px;}
.event-editor .field{margin-block:12px;}
.event-editor input,.event-editor select,.event-editor textarea{width:100%;min-width:0;min-height:48px;font:inherit;box-sizing:border-box;}
.event-editor textarea{min-height:120px;resize:vertical;}
.event-console-list{display:grid;gap:12px;}
.event-console-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:64px;text-align:left;width:100%;padding:16px;}
.event-console-row>*{min-width:0;overflow-wrap:anywhere;}
.event-attendee{padding-block:12px;border-bottom:1px solid var(--line,#d9e0d4);}
.event-attendee code{display:block;overflow-wrap:anywhere;}
@media(max-width:600px){.event-editor-grid{grid-template-columns:1fr;}.event-actions{gap:12px;}.event-ticket{padding:16px;}}
@media(prefers-reduced-motion:reduce){.hotel-events *,.hotel-event-console *{scroll-behavior:auto;}}
.event-ticket code,.event-attendee code{font-family:inherit;font-variant-numeric:tabular-nums;letter-spacing:.08em}

/**/
.event-programme-editor{grid-column:1/-1;min-width:0}
.event-programme-rows{display:grid;gap:12px}
.event-programme-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.event-programme-row .field{min-width:0;margin:0}
.event-programme ol{display:grid;gap:16px;padding-inline-start:24px}
.event-programme li{padding-inline-start:4px;overflow-wrap:anywhere}
.event-programme li p{margin:0 0 6px;font-size:.875em;font-variant-numeric:tabular-nums}
@media(max-width:600px){.event-programme-row{grid-template-columns:minmax(0,1fr)}}

/**/
.replay-upload-panel{min-width:0;max-width:100%;margin-block:20px;padding:20px;overflow-wrap:anywhere}
.replay-upload-panel .replay-progress{font-weight:600;min-height:1.6em}
.replay-upload-panel .replay-selection{overflow-wrap:anywhere;font-size:.875em}
.replay-delete-confirm{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}
.replay-delete-confirm input{flex:0 0 auto;width:24px;height:24px}

/**/
/**/
.event-qr-dialog{min-width:0;max-width:100%}
.event-qr-image{width:min(100%,16rem);aspect-ratio:1;margin:16px auto;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px}
.event-qr-image svg{display:block;width:100%;height:100%}
.event-qr-dialog p{overflow-wrap:anywhere}
.event-qr-dialog .btn-row{display:flex;flex-wrap:wrap;gap:12px}
.event-qr-dialog .btn{min-width:48px;min-height:48px;white-space:normal;line-height:1.5;gap:8px}
.event-qr-dialog .btn svg{width:20px;height:20px;flex:none}

/**/
/**/
.app-access-art.app-install-symbol {
    width: 112px;
    height: 112px;
    aspect-ratio: 1;
    object-fit: contain;
    flex: 0 0 auto;
    border-radius: 24px;
}

.app-access-card .btn,
.app-access-guide summary {
    min-height: 3rem;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.5;
}

.app-access-guide summary {
    padding-block: 12px;
}

.app-access-card .btn {
    max-width: 100%;
    gap: 12px;
}

/**/
.app-access-card :is(#appInstallResult,#appAccessStatus):focus {
    outline: 3px solid var(--brand, #24593f);
    outline-offset: 4px;
    border-radius: 8px;
    scroll-margin-block: 5rem;
}

.home-tool[data-app-install] {
    min-height: 3rem;
    min-width: 0;
    gap: 12px;
}

.home-tool[data-app-install][hidden] {
    display: none;
}

/**/
.home-welcome .home-entry-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    min-width: 0;
}
.home-welcome .home-entry-actions .btn {
    width: 100%;
    min-width: 48px;
    min-height: 48px;
    height: auto;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
}
@media (max-width: 640px) {
    .home-welcome .home-entry-actions { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 400px) {
    .app-access-hero {
        align-items: flex-start;
    }
    .app-access-art.app-install-symbol {
        width: 72px;
        height: 72px;
        border-radius: 16px;
    }
}

/**/
/**/
.photo-import { min-width: 0; }
.photo-import p { word-break: keep-all; overflow-wrap: anywhere; }
.photo-import [data-import-items] { display: grid; gap: 12px; margin-block: 16px; }
.photo-import .field, .photo-import .input { min-width: 0; max-width: 100%; }
.photo-import input[type=file] { white-space: normal; width: 100%; }
/**/
.photo-import .photo-import-picker { position: relative; width: 100%; min-height: 3rem; cursor: pointer; }
.photo-import .photo-import-native { position: absolute; inset: -1px; width: calc(100% + 2px); height: calc(100% + 2px); opacity: 0; margin: 0; cursor: inherit; }
.photo-import .photo-import-picker:focus-within { outline: 3px solid #126c83; outline-offset: 3px; }
.photo-import .photo-import-picker:has(input:disabled) { cursor: default; opacity: .55; }
.photo-import [role=status] { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.photo-import .btn-row { display: flex; flex-wrap: wrap; gap: 12px; }
.photo-import .btn-row .btn { min-height: 48px; white-space: normal; }

/**/
/**/
.coworking-rules, .coworking-controls, .coworking-status { min-width: 0; margin-bottom: 1rem; }
.coworking-rules.card, .coworking-controls.card, .coworking-status.card { padding: 1.25rem; }
.coworking-rules dl { margin: 1rem 0; }
.coworking-rules dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--border, #d8e1d8); }
.coworking-rules dt, .coworking-rules dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.coworking-rules dt { font-weight: 600; }
.coworking-notes { white-space: pre-wrap; overflow-wrap: anywhere; }
.coworking-controls > .btn { margin-top: 1rem; }
.coworking-controls .form-error { overflow-wrap: anywhere; }
.coworking-policy-fields { display: grid; gap: 1rem; min-width: 0; }
.coworking-policy-fields textarea { min-height: 8rem; }
@media (min-width: 900px) { .coworking-policy-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/**/
/**/
.discovery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.discovery-card { color:var(--ink,#233e35); text-decoration:none; border:1px solid #dce3dc; background:#fafbf7; border-radius:20px; padding:22px; min-height:180px; display:grid; grid-template-columns:1fr auto; gap:12px; align-content:start; position:relative; transition:background-color .15s ease,border-color .15s ease; }
.discovery-card:hover { background:#f0f4eb; border-color:#8da48e; }
.discovery-card:focus-visible { outline:3px solid #426c50; outline-offset:4px; }
.discovery-icon { width:48px; height:48px; border-radius:14px; display:grid; place-items:center; background:#e6eddc; }
.discovery-icon svg { width:24px; height:24px; }
.discovery-state { align-self:start; font-size:.8rem; color:#536753; max-width:12em; overflow-wrap:anywhere; }
.discovery-card strong { grid-column:1/-1; font-size:1.15rem; }
.discovery-note { grid-column:1/-1; line-height:1.6; padding-right:26px; color:#59675c; font-size:.95rem; }
.discovery-arrow { position:absolute; bottom:20px; right:20px; }
.playground-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:24px; align-items:start; }
.playground-layout .room-visual { min-width:0; }
.playground-options { display:grid; gap:20px; min-width:0; }
.playground-options h2 { margin:0; }
/**/
.playground-choice-group { display:grid; gap:8px; min-width:0; }
.playground-choice-group > h3 { margin:0; font-size:.9375rem; font-weight:600; line-height:1.4; color:inherit; overflow-wrap:break-word; }
.playground-choices { display:flex; flex-wrap:wrap; gap:12px; }
.playground-choices button,.playground-options .btn,.space-playground .space3d-controls button { min-width:48px; min-height:48px; height:auto; white-space:normal; overflow-wrap:anywhere; }
.space-playground .space3d-controls { flex-wrap:wrap; gap:12px; }
.space-playground .space3d-character-controls,.space-playground .space3d-avatar-controls { flex-wrap:wrap; }
@media(max-width:900px) { .playground-layout { grid-template-columns:minmax(0,1fr); } .discovery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .discovery-grid { grid-template-columns:minmax(0,1fr); } .discovery-card { min-height:144px; padding:20px; } }
@media(prefers-reduced-motion:reduce) { .discovery-card { transition:none; } }

.space-playground .page-heading { display:block; }
.space-playground .page-heading .badge { display:inline-block; width:auto; max-width:100%; margin-bottom:16px; }
.space-playground .page-heading h1 { margin:0 0 16px; max-width:24ch; font-size:2rem; line-height:1.2; word-break:normal; overflow-wrap:break-word; hyphens:auto; }
.space-playground .page-heading p { max-width:60ch; line-height:1.7; }
.playground-options { padding:24px; }

.discovery-heading { display:block; }
.discovery-heading h1 { margin:12px 0 16px; line-height:1.25; overflow-wrap:break-word; hyphens:auto; }
.discovery-heading p { max-width:64ch; line-height:1.7; }

/**/
.space-playground .room-visual { position:relative; top:auto; }
.space-playground .space3d-canvas { height:clamp(350px,48svh,420px); }
/**/
.space-playground { padding-block-end:calc(120px + env(safe-area-inset-bottom, 0px)); }
.space-playground :is(button,a,canvas) { scroll-margin-block-end:calc(120px + env(safe-area-inset-bottom, 0px)); }

/**/
@media (orientation:landscape) and (min-width:680px) and (max-width:1049px) and (max-height:500px) {
  .space-playground .room-visual:has(> .space3d-canvas:not([hidden])) {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,220px); gap:12px; align-items:start;
  }
  .space-playground .room-visual:has(> .space3d-canvas:not([hidden])) > * { grid-column:1 / -1; min-width:0; }
  .space-playground .room-visual:has(> .space3d-canvas:not([hidden])) > .space3d-canvas { grid-column:1; grid-row:1; }
  .space-playground .room-visual:has(> .space3d-canvas:not([hidden])) > [data-space3d-controls]:not([hidden]) { grid-column:2; grid-row:1; margin:0; }
}
.space-playground [data-space3d-controls] { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.space-playground [data-space3d-controls][hidden],
.space-playground [data-demo-3d-settings-panel][hidden] { display:none; }
/**/
.space-playground .space3d-avatar-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-areas:". forward ." "left back right"; gap:12px; padding:0; border:0; min-width:0; }
.space-playground .space3d-avatar-controls .btn { width:100%; min-width:48px; min-height:48px; height:auto; flex-direction:column; gap:4px; white-space:normal; overflow-wrap:anywhere; }
.space-playground [data-space3d-action="avatar-forward"] { grid-area:forward; }
.space-playground [data-space3d-action="avatar-left"] { grid-area:left; }
.space-playground [data-space3d-action="avatar-back"] { grid-area:back; }
.space-playground [data-space3d-action="avatar-right"] { grid-area:right; }
.space-playground .space3d-avatar-controls > strong,
.space-playground .space3d-avatar-controls > p { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.metaverse-walk-actions,.metaverse-camera-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,7em),1fr)); gap:12px; min-width:0; }
.metaverse-walk-actions .btn,.metaverse-camera-options .btn { width:100%; min-width:48px; min-height:48px; word-break:keep-all; overflow-wrap:normal; }
.metaverse-view-settings { display:grid; gap:16px; border-top:1px solid var(--line); padding-block-start:16px; min-width:0; }
.metaverse-view-settings .space3d-character-controls { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,8em),1fr)); gap:12px; min-width:0; }
.metaverse-public-actions { display:flex; flex:1 0 100%; flex-wrap:wrap; gap:8px; margin:0; }
.metaverse-public-actions[hidden], .metaverse-public-actions .btn[hidden] { display:none; }
.metaverse-public-actions .btn { min-width:48px; min-height:48px; }
.metaverse-public-actions .btn:disabled { opacity:.55; cursor:not-allowed; }
.hotel-walk-active[data-space3d-swimming="true"] [data-public-gesture] { display:none; }
.hotel-walk-active[data-space3d-underwater="true"] > .space3d-canvas { filter: brightness(.82) saturate(1.24); }
.hotel-walk-active [data-pool-control-hint] { display:none; }
.metaverse-action-status:empty { display:none; }
/**/
.metaverse-view-modes { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:12px; min-width:0; }
.metaverse-view-modes[hidden] { display:none; }
.metaverse-view-modes .btn { flex:1 1 7em; }
.metaverse-view-modes [aria-pressed="true"] { box-shadow:inset 0 0 0 2px currentColor; }
.metaverse-hub-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:24px; align-items:center; padding:24px; margin-block:20px 28px; border:1px solid var(--line); border-radius:24px; background:var(--surface,#fff); }
.metaverse-hub-scene { min-width:0; overflow:hidden; border-radius:18px; background:var(--background,#f4f6ef); }
.metaverse-hub-scene svg { display:block; width:100%; height:auto; }
/**/
.metaverse-hub-scene img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.metaverse-hub-copy { min-width:0; }
.metaverse-hub-copy h2 { margin-block:16px 12px; line-height:1.2; }
.metaverse-hub-copy .btn { margin-block-start:8px; min-width:48px; min-height:48px; }
@media(max-width:720px) { .metaverse-hub-hero { grid-template-columns:minmax(0,1fr); padding:16px; gap:16px; } }


/**/
.metaverse-inspiration{margin:28px 0 0;max-width:720px}.metaverse-inspiration img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover;border-radius:18px}.metaverse-inspiration figcaption{margin-top:8px;font-size:.8125rem;line-height:1.5;color:var(--muted,#66736b)}

/**/
.hotel-scene-picker { margin-block:16px; }
.hotel-scene-picker h2 { margin-block:0 12px; }
.hotel-scene-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.hotel-scene-choice { display:grid; grid-template-rows:auto 1fr; align-content:start; padding:0; min-height:48px; min-width:0; border:2px solid var(--line); border-radius:16px; overflow:hidden; background:var(--surface,#fff); color:inherit; text-align:start; font:inherit; cursor:pointer; }
.hotel-scene-choice[aria-pressed="true"] { border-color:var(--primary,#476a53); box-shadow:0 0 0 2px var(--primary,#476a53); }
.hotel-scene-choice img,.hotel-scene-room-icon { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; background:#ede5d5; }
.hotel-scene-room-icon { display:grid; place-items:center; }
.hotel-scene-room-icon svg { width:48px; height:48px; }
.hotel-scene-choice strong { display:block; min-width:0; padding:12px; overflow-wrap:anywhere; }
.hotel-scene-choice:focus-visible { outline:3px solid var(--primary,#476a53); outline-offset:4px; }
.hotel-scene-current { font-weight:700; }
.space-playground [data-room-edit][hidden] { display:none; }
.space-playground .room-art>svg { display:block; width:100%; height:auto; }
@media(max-width:480px) {
  .hotel-scene-choices { grid-template-columns:minmax(0,1fr); }
  .hotel-scene-choice { grid-template-columns:100px minmax(0,1fr); grid-template-rows:auto; align-items:center; }
  .hotel-scene-room-icon svg { width:32px; height:32px; }
}

.playground-layout.hotel-sample-layout { grid-template-columns:minmax(0,1fr); }

/**/
.metaverse-hub-scene { margin:0; }
.metaverse-hub-scene img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
.metaverse-hub-scene figcaption { padding:8px 12px; font-size:.8125rem; line-height:1.5; color:var(--muted,#66736b); }
.hotel-scene-preview-label { display:block; margin-top:4px; font-size:.75em; font-weight:400; color:var(--muted,#66736b); }
.metaverse-inspiration { max-width:480px; }
.metaverse-inspiration img { height:auto; }
/**/
.shared-continuity-card{display:grid;gap:12px;margin:16px 0;min-width:0}
.shared-continuity-card[hidden]{display:none}
.shared-continuity-card h2,.shared-continuity-card p{margin:0;overflow-wrap:anywhere}
.continuity-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.continuity-actions .btn{min-width:48px;min-height:48px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:480px){.continuity-actions{flex-direction:column}.continuity-actions .btn{width:100%}}

/**/
.hotel-walk-bar[hidden] { display:none; }
body .space-playground .room-visual.hotel-walk-active {
  position:fixed; inset:0; z-index:10000; width:100%; height:100dvh;
  max-width:none; min-width:0; margin:0; padding:0; border:0; border-radius:0;
  display:block !important; overflow:auto; background:#222a24; isolation:isolate;
}
body .space-playground .hotel-walk-active > .space3d-canvas {
  position:absolute; inset:0; display:block; width:100%; height:100% !important;
  max-width:none; min-height:0; border-radius:0; touch-action:pinch-zoom;
}
.hotel-walk-active .hotel-walk-bar {
  position:absolute; z-index:3; top:0; left:0; right:0;
  padding:calc(8px + env(safe-area-inset-top, 0px)) calc(8px + env(safe-area-inset-right, 0px)) 8px calc(8px + env(safe-area-inset-left, 0px));
  display:flex; align-items:center; flex-wrap:wrap; gap:8px; color:#fff;
  background:linear-gradient(to bottom,rgba(24,35,29,.88),rgba(24,35,29,.45),transparent);
}
.hotel-walk-active .hotel-walk-example { flex:1 1 auto; font-size:.8rem; line-height:1.25; }
.hotel-walk-active .hotel-walk-places { display:flex; gap:8px; }
body .space-playground .hotel-walk-active :is(.hotel-walk-bar,.space3d-controls,.hotel-scene-experience) .btn {
  min-width:48px; min-height:48px; height:auto; padding:8px 10px; gap:6px;
  color:#203b30; background:#fffef8; border:1px solid #b3c4b1; border-radius:12px;
  white-space:normal; line-height:1.2;
}
.hotel-walk-active .hotel-walk-bar .btn[aria-pressed="true"] { box-shadow:inset 0 0 0 2px #356448; }
.hotel-walk-active :is(button,canvas,a):focus-visible { outline:3px solid #ffe2a0; outline-offset:3px; }
body .space-playground .hotel-walk-active [data-space3d-controls]:not([hidden]) {
  position:absolute; z-index:2; inset:0; display:block; margin:0; pointer-events:none;
}
.hotel-walk-active [data-space3d-controls] > * { pointer-events:auto; }
.hotel-walk-active .metaverse-action-status:not(:empty) {
  position:absolute; right:calc(10px + env(safe-area-inset-right, 0px));
  bottom:calc(160px + env(safe-area-inset-bottom, 0px));
  max-width:min(18rem,calc(100% - 20px)); margin:0; padding:8px 12px;
  border-radius:10px; background:#203b30; color:#fff; font-size:.875rem; line-height:1.35;
}
body .space-playground .hotel-walk-active .space3d-avatar-controls {
  position:absolute; left:calc(10px + env(safe-area-inset-left, 0px)); bottom:calc(10px + env(safe-area-inset-bottom, 0px));
  width:184px; grid-template-columns:repeat(3,56px); gap:8px;
}
body .space-playground .hotel-walk-active .space3d-avatar-controls .btn {
  min-width:48px; min-height:48px; padding:4px; font-size:.7rem;
  white-space:nowrap; overflow-wrap:normal; word-break:normal;
}
.hotel-walk-active .metaverse-walk-actions {
  position:absolute; right:calc(10px + env(safe-area-inset-right, 0px)); bottom:calc(10px + env(safe-area-inset-bottom, 0px));
  display:block; max-width:calc(100% - 214px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
}
.hotel-walk-active .metaverse-walk-actions > [data-space3d-action="close"] { display:none; }
.hotel-walk-active .metaverse-view-settings:not([hidden]) {
  position:absolute; z-index:4; right:calc(10px + env(safe-area-inset-right, 0px));
  bottom:calc(68px + env(safe-area-inset-bottom, 0px)); width:min(24rem,calc(100% - 20px));
  max-height:55%; overflow:auto; padding:16px; border:1px solid #b8c7b5; border-radius:16px;
  background:#fffef8; color:#203b30; box-shadow:0 8px 30px #15261e55;
}
.hotel-walk-active .hotel-scene-experience {
  position:absolute; z-index:2; right:calc(10px + env(safe-area-inset-right, 0px));
  bottom:calc(98px + env(safe-area-inset-bottom, 0px));
  max-width:calc(100% - 214px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
}
.hotel-walk-active .hotel-scene-experience .btn { width:100%; }
.hotel-walk-active:has([data-demo-3d-settings-panel]:not([hidden])) .hotel-scene-experience { visibility:hidden; }
@media (max-height:420px) {
  .hotel-walk-active .hotel-walk-example { display:none; }
  body .space-playground .hotel-walk-active .space3d-avatar-controls { bottom:calc(6px + env(safe-area-inset-bottom, 0px)); }
  .hotel-walk-active .metaverse-view-settings:not([hidden]) { max-height:48%; }
}

/**/
.app-frame {
  --residence-paper:#fffef9;
  --residence-soft:#f0f0e7;
  --residence-line:#d9d9ca;
  --residence-ink:#30372e;
  --residence-action:#46543d;
}
body { background:#f8f6ef; color:#30372e; }
.app-frame .app-header { background:#f8f6ef; border-color:#deded1; }
.app-frame .brand-mark { background:#596148; box-shadow:none; }
.app-frame .brand-name { color:#30372e; letter-spacing:.1em; }
.app-frame .brand-sub { color:#5d6558; }
.app-frame .header-actions .icon-btn { min-width:48px; min-height:48px; background:transparent; border-color:#d7d9cb; box-shadow:none; }
.app-frame .shell { background:transparent; }
.app-frame .home-welcome {
  position:relative; isolation:isolate; overflow:hidden;
  display:grid; grid-template-columns:minmax(0,1fr); gap:0;
  min-height:clamp(380px,42vw,530px); padding:clamp(24px,5vw,56px);
  border:0; border-radius:4px; background:#424d3d;
  color:#fffdf5; align-content:end;
}
.app-frame .home-welcome .residence-hero-image {
  position:absolute; inset:0; z-index:-2; width:100%; height:100%;
  object-fit:cover;
}
.app-frame .home-welcome::after {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(90deg,rgba(21,32,23,.9) 0%,rgba(21,32,23,.72) 48%,rgba(21,32,23,.25) 100%);
}
.app-frame .home-welcome .editorial-copy { padding:0; max-width:40rem; }
.app-frame .home-welcome .eyebrow { color:#f2e9d3; white-space:normal; }
.app-frame .home-welcome .editorial-copy h1 { color:#fffdf5; max-width:16ch; font-size:clamp(2rem,4vw,3.4rem); line-height:1.2; }
.app-frame .home-welcome .editorial-copy p { color:#fffdf5; max-width:38rem; line-height:1.7; }
.app-frame .residence-art-caption { display:block; margin-top:8px; color:#f2e9d3; }
.app-frame .home-welcome .hero-actions { margin-top:24px; position:relative; width:100%; }
.app-frame .home-welcome .hero-actions .btn { min-height:48px; border-radius:3px; white-space:normal; }
.app-frame .home-welcome .hero-actions .btn-primary { background:#f8f6ef; border-color:#f8f6ef; color:#30372e; }
.app-frame .home-welcome .hero-actions .btn-secondary { background:#303b30; border-color:#f8f6ef; color:#fffdf5; }
.app-frame .home-welcome .hero-actions .btn:hover { box-shadow:inset 0 0 0 2px #d3c49c; }
.app-frame :is(.hub-tile,.home-tool,.category-tile,.discovery-card) { border-color:#d9d9ca; background:#fffef9; box-shadow:none; }
.app-frame .discovery-card:hover { border-color:#7b856c; background:#f0f0e7; }
.app-frame :is(.hub-icon,.home-tool-icon) { background:#eceee2; color:#46543d; }
.app-frame .time-summary { border-color:#d9d9ca; background:#f0f0e7; box-shadow:none; }
.app-frame .section-head h2 { color:#30372e; }
.app-frame .bottom-nav { background:#f8f6ef; border-color:#d9d9ca; box-shadow:0 8px 28px #30372e1a; }
.app-frame .bottom-nav .nav-btn { color:#424c3c; }
.app-frame .bottom-nav .nav-btn:is(.active,[aria-current="page"]) { background:#e3e8d9; color:#263624; }
.app-frame :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid #9a6c1b; outline-offset:3px; }
.app-frame .home-welcome :is(button,a):focus-visible { outline-color:#fff; }
@media (max-width:700px) {
  .app-frame .header-inner { gap:4px; }
  .app-frame .header-actions { gap:0; }
  .app-frame .home-welcome { min-height:400px; padding:24px; }
  .app-frame .home-welcome::after { background:linear-gradient(0deg,rgba(21,32,23,.94),rgba(21,32,23,.72) 58%,rgba(21,32,23,.18)); }
  .app-frame .home-welcome .editorial-copy h1 { font-size:clamp(1.8rem,8vw,2.5rem); }
  .app-frame .home-welcome .hero-actions .btn { flex:1 1 9rem; }
}
@media (max-width:380px) {
  .app-frame .header-inner { padding-inline:10px; }
  .app-frame .brand-name { font-size:.7rem; letter-spacing:.04em; }
  .app-frame .home-welcome { padding:20px; }
}
@media (prefers-reduced-motion:reduce) {
  .app-frame .home-welcome * { transition:none; }
}

/**/
.app-frame .detail-hero { align-items:start; gap:clamp(14px,2.5vw,28px); }
.app-frame .detail-hero > .detail-media {
  min-width:0;
  min-height:0;
  height:auto;
  border-radius:18px;
  background:var(--residence-soft);
}
.app-frame .detail-hero > .detail-media img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:cover;
}
.app-frame .detail-hero > .detail-panel,
.app-frame .plan-layout > :is(.plan-card,.plan-summary) {
  min-width:0;
  padding:clamp(16px,3vw,28px);
  border:1px solid var(--residence-line);
  border-radius:18px;
  background:var(--residence-paper);
  color:var(--residence-ink);
  box-shadow:none;
  overflow-wrap:anywhere;
}
.app-frame .detail-panel h1 { line-height:1.22; text-wrap:balance; }
.app-frame .detail-panel :is(.fact,.detail-conditions),
.app-frame .plan-summary .price-line.total {
  background:var(--residence-soft);
  border-color:var(--residence-line);
}
.app-frame .detail-panel .slot-options {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,8.25rem),1fr));
}
.app-frame .detail-panel .slot-choice {
  min-width:0;
  min-height:48px;
  white-space:normal;
  border-color:var(--residence-line);
}
.app-frame .detail-panel .slot-choice.active:not(:disabled) {
  background:var(--residence-action);
  border-color:var(--residence-action);
  color:#fff;
}
.app-frame :is(.detail-panel,.plan-summary) .btn-primary:not(:disabled) {
  background:var(--residence-action);
  border-color:var(--residence-action);
  color:#fff;
}
.app-frame :is(.detail-panel,.plan-summary) .btn,
.app-frame .plan-summary .check-label { min-height:48px; }
.app-frame .plan-layout .plan-line { border-color:#c0c9b4; }
.app-frame .plan-layout .plan-time { color:var(--residence-action); }
.app-frame .plan-summary .price-line.total {
  padding:12px 14px;
  border-radius:12px;
  gap:8px;
  flex-wrap:wrap;
}
@media (max-width:760px) {
  .app-frame .plan-layout { grid-template-columns:minmax(0,1fr); }
  .app-frame .plan-layout > .plan-summary { position:static; }
}

/**/
.app-frame .discovery-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.app-frame .discovery-card {
  min-width:0;
  min-height:136px;
  grid-template-columns:72px minmax(0,1fr) 20px;
  grid-template-rows:auto auto 1fr;
  gap:5px 18px;
  align-items:start;
  padding:20px;
  border-radius:10px;
}
.app-frame .discovery-icon {
  grid-area:1 / 1 / 4 / 2;
  align-self:center;
  width:72px;
  height:80px;
  border-radius:7px;
  background:#e9eddf;
  color:#46543d;
}
.app-frame .discovery-icon svg { width:28px; height:28px; }
.app-frame .discovery-state {
  grid-area:1 / 2;
  max-width:none;
  color:#52644e;
  font-size:.75rem;
  line-height:1.4;
}
.app-frame .discovery-card strong {
  grid-area:2 / 2;
  min-width:0;
  font-size:1.08rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.app-frame .discovery-note {
  grid-area:3 / 2;
  min-width:0;
  max-width:38ch;
  padding:0;
  font-size:.875rem;
  line-height:1.55;
}
.app-frame .discovery-arrow {
  position:static;
  grid-area:1 / 3 / 4 / 4;
  align-self:center;
  color:#52644e;
}
@media (max-width:700px) {
  .app-frame .discovery-grid { grid-template-columns:minmax(0,1fr); gap:10px; }
  .app-frame .discovery-card {
    min-height:120px;
    grid-template-columns:56px minmax(0,1fr) 18px;
    gap:4px 14px;
    padding:16px;
  }
  .app-frame .discovery-icon { width:56px; height:64px; }
  .app-frame .discovery-icon svg { width:24px; height:24px; }
}

/**/
.app-frame .detail-panel .slot-options { display:flex; flex-wrap:wrap; gap:10px; }
.app-frame .detail-panel .slot-choice { min-width:48px; min-height:48px; white-space:normal; line-height:1.35; }
.app-frame .detail-panel .slot-choice:focus-visible,
.app-frame .plan-layout :is(button,input):focus-visible,
.app-frame .pass-card button:focus-visible { outline:3px solid #8a6c32; outline-offset:3px; }
.app-frame .detail-panel .slot-choice:disabled { opacity:.55; cursor:not-allowed; }
.app-frame .booking-conditions { gap:12px; margin-block:18px; }
.app-frame .booking-condition { background:#fafaf5; border-color:#d5ddce; padding:clamp(16px,2vw,22px); }
.app-frame .booking-condition-deadline { display:grid; gap:4px; border-top-color:#d5ddce; }
.app-frame .booking-condition-deadline time { color:#294f3c; font-weight:700; }
.app-frame .plan-layout > * { min-width:0; }
.app-frame .plan-summary .btn, .app-frame .pass-actions .btn { min-width:48px; min-height:48px; white-space:normal; line-height:1.35; }
.app-frame .pass-actions { grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr)); }
.app-frame .plan-line h3, .app-frame .booking-condition h3 { overflow-wrap:anywhere; }
@media (max-width:520px) {
  .app-frame .detail-panel .slot-choice { flex:1 1 9rem; }
  .app-frame .pass-actions { grid-template-columns:minmax(0,1fr); }
}

/**/
.booking-find-card {
  display:grid; gap:16px; min-width:0; padding:clamp(18px,3vw,28px);
  border:1px solid var(--residence-line,#d9d9ca); background:var(--residence-paper,#fffef9);
}
.booking-find-card :is(h1,h2,h3,p) { margin:0; overflow-wrap:anywhere; }
.booking-find-card :is(h1,h2,h3) { line-height:1.3; }
.booking-find-note { max-width:60ch; color:var(--muted,#59675c); line-height:1.6; }
.booking-find-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:stretch; min-width:0; }
.booking-find-actions :is(a,button) {
  min-width:48px; min-height:48px; height:auto; white-space:normal;
  overflow-wrap:anywhere; line-height:1.4;
}
.booking-find-actions :is(a,button):focus-visible { outline:3px solid #426c50; outline-offset:3px; }
@media (max-width:480px) {
  .booking-find-actions { display:grid; grid-template-columns:minmax(0,1fr); }
  .booking-find-actions :is(a,button) { width:100%; }
}

/**/
body .app-frame .category-tile {
  min-width:0;
  min-height:88px;
  border-radius:6px;
  border-color:#d9d9ca;
  background:#fffef9;
  color:#30372e;
  box-shadow:none;
  transition:background-color .18s ease, border-color .18s ease;
}
body .app-frame .category-tile .card-icon {
  border-radius:4px;
  background:#eceee2;
  color:#46543d;
}
body .app-frame .category-tile:hover {
  background:#f0f1e8;
  border-color:#7b856c;
  transform:none;
}
body .app-frame .category-tile:focus-visible,
.app-frame .discovery-card:focus-visible {
  outline:3px solid #8a6c32;
  outline-offset:3px;
}
.app-frame .discovery-card {
  border-radius:6px;
  transition:background-color .18s ease, border-color .18s ease;
}
.app-frame .discovery-icon { border-radius:4px; }
.app-frame .discovery-card strong { color:#30372e; }
.app-frame .discovery-card:hover .discovery-arrow { color:#263624; }
@media (max-width:480px) {
  body .app-frame .category-tile { min-height:80px; padding:14px; }
}
@media (prefers-reduced-motion:reduce) {
  body .app-frame .category-tile,
  .app-frame .discovery-card { transition:none; }
}

.app-frame .pass-line [data-pass-arrival] {
    margin-block: 10px 14px;
    padding: 10px 12px;
    border-inline-start: 2px solid #658b7a;
    background: #eef4f0;
    color: #25483a;
    overflow-wrap: anywhere;
}
.app-frame .pass-line [data-pass-arrival="checked-in"] {
    border-inline-start-color: #55794d;
    color: #294b29;
}

/**/
/**/
.production-rules,.production-controls,.production-status {min-width:0;margin-bottom:1rem;}
.production-rules.card,.production-controls.card,.production-status.card {padding:1.25rem;}
.production-rules dl {margin:1rem 0;}
.production-rules dl>div {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border,#d8e1d8);}
.production-rules dt,.production-rules dd {margin:0;min-width:0;overflow-wrap:anywhere;}
.production-rules dt {font-weight:600;}
.production-notes {white-space:pre-wrap;overflow-wrap:anywhere;}
.production-controls>.btn {margin-top:1rem;}
.production-policy-fields {display:grid;gap:1rem;min-width:0;}
.production-policy-fields textarea {min-height:7rem;resize:vertical;}
.production-policy-fields label {min-width:0;}
.production-controls .form-error {overflow-wrap:anywhere;}
@media(min-width:900px){.production-policy-fields {grid-template-columns:repeat(2,minmax(0,1fr));}}

/**/
/**/
#luggageVisit {
    display: grid;
    gap: 16px;
    min-width: 0;
}
#luggageVisit .card { min-width: 0; }
#luggageVisit [data-luggage-booked-guide] { padding: 1.25rem; }
#luggageVisit h2,
#luggageVisit p { overflow-wrap: anywhere; }

#luggagePrepareForm .btn-row,
.luggage-detail .btn-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
#luggagePrepareForm .btn-row > button,
.luggage-detail .btn-row > button {
    flex: 1 1 120px;
    min-height: 48px;
    white-space: normal;
}

/**/
#luggagePrepareForm .btn-row > button {
    flex-basis: 8.5rem;
    min-width: min(100%, 8.5rem);
    word-break: keep-all;
    overflow-wrap: normal;
}
/**/
.luggage-detail {
    display: grid;
    gap: 16px;
    min-width: 0;
    padding: 24px;
}
.luggage-detail h3,
.luggage-detail p {
    margin: 0;
    overflow-wrap: anywhere;
}
.luggage-detail [data-luggage-booked-guide] {
    display: grid;
    gap: 12px;
}
.luggage-detail [data-luggage-booked-guide] [lang] {
    display: grid;
    gap: 6px;
    min-width: 0;
}
.luggage-facts {
    margin: 0;
    display: grid;
    gap: 12px;
}
.luggage-facts > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
}
.luggage-facts dt,
.luggage-facts dd {
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
}
.luggage-list { display: grid; gap: 12px; }
.luggage-list > button {
    display: grid;
    gap: 6px;
    min-width: 0;
    min-height: 48px;
    padding: 20px;
    text-align: left;
    overflow-wrap: anywhere;
}
/**/
@media (max-width: 600px) {
    #luggagePrepareForm { padding-inline: 16px; }
    #luggagePrepareForm .check-label { gap: 8px; }
}
@media (max-width: 600px) {
    .luggage-detail { padding: 20px; }
    .luggage-facts > div {
        grid-template-columns: minmax(0, 1fr);
        gap: 4px;
    }
}
