@font-face{font-family:Petit Formal Script;font-style:normal;font-display:swap;font-weight:400;src:url(../media/petit-formal-script-latin-ext-400-normal.1rszqnslvm5u1.woff2)format("woff2"),url(../media/petit-formal-script-latin-ext-400-normal.35nrxk8bf8wtk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Petit Formal Script;font-style:normal;font-display:swap;font-weight:400;src:url(../media/petit-formal-script-latin-400-normal.41tu8wevj08jd.woff2)format("woff2"),url(../media/petit-formal-script-latin-400-normal.2nb_7_xgzdsxz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-ext-400-normal.3jvet3qmpe_np.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-400-normal.3h3676at96nns.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-400-normal.1kar6y_w7xc92.woff2)format("woff2"),url(../media/manrope-cyrillic-400-normal.2ow5pljymqch1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-greek-400-normal.3ndh7452icn1t.woff2)format("woff2"),url(../media/manrope-greek-400-normal.010saykxxeioc.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-vietnamese-400-normal.3twqkh3lr93h-.woff2)format("woff2"),url(../media/manrope-vietnamese-400-normal.3o_jvyozxy7do.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-ext-400-normal.3kpz2pq12o9y7.woff2)format("woff2"),url(../media/manrope-latin-ext-400-normal.3dacdzxdo3dh1.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-400-normal.2xa18tgv2np2i.woff2)format("woff2"),url(../media/manrope-latin-400-normal.16uzrbq5-8z5v.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-ext-500-normal.2kuwqy2x2_kvx.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-500-normal.0xr2oo9ws-j-l.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-500-normal.2j2me72v6wy09.woff2)format("woff2"),url(../media/manrope-cyrillic-500-normal.1snb6zl_nhipa.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-greek-500-normal.3fllgi463pg36.woff2)format("woff2"),url(../media/manrope-greek-500-normal.44ok24c-hm52c.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-vietnamese-500-normal.2rmwx81er-1wg.woff2)format("woff2"),url(../media/manrope-vietnamese-500-normal.3j-azu-_-g81b.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-ext-500-normal.2m4b1kv6exkn9.woff2)format("woff2"),url(../media/manrope-latin-ext-500-normal.09w2uqje_gnk0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-500-normal.23dhs730snm70.woff2)format("woff2"),url(../media/manrope-latin-500-normal.1uxcnzel4f8qj.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-ext-600-normal.2c5msalb399p0.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-600-normal.15dz_0yvxte-y.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-600-normal.2dlkzm0g6c5lw.woff2)format("woff2"),url(../media/manrope-cyrillic-600-normal.2lp-6i5mhw61k.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-greek-600-normal.36n2ro-k8135v.woff2)format("woff2"),url(../media/manrope-greek-600-normal.2cdz12dc1iljx.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-vietnamese-600-normal.44s_uvku5lu7o.woff2)format("woff2"),url(../media/manrope-vietnamese-600-normal.04ryp5-ejuw11.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-ext-600-normal.0rboslp6omgc3.woff2)format("woff2"),url(../media/manrope-latin-ext-600-normal.2dnw-ugx_s-0m.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-600-normal.2ybi4mo9-3upl.woff2)format("woff2"),url(../media/manrope-latin-600-normal.0d_nc7hu7m8km.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#29291f;--muted:#68675d;--paper:#f8f4e9;--surface:#fffdf7;--line:#d7d0bf;--green:#5f8a2f;--green-dark:#3f6a1c;--green-pale:#e4f0d2;--ochre:#e0a51f;--ochre-dark:#9a6908;--ochre-pale:#fbecbe;--plum:#70455c;--danger:#9b3030;--shadow:0 18px 45px #332d1c1c;--heading:"Petit Formal Script", "Segoe Print", cursive;--body:"Manrope", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--body);margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}h1,h2,h3{font-family:var(--heading);text-wrap:balance;font-weight:400;line-height:1.05}p{line-height:1.65}.shell{width:min(1180px,100% - 40px);margin:0 auto}.site-header{z-index:20;border-bottom:1px solid color-mix(in srgb, var(--line) 75%, transparent);background:color-mix(in srgb, var(--paper) 91%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:30px;min-height:70px;padding:10px max(20px,50vw - 590px);display:flex;position:sticky;top:0}.brand{font-family:var(--heading);align-items:center;gap:10px;margin-right:auto;font-size:22px;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--plum);width:34px;height:34px;color:var(--plum);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.site-header nav{gap:26px;font-size:13px;display:flex}.site-header nav a{text-decoration:none}.site-header nav a:hover{color:var(--green-dark)}.button{border:1px solid var(--ink);min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 19px;font-weight:600;text-decoration:none;display:inline-flex}.button:disabled{opacity:.48;cursor:not-allowed}.button-primary{border-color:var(--green);background:var(--green);color:#fff}.button-primary:hover:not(:disabled){background:var(--green-dark)}.button-secondary{border-color:var(--line);background:var(--surface)}.button-quiet{border-color:#0000}.inline-action{color:var(--green-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.button-danger{border-color:var(--danger);color:var(--danger)}.eyebrow{color:var(--green-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:600;display:block}.temp-badge{border:1px dashed var(--ochre-dark);background:var(--ochre-pale);color:#76520b;letter-spacing:.08em;text-transform:uppercase;border-radius:3px;align-items:center;gap:6px;padding:5px 8px;font-size:10px;font-weight:600;display:inline-flex}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(40px,5vw,72px);min-height:calc(100vh - 70px);padding:60px 0;display:grid}.hero-copy h1{letter-spacing:-.025em;max-width:9.4ch;margin:0 0 22px;font-size:clamp(48px,5.6vw,78px);font-weight:400}.hero-copy h1 em{color:var(--green-dark);font-style:normal}.hero-copy p{max-width:620px;color:var(--muted);margin:0 0 28px;font-size:17px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-aside{align-self:center;height:420px;min-height:420px}.hero-photo{background:var(--green-pale);border-radius:36px 36px 8px 8px;position:relative;overflow:hidden}.hero-photo img{object-fit:cover;object-position:center 52%}.temp-image{color:#6c624e;text-align:center;background:linear-gradient(145deg,#e8e2d2,#faf5e8 55%,#dfe9ce);border:1px dashed #a99d82;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:290px;padding:30px;display:flex}.temp-image span{font-family:var(--heading);font-size:22px}.temp-image small{letter-spacing:.07em;max-width:32ch;font-size:10px;line-height:1.5}.hero-aside.temp-image{border-radius:36px 36px 8px 8px;min-height:420px}.section{padding:90px 0}.section-soft{background:var(--green-pale);border-radius:12px;padding:76px clamp(24px,4vw,54px)}.section-title{margin:0 0 38px;font-size:clamp(38px,5vw,58px)}.steps{counter-reset:steps;grid-template-columns:repeat(4,1fr);gap:28px;display:grid}.step{border-top:2px solid var(--green);counter-increment:steps;padding-top:16px}.step:before{content:"0" counter(steps);color:var(--plum);font-family:var(--heading);margin-bottom:12px;font-size:34px;display:block}.step h3{margin:0 0 8px;font-size:23px}.step p{color:var(--muted);margin:0;font-size:14px}.package-grid{border:1px solid var(--line);background:var(--surface);grid-template-columns:1fr 1fr;display:grid}.package{min-height:390px;padding:clamp(28px,5vw,56px)}.package+.package{border-left:1px solid var(--line)}.package-number{color:var(--green-dark);font-family:var(--heading);font-size:66px}.package h3{margin:10px 0;font-size:34px}.package p{color:var(--muted)}.package ul{padding:0;list-style:none}.package li{border-bottom:1px solid var(--line);padding:9px 0;font-size:14px}.formula{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:1px;margin-top:20px;display:grid}.formula>div{background:var(--paper);padding:20px}.formula strong{font-family:var(--heading);margin-bottom:5px;font-size:24px;font-weight:400;display:block}.gallery-line{grid-template-columns:1.4fr .8fr .8fr;gap:16px;display:grid}.gallery-line .temp-image:first-child{min-height:470px}.truth-note{color:var(--muted);margin-top:15px;font-size:12px}.faq{max-width:820px}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-family:var(--heading);cursor:pointer;padding:20px 0;font-size:23px;font-weight:400}.faq p{color:var(--muted);margin:-5px 0 20px}.contact-band{background:var(--ochre-pale);border-radius:12px;grid-template-columns:1fr 1fr;gap:50px;padding:58px;display:grid}.contact-band h2{margin:0;font-size:48px}.contact-form{gap:14px;display:grid}.field{align-content:start;gap:7px;display:grid}.field label,.label{font-size:12px;font-weight:600}.field input,.field select,.field textarea,.input{width:100%;min-height:46px;color:var(--ink);background:#fffef9;border:1px solid #bdb5a3;border-radius:5px;padding:11px 12px}.field>select{align-self:start;height:46px}.field textarea{resize:vertical;min-height:120px}.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea,.field.is-invalid .address-input-wrap input{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 16%, transparent)}.admin-private-notes{background:#76506412;border:1px solid #76506461;border-radius:5px;grid-column:1/-1;margin:0;padding:18px}.admin-private-notes legend{color:var(--plum);padding:0 8px;font-weight:700}.admin-private-notes label{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.admin-private-notes textarea{width:100%;min-height:120px;color:var(--ink);resize:vertical;background:#fffef9;border:1px solid #bdb5a3;border-radius:5px;padding:11px 12px}.field small{color:var(--muted);font-size:11px;line-height:1.45}.availability-calendar{border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.availability-calendar>legend{margin-bottom:8px}.availability-calendar-frame{border:1px solid #bdb5a3;border-top:3px solid var(--green);background:#fffef9;border-radius:5px;flex-direction:column;flex:1;padding:clamp(16px,3vw,26px);display:flex}.availability-calendar-heading{grid-template-columns:42px 1fr 42px;align-items:center;gap:14px;margin-bottom:18px;display:grid}.availability-calendar-heading>div{text-align:center;gap:3px;display:grid}.availability-calendar-heading strong{font-family:var(--heading);font-size:clamp(24px,3vw,31px);font-weight:400;line-height:1.1}.availability-calendar-heading small{color:var(--muted);font-size:11px;line-height:1.35}.availability-calendar-heading button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:border-color .14s,background .14s;display:grid}.availability-calendar-heading button:hover:not(:disabled){border-color:var(--green);background:var(--green-pale)}.availability-calendar-heading button:disabled{opacity:.28;cursor:not-allowed}.availability-calendar-weekdays,.availability-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.availability-calendar-weekdays{color:var(--muted);letter-spacing:.04em;text-align:center;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:700}.availability-calendar-weekdays span{padding:5px 0}.availability-calendar-grid{flex:1;align-content:stretch;min-height:328px}.availability-calendar-grid button{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:58px;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:4px;align-content:center;place-items:center;padding:8px 4px;font-size:16px;transition:border-color .14s,background .14s,color .14s,transform .14s;display:grid;position:relative}.availability-calendar-grid button[data-status=laisva]{border-color:color-mix(in srgb, var(--green) 45%, var(--line))}.availability-calendar-grid button[data-status=laisva]:hover{border-color:var(--green);background:var(--green-pale);transform:translateY(-1px)}.availability-calendar-grid button[data-status=užimta]{color:#77746d;background:#e8e7e2;border-color:#d6d3cc}.availability-calendar-grid button[data-status=nepasiekiama]{color:#aaa69b;background:0 0;border-color:#0000}.availability-calendar-grid button.today:not(.selected){box-shadow:inset 0 0 0 1px var(--ochre-dark)}.availability-calendar-grid button.selected{border-color:var(--green-dark);background:var(--green);color:#fff;box-shadow:inset 0 0 0 2px var(--surface);font-weight:700}.availability-calendar-grid button:disabled{cursor:not-allowed}.availability-calendar-grid.loading button{opacity:.44}.availability-calendar-footer{justify-content:space-between;align-items:center;gap:16px;min-height:28px;margin-top:14px;display:flex}.availability-calendar-legend{color:var(--muted);flex-wrap:wrap;gap:13px;font-size:10px;display:flex}.availability-calendar-legend span{align-items:center;gap:5px;display:inline-flex}.availability-calendar-legend i{border:1px solid var(--line);background:0 0;border-radius:2px;width:13px;height:10px}.availability-calendar-legend i.free{border-color:color-mix(in srgb, var(--green) 55%, var(--line));background:var(--surface)}.availability-calendar-legend i.busy{background:#e8e7e2;border-color:#d6d3cc}.availability-calendar-legend i.unavailable{border-style:dashed}.availability-calendar-message,.availability-calendar-retry{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:inline-flex}.availability-calendar-retry{color:var(--danger);cursor:pointer;background:0 0;border:0;padding:5px 0;font-weight:600}.schedule-planner{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:stretch;gap:18px;min-width:0;display:grid}.schedule-planner .availability-calendar-grid{min-height:294px}.schedule-planner .availability-calendar-grid button{min-height:52px}.is-invalid-date .availability-calendar-frame,.is-invalid-time .day-timeline{border-color:var(--danger);border-top-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 12%, transparent)}.day-timeline-field{flex-direction:column;min-width:0;display:flex}.day-timeline-field>.label{margin-bottom:8px}.day-timeline{--slot-height:24px;border:1px solid #bdb5a3;border-top:3px solid var(--plum);background:#fffef9;border-radius:5px;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.day-timeline.has-conflict{border-top-color:var(--danger)}.day-timeline-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:14px 18px;display:flex}.day-timeline-heading>div{gap:4px;display:grid}.day-timeline-heading strong{font-family:var(--heading);font-size:23px;font-weight:400;line-height:1.08}.day-timeline-heading>svg{color:var(--plum)}.day-timeline-hint{border-bottom:1px solid var(--line);min-height:32px;color:var(--muted);letter-spacing:.025em;text-transform:uppercase;margin:0;padding:9px 18px;font-size:9px;font-weight:600}.day-timeline-conflict{border-bottom:1px solid color-mix(in srgb, var(--danger) 30%, var(--line));color:#722121;background:#fbe8e4;align-items:center;gap:8px;min-height:44px;padding:8px 14px;font-size:10px;font-weight:600;line-height:1.35;display:flex}.day-timeline-conflict svg{flex:none}.day-timeline.override-conflict{border-top-color:var(--ochre)}.day-timeline.override-conflict .day-timeline-conflict{border-bottom-color:color-mix(in srgb, var(--ochre) 42%, var(--line));background:var(--ochre-pale);color:#62450d}.day-timeline-body{flex:1;grid-template-columns:54px minmax(0,1fr);align-content:center;padding:12px 14px 18px 8px;display:grid}.day-timeline-hours{height:calc(var(--slot-height) * 17);grid-template-rows:repeat(17, var(--slot-height));color:var(--muted);font-variant-numeric:tabular-nums;font-size:9px;display:grid;position:relative}.day-timeline-hours span{text-align:right;padding-right:8px;transform:translateY(-5px)}.day-timeline-hours span:last-child{position:absolute;bottom:-5px;right:0;transform:none}.day-timeline-grid{height:calc(var(--slot-height) * 17);grid-template-rows:repeat(17, var(--slot-height));border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;display:grid}.day-timeline-grid.dragging{cursor:ns-resize}.day-timeline-grid.dragging.move{cursor:grabbing}.day-timeline-grid>div{border-top:1px solid var(--line);background:color-mix(in srgb, var(--green-pale) 24%, var(--surface));outline:0;min-width:0;transition:background .1s,box-shadow .1s;position:relative}.day-timeline-grid>div.free:not(.selected):hover,.day-timeline-grid>div.free:not(.selected):focus-visible{z-index:1;background:color-mix(in srgb, var(--green-pale) 68%, var(--surface));box-shadow:inset 0 0 0 2px var(--green)}.day-timeline-grid>div.busy{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--plum) 12%, var(--surface)) 0 6px, color-mix(in srgb, var(--plum) 6%, var(--surface)) 6px 12px);cursor:not-allowed}.day-timeline.allow-unavailable .day-timeline-grid>div.busy{cursor:crosshair}.day-timeline.allow-unavailable .day-timeline-grid>div.busy:not(.selected):hover,.day-timeline.allow-unavailable .day-timeline-grid>div.busy:not(.selected):focus-visible{z-index:1;box-shadow:inset 0 0 0 2px var(--ochre)}.day-timeline-grid>div.unavailable{background:color-mix(in srgb, #cbc6ba 16%, var(--surface));cursor:not-allowed}.day-timeline-grid>div.selected{z-index:2;border-top-color:color-mix(in srgb, var(--green-dark) 45%, transparent);background:color-mix(in srgb, var(--green) 78%, var(--surface));box-shadow:inset 3px 0 0 var(--green-dark), inset -1px 0 0 var(--green-dark)}.day-timeline-grid>div.selected:has(+div:not(.selected)){box-shadow:inset 3px 0 0 var(--green-dark), inset -1px 0 0 var(--green-dark), inset 0 -2px 0 var(--green-dark)}.day-timeline-grid>div.selected:not(.conflict){cursor:grab}.day-timeline-grid>div.selected:focus-visible{outline:2px solid var(--ochre);outline-offset:-4px}.day-timeline-grid>div.selected.conflict{border-top-color:color-mix(in srgb, var(--danger) 45%, transparent);background:color-mix(in srgb, var(--danger) 82%, var(--surface));cursor:not-allowed;box-shadow:inset 3px 0 #722121,inset -1px 0 #722121}.day-timeline-grid>div.selected.conflict:has(+div:not(.selected)){box-shadow:inset 3px 0 #722121,inset -1px 0 #722121,inset 0 -2px #722121}.day-timeline.override-conflict .day-timeline-grid>div.selected.conflict{border-top-color:color-mix(in srgb, var(--ochre) 55%, transparent);background:color-mix(in srgb, var(--ochre) 82%, var(--surface));cursor:grab;box-shadow:inset 3px 0 #76520e,inset -1px 0 #76520e}.day-timeline.override-conflict .day-timeline-grid>div.selected.conflict:has(+div:not(.selected)){box-shadow:inset 3px 0 #76520e,inset -1px 0 #76520e,inset 0 -2px #76520e}.day-timeline-selection-label{z-index:3;color:#fff;text-overflow:ellipsis;text-shadow:0 1px 1px color-mix(in srgb, var(--green-dark) 70%, transparent);white-space:nowrap;pointer-events:none;align-items:center;gap:3px;font-size:10px;font-weight:700;line-height:1.25;display:flex;position:absolute;top:4px;left:7px;right:6px;overflow:hidden}.day-timeline-selection-label svg{flex:none}.day-timeline-resize-handle{z-index:5;color:#fff;cursor:ns-resize;touch-action:none;background:0 0;border:0;place-items:center;height:11px;padding:0;display:grid;position:absolute;bottom:-5px;left:3px;right:3px}.day-timeline-resize-handle span{background:currentColor;border-radius:999px;width:32px;height:3px;display:block;box-shadow:0 1px 2px #29291f59}.day-timeline-resize-handle:hover span,.day-timeline-resize-handle:focus-visible span{background:var(--ochre-pale);width:40px}.day-timeline-resize-handle:focus-visible{outline:2px solid var(--ochre);outline-offset:1px}.day-timeline-busy-label{color:color-mix(in srgb, var(--plum) 78%, var(--ink));letter-spacing:.03em;text-transform:uppercase;pointer-events:none;font-size:9px;font-weight:700;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.day-timeline-unavailable-label{color:#928e84;letter-spacing:.02em;text-transform:uppercase;pointer-events:none;font-size:8px;font-weight:600;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.day-timeline-empty{min-height:0;color:var(--muted);text-align:center;flex:1;place-content:center;justify-items:center;gap:8px;padding:26px;display:grid}.day-timeline-empty svg{color:var(--plum)}.day-timeline-empty strong{color:var(--ink);font-family:var(--heading);font-size:22px;font-weight:400}.day-timeline-empty span{max-width:220px;font-size:11px;line-height:1.5}.day-timeline-empty button{border:1px solid var(--line);color:var(--danger);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:6px;padding:8px 11px;display:inline-flex}.phone-color{border:1px solid color-mix(in srgb, var(--ink) 25%, transparent);vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.phone-type-fieldset{border:0;min-width:0;margin:0;padding:0}.phone-type-fieldset legend{margin-bottom:8px}.phone-type-fieldset.is-invalid .phone-type-options{outline:2px solid var(--danger);outline-offset:4px}.phone-type-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.phone-type-option{aspect-ratio:3/2;border:1px solid var(--line);cursor:pointer;isolation:isolate;background:#f3f0e7;min-height:190px;padding:0;transition:border-color .14s,opacity .14s;display:block;position:relative;overflow:hidden}.phone-type-option:has(input:checked){border-color:var(--green)}.phone-type-option:has(input:checked):after{z-index:3;border:3px solid var(--green);content:"";pointer-events:none;position:absolute;inset:0}.phone-type-option.disabled{color:var(--muted);cursor:not-allowed;opacity:.68;background:#f1eee5}.phone-type-option input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.phone-type-option:focus-within{outline:3px solid var(--ochre);outline-offset:3px}.phone-type-media{z-index:0;background:#f3f0e7;display:block;position:absolute;inset:0;overflow:hidden}.phone-type-image{object-fit:cover;transition:transform .26s}.phone-type-option:hover:not(.disabled) .phone-type-image{transform:scale(1.025)}.phone-type-fallback{display:block;position:absolute;inset:0}.phone-type-overlay{z-index:2;background:color-mix(in srgb, var(--surface) 82%, transparent);min-height:62px;color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:13px 15px;display:grid;position:absolute;bottom:0;left:0;right:0}.phone-type-option:has(input:checked) .phone-type-overlay{background:color-mix(in srgb, var(--green-pale) 86%, transparent)}.phone-type-overlay>svg{color:var(--green-dark)}.phone-type-option strong,.phone-type-option small{display:block}.phone-type-option small{color:var(--danger);margin-top:3px;font-size:11px}.address-autocomplete{gap:7px;display:grid;position:relative}.address-input-wrap{align-items:center;display:flex;position:relative}.address-input-wrap>svg:first-child{z-index:1;color:var(--plum);pointer-events:none;position:absolute;left:13px}.address-input-wrap input{padding-left:42px;padding-right:40px}.address-input-wrap .spin{color:var(--green-dark);position:absolute;right:13px}.address-suggestions{z-index:30;border:1px solid #bdb5a3;border-top:2px solid var(--green);background:var(--surface);box-shadow:var(--shadow);border-radius:0 0 6px 6px;animation:.14s ease-out suggestions-in;position:absolute;top:calc(100% - 19px);left:0;right:0;overflow:hidden}.address-suggestions button{border:0;border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.address-suggestions button>svg:first-child{color:var(--plum)}.address-suggestions button>svg:last-child{color:var(--green-dark)}.address-suggestions button:hover,.address-suggestions button.active{background:var(--green-pale)}.address-suggestions strong,.address-suggestions small{display:block}.address-suggestions strong{font-size:13px;line-height:1.35}.address-suggestions small{color:var(--muted);margin-top:2px;font-size:11px}.address-suggestions-message{color:var(--muted);margin:0;padding:13px 14px 7px;font-size:12px}.google-maps-attribution{color:#5e5e5e;font-family:Roboto, var(--body), sans-serif;letter-spacing:normal;text-align:right;white-space:nowrap;padding:8px 14px 9px;font-size:12px;font-style:normal;font-weight:400}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes suggestions-in{0%{opacity:0;transform:translateY(-4px)}}.checkbox{align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;display:flex}.checkbox input{width:18px;height:18px;margin-top:1px}.notice{border-left:3px solid var(--ochre);background:#fff8dd;padding:13px 15px;font-size:13px;line-height:1.5}.error{border-left:3px solid var(--danger);color:#722121;background:#fbe8e4;padding:12px 14px;font-size:13px}.success{border-left:3px solid var(--green);background:var(--green-pale);color:var(--green-dark);padding:12px 14px;font-size:13px}.footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:20px;padding:34px 0;font-size:12px;display:flex}.journey{min-height:100vh}.journey-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px max(20px,50vw - 550px);display:flex}.journey-main{width:min(1100px,100% - 40px);margin:0 auto;padding:54px 0 80px}.journey-intro{grid-template-columns:1fr auto;align-items:end;gap:30px;margin-bottom:34px;display:grid}.journey-intro h1{white-space:nowrap;max-width:none;margin:0;font-size:clamp(42px,6vw,64px)}.progress{color:var(--muted);gap:7px;font-size:12px;display:flex}.progress span{background:var(--line);width:38px;height:4px}.progress span.active{background:var(--green)}.booking-layout{grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);align-items:start;gap:28px;display:grid}.booking-panel,.summary-panel{border:1px solid var(--line);background:var(--surface);padding:clamp(22px,4vw,38px)}.summary-panel{position:sticky;top:22px}.booking-panel h2,.summary-panel h2{margin:0 0 24px;font-size:30px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .wide{grid-column:1/-1}.option-list{gap:10px;display:grid}.option{border:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr auto;align-items:start;gap:13px;padding:16px;display:grid}.option:has(input:checked){border-color:var(--green);background:var(--green-pale)}.option input{margin-top:4px}.option strong{margin-bottom:5px;display:block}.option small{color:var(--muted)}.option-price{font-family:var(--heading);font-size:22px}.form-actions{justify-content:space-between;gap:12px;margin-top:28px;display:flex}.form-actions>div{min-width:0}.form-validation-action{justify-items:end;gap:12px;width:min(100%,620px);margin-left:auto;display:grid}.form-validation-summary{max-width:620px}.form-validation-summary strong{margin-bottom:5px;display:block}.form-validation-summary ul{margin:0;padding-left:19px}.form-validation-summary li+li{margin-top:3px}.price-lines{gap:10px;margin:0;display:grid}.price-lines>div{justify-content:space-between;gap:15px;font-size:13px;display:flex}.price-lines dt,.price-lines dd{margin:0}.price-total{border-top:1px solid var(--line);font-family:var(--heading);padding-top:13px;font-size:23px!important}.hold-clock{color:var(--danger);font-variant-numeric:tabular-nums;font-weight:600}.centered-state{text-align:center;width:min(650px,100% - 40px);margin:0 auto;padding:80px 0}.centered-state h1{font-size:clamp(42px,6vw,64px)}.centered-state .button{margin-top:16px}.admin-shell{background:#f3f1ea;min-height:100vh}.admin-topbar{color:#f8f4e9;background:#242720;border-bottom:1px solid #d5d1c6;align-items:center;gap:22px;padding:14px 24px;display:flex}.admin-topbar .brand{margin-right:15px;font-size:19px}.admin-topbar nav{gap:18px;font-size:13px;display:flex}.admin-topbar nav a{text-decoration:none}.admin-user{color:#bbbcae;margin-left:auto;font-size:12px}.admin-main{width:min(1500px,100% - 36px);margin:0 auto;padding:30px 0 60px}.admin-reservation-flow{width:min(1220px,100% - 36px)}.admin-reservation-flow .booking-layout{grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr)}.admin-step{border:1px solid var(--line);background:var(--surface);min-width:58px;color:var(--muted);text-align:center;padding:7px 10px;font-size:12px;font-weight:700}.service-fieldset{border:0;margin:0;padding:0}.service-fieldset>legend{margin-bottom:8px}.admin-phone-unit select{font-variant-numeric:tabular-nums}.admin-conflict-confirmation{border:1px solid color-mix(in srgb, var(--ochre) 55%, var(--line));background:var(--ochre-pale);color:#62450d;cursor:pointer;grid-template-columns:auto auto 1fr;align-items:start;gap:12px;padding:15px 16px;display:grid}.admin-conflict-confirmation input{width:18px;height:18px;accent-color:var(--ochre);margin:1px 0 0}.admin-conflict-confirmation svg{margin-top:1px}.admin-conflict-confirmation strong,.admin-conflict-confirmation small{display:block}.admin-conflict-confirmation small{color:#6d5a33;margin-top:4px;line-height:1.45}.admin-override-note{border-left:3px solid var(--ochre);background:var(--ochre-pale);color:#62450d;margin:18px 0 0;padding:11px 12px;font-size:11px;line-height:1.45}.admin-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.admin-heading h1{font-family:var(--body);margin:0;font-size:28px}.admin-heading p{color:#6c6b65;margin:5px 0 0;font-size:13px}.admin-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.google-calendar-panel{border:1px solid #d5d1c6;border-left:4px solid var(--google-calendar-color,var(--plum));background:#fff;grid-template-columns:minmax(240px,1fr) minmax(260px,.85fr) auto;align-items:center;gap:14px 24px;margin-bottom:14px;padding:18px 20px;display:grid}.google-calendar-heading{align-items:center;gap:13px;min-width:0;display:flex}.google-calendar-heading h2{font-family:var(--body);margin:0;font-size:17px;font-weight:700}.google-calendar-heading p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.45}.google-calendar-icon{background:color-mix(in srgb, var(--google-calendar-color,var(--plum)) 13%, white);width:42px;height:42px;color:var(--google-calendar-color,var(--plum));border-radius:50%;flex:none;place-items:center;display:grid}.google-calendar-settings{align-items:end;gap:14px;min-width:0;display:flex}.google-calendar-source{min-width:180px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex:auto;gap:5px;font-size:10px;font-weight:700;display:grid}.google-calendar-source select{border:1px solid var(--line);background-color:var(--surface);width:100%;min-height:40px;color:var(--ink);text-transform:none;border-radius:5px;padding:0 34px 0 11px;font-size:12px;font-weight:600}.google-calendar-color{cursor:pointer;align-items:center;gap:8px;min-width:128px;display:inline-flex}.google-calendar-color input[type=color]{cursor:pointer;background:#fff;border:1px solid #aaa494;border-radius:50%;flex:none;width:36px;height:36px;padding:2px}.google-calendar-color input[type=color]::-webkit-color-swatch-wrapper{padding:0}.google-calendar-color input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}.google-calendar-color input[type=color]::-moz-color-swatch{border:0;border-radius:50%}.google-calendar-color input:disabled,.google-calendar-source select:disabled{opacity:.48;cursor:wait}.google-calendar-color span{line-height:1.2;display:grid}.google-calendar-color strong{font-size:11px}.google-calendar-color small{color:var(--muted);margin-top:2px;font-size:9px}.google-calendar-actions{flex-wrap:wrap;grid-column:-2/-1;justify-content:flex-end;align-items:center;gap:9px;display:flex}.google-calendar-actions .button{min-height:40px;padding:0 14px;font-size:12px}.switch-control{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:0 11px;font-size:12px;font-weight:600;display:inline-flex}.switch-control input{width:17px;height:17px;accent-color:var(--green)}.google-calendar-meta,.google-calendar-config-note,.google-calendar-error{grid-column:1/-1;margin:-2px 0 0 55px;font-size:11px;line-height:1.45}.google-calendar-meta{color:var(--muted)}.google-calendar-config-note,.google-calendar-error{color:var(--danger)}.calendar-visibility{background:#faf9f5;border:1px solid #d5d1c6;flex-wrap:wrap;align-items:center;gap:13px 20px;margin-bottom:14px;padding:11px 14px;font-size:12px;display:flex}.calendar-visibility strong{letter-spacing:.06em;text-transform:uppercase;font-size:11px}.calendar-visibility label{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.calendar-layer-note{color:var(--muted);align-items:center;gap:7px;display:inline-flex}.calendar-visibility input{width:16px;height:16px;accent-color:var(--green)}.calendar-key{vertical-align:1px;border-radius:2px;width:15px;height:9px;display:inline-block}.calendar-key.phone{background:linear-gradient(90deg,#5f8a2f 0 25%,#b78a24 25% 50%,#765064 50% 75%,#3d6f78 75%)}.calendar-key.google{border-left:3px solid var(--google-calendar-color,var(--plum));background:color-mix(in srgb, var(--google-calendar-color,var(--plum)) 14%, white)}.calendar-key.service-buffer{background:#f0ece2;border-left:3px dashed #8a7751}.admin-feedback{margin-bottom:14px}.week-navigation{grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:8px;margin-bottom:12px;display:grid}.week-navigation .button{min-height:40px;padding:0 13px}.week-navigation-label{justify-items:center;line-height:1.2;display:grid}.week-navigation-label strong{font-variant-numeric:tabular-nums;font-size:16px}.week-navigation-label span{color:var(--muted);letter-spacing:.08em;margin-top:3px;font-size:10px}.phone-palette{background:#faf9f5;border:1px solid #d5d1c6;border-bottom:0;justify-content:space-between;align-items:center;gap:18px;padding:13px 15px;display:flex}.phone-palette-copy{flex:none;gap:2px;display:grid}.phone-palette-copy strong{letter-spacing:.06em;text-transform:uppercase;font-size:11px}.phone-palette-copy span{color:var(--muted);font-size:10px}.phone-palette-controls{flex-wrap:wrap;justify-content:flex-end;gap:8px 16px;min-width:0;display:flex}.phone-color-control{cursor:pointer;align-items:center;gap:8px;min-width:130px;display:inline-flex}.phone-color-control input[type=color]{cursor:pointer;background:#fff;border:1px solid #aaa494;border-radius:50%;flex:none;width:30px;height:30px;padding:2px}.phone-color-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.phone-color-control input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}.phone-color-control input[type=color]::-moz-color-swatch{border:0;border-radius:50%}.phone-color-control input[type=color]:disabled{opacity:.42;cursor:wait}.phone-color-control span{min-width:0;line-height:1.2;display:grid}.phone-color-control strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.phone-color-control small{color:var(--muted);margin-top:2px;font-size:9px}.week-calendar-frame{background:#fff;border:1px solid #d5d1c6;overflow-x:auto;box-shadow:0 16px 42px #3c362712}.week-calendar-header,.week-all-day-row,.week-calendar-grid{grid-template-columns:70px repeat(7,minmax(145px,1fr));min-width:1100px;display:grid}.week-calendar-header{z-index:6;background:#faf9f5;border-bottom:1px solid #d5d1c6;position:relative}.week-time-heading,.week-day-heading{border-right:1px solid #e2dfd5;min-height:66px;padding:9px 7px}.week-time-heading{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;place-items:center;font-size:9px;font-weight:700;display:grid}.week-day-heading{color:var(--muted);text-align:center;grid-template-columns:auto auto;place-content:center;column-gap:7px;display:grid}.week-day-heading span{letter-spacing:.07em;text-transform:uppercase;align-self:center;font-size:10px;font-weight:700}.week-day-heading strong{color:var(--ink);font-family:var(--heading);font-size:24px;font-weight:400;line-height:1}.week-day-heading small{text-transform:capitalize;grid-column:1/-1;margin-top:3px;font-size:9px}.week-day-heading.today{background:var(--green-pale);box-shadow:inset 0 3px 0 var(--green)}.week-all-day-row{background:#fff;border-bottom:1px solid #d5d1c6}.week-all-day-label{min-height:42px;color:var(--muted);text-transform:uppercase;border-right:1px solid #e2dfd5;align-content:center;padding:7px 9px;font-size:9px;font-weight:700;display:grid}.week-all-day-label small{text-overflow:ellipsis;text-transform:none;white-space:nowrap;margin-top:2px;font-size:8px;font-weight:500;overflow:hidden}.week-all-day-cell{border-right:1px solid #e2dfd5;flex-direction:column;gap:2px;min-width:0;padding:4px;display:flex}.week-all-day-event{border-left:3px solid var(--google-event-color,var(--plum));background:color-mix(in srgb, var(--google-event-color,var(--plum)) 13%, white);min-width:0;color:color-mix(in srgb, var(--google-event-color,var(--plum)) 72%, black);border-radius:2px;justify-content:space-between;align-items:center;gap:4px;padding:3px 5px;font-size:9px;line-height:1.25;text-decoration:none;display:flex}.week-all-day-event span,.week-all-day-event strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-all-day-event.phone-all-day-reservation{border-left-color:color-mix(in srgb, var(--phone-event-color) 76%, black);background:var(--phone-event-color);color:var(--phone-event-text)}.week-all-day-event.phone-all-day-reservation strong{font-size:9px}.week-all-day-event.phone-all-day-reservation span{opacity:.88;font-size:8px}.week-all-day-event.phone-all-day-reservation.availability-override{outline:2px dashed var(--ochre);outline-offset:-3px}.week-calendar-scroll{overscroll-behavior:contain;scrollbar-color:#b7b1a2 #f0eee7;scrollbar-width:thin;min-width:1100px;max-height:728px;overflow-y:auto}.week-time-rail,.week-day-column{height:728px;position:relative}.week-time-rail{background:#faf9f5;border-right:1px solid #d5d1c6}.week-time-rail span{z-index:2;color:#7c796f;font-variant-numeric:tabular-nums;font-size:9px;line-height:1;position:absolute;right:9px;transform:translateY(-50%)}.week-time-rail span:first-child{transform:translateY(3px)}.week-time-rail span:last-child{transform:translateY(-100%)}.week-day-column{background-color:#fff;background-image:repeating-linear-gradient(#0000 0 25px,#e2dfd561 25px 26px,#0000 26px 51px,#dedbd1 51px 52px);border-right:1px solid #dedbd1;min-width:0}.week-day-column:nth-child(7),.week-day-column:nth-child(8){background-color:#fcfbf7}.week-all-day-background{z-index:0;pointer-events:none;background:#74736c4d;position:absolute;inset:0}.week-event{z-index:3;border-radius:3px;align-content:start;gap:1px;min-width:0;padding:4px 5px;font-size:9px;line-height:1.18;text-decoration:none;transition:filter .13s,box-shadow .13s,transform .13s;display:grid;position:absolute;overflow:hidden}.week-event strong,.week-event span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-event:hover{z-index:5;filter:brightness(.96)saturate(1.08);transform:translateY(-1px);box-shadow:0 5px 16px #25231d2e}.week-event.phone-reservation{border:1px solid color-mix(in srgb, var(--phone-event-color) 76%, black);background:var(--phone-event-color);color:var(--phone-event-text)}.week-event.phone-reservation.held,.week-event.phone-reservation.payment_pending{opacity:.78;border-style:dashed}.week-event.phone-reservation.cancelled,.week-event.phone-reservation.expired{color:#5f5d56;opacity:.78;background:#d9d8d3;border-color:#999}.week-event.phone-reservation.availability-override{outline:2px dashed var(--ochre);outline-offset:-3px}.week-event.phone-reservation small{letter-spacing:.02em;text-transform:uppercase;margin-top:2px;font-size:7px;font-weight:800}.week-event.google-background{z-index:1;border:1px solid color-mix(in srgb, var(--google-event-color,var(--plum)) 30%, transparent);border-left:4px solid color-mix(in srgb, var(--google-event-color,var(--plum)) 66%, transparent);background:color-mix(in srgb, var(--google-event-color,var(--plum)) 11%, transparent);color:color-mix(in srgb, var(--google-event-color,var(--plum)) 72%, black);opacity:.78;left:4px;right:4px}.week-event.google-background:hover{z-index:2;opacity:1}.week-event.service-buffer{z-index:2;border:1px dashed var(--phone-event-color);background:color-mix(in srgb, var(--phone-event-color) 18%, white);color:color-mix(in srgb, var(--phone-event-color) 76%, black);font-size:8px}.week-event.phone-block{z-index:4;border:1px solid color-mix(in srgb, var(--phone-event-color) 65%, #666);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--phone-event-color) 24%, white) 0 5px, #eeeae0 5px 10px);color:#4f4c44}.login-panel{background:#fff;border:1px solid #d5d1c6;width:min(430px,100% - 40px);margin:90px auto;padding:36px}.login-panel h1{font-family:var(--body);margin:0 0 8px;font-size:25px}.login-panel form{gap:16px;margin-top:24px;display:grid}.recordings-panel{border:1px solid var(--line);border-top:3px solid var(--plum);background:var(--surface);margin-top:28px;padding:clamp(22px,4vw,38px);scroll-margin-top:22px}.recordings-heading,.recordings-library-heading{justify-content:space-between;align-items:start;gap:22px;display:flex}.recordings-heading h2,.recordings-library-heading h1{margin:0;font-size:32px}.recordings-heading p,.recordings-library-heading p{max-width:640px;color:var(--muted);margin:8px 0 0;font-size:13px}.recordings-count{border:1px solid var(--line);color:var(--muted);white-space:nowrap;padding:7px 10px;font-size:11px;font-weight:700}.recording-dropzone{text-align:center;background:#fbf9f2;border:1px dashed #aaa18e;align-content:center;place-items:center;gap:9px;min-height:190px;margin-top:25px;padding:25px;transition:border-color .15s,background .15s;display:grid}.recording-dropzone.is-dragging{border-color:var(--green-dark);background:var(--green-pale)}.recording-dropzone strong{font-family:var(--heading);font-size:26px;font-weight:400}.recording-dropzone span{color:var(--muted);font-size:12px}.recording-dropzone .button{margin-top:7px}.recording-list{border-top:1px solid var(--line);gap:0;margin:24px 0 0;padding:0;list-style:none;display:grid}.recording-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:11px 2px;font-size:13px;display:flex}.admin-recording-preview{gap:8px;min-width:0;display:grid}.recording-list small{color:var(--muted);white-space:nowrap;font-size:11px}.recording-actions{grid-template-columns:1fr 1fr;gap:18px;margin-top:24px;display:grid}.recording-form{border-top:1px solid var(--line);gap:7px;padding-top:16px;display:grid}.recording-form>label{font-size:12px;font-weight:700}.recording-form>div{gap:8px;display:flex}.recording-form input{background:#fffef9;border:1px solid #bdb5a3;border-radius:5px;flex:1;min-width:0;min-height:44px;padding:10px 11px}.recording-form .button{flex:none;min-height:44px;padding:0 13px;font-size:12px}.recording-form small{color:var(--muted);font-size:10px}.recording-publication{border:1px solid color-mix(in srgb, var(--green) 45%, var(--line));background:var(--green-pale);gap:12px;margin-top:24px;padding:18px;display:grid}.recording-publication>strong{font-size:12px}.recording-publications{gap:14px;margin-top:24px;display:grid}.recording-publications>h3{font-family:var(--body);margin:0;font-size:15px}.recording-publications .recording-publication{margin-top:0}.recording-publication-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.recording-publication-heading span{color:var(--muted);text-align:right;font-size:11px}.recording-statistics{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.recording-statistics div{border:1px solid color-mix(in srgb, var(--green) 26%, var(--line));background:#ffffff7a;padding:9px}.recording-statistics dt{color:var(--muted);font-size:10px;font-weight:700}.recording-statistics dd{margin:3px 0 0;font-size:18px;font-weight:800}.recording-publication-actions{flex-wrap:wrap;gap:8px;display:flex}.recording-modal-backdrop{z-index:30;background:#25231d6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.recording-modal{border-top:3px solid var(--green);background:var(--surface);width:min(490px,100%);box-shadow:var(--shadow);padding:clamp(24px,5vw,36px)}.recording-modal h2{margin:3px 0 8px;font-size:34px}.recording-modal p{color:var(--muted);margin:0 0 20px;font-size:13px}.recording-modal form{gap:9px;display:grid}.recording-modal label{font-size:12px;font-weight:700}.recording-modal input{background:#fffef9;border:1px solid #bdb5a3;border-radius:5px;min-height:46px;padding:10px 11px}.recording-modal-actions{justify-content:end;gap:8px;margin-top:9px;display:flex}.recording-link-row,.recording-expiry-form>div,.recording-email-form>div{gap:8px;display:flex}.recording-link-row input,.recording-expiry-form input,.recording-email-form input{background:#fffef9;border:1px solid #9eae8b;border-radius:5px;flex:1;min-width:0;min-height:44px;padding:10px 11px}.recording-link-row .button,.recording-expiry-form .button,.recording-email-form .button{flex:none;min-height:44px;padding:0 13px;font-size:12px}.recording-expiry-form,.recording-email-form{border-top:1px solid color-mix(in srgb, var(--green) 34%, var(--line));gap:7px;padding-top:13px;display:grid}.recording-expiry-form label,.recording-email-form label{font-size:12px;font-weight:700}.recording-expiry-form small,.recording-email-form small{color:var(--muted);font-size:10px}.recording-unpublish{color:#8e2f2f;justify-self:start}.recording-notice{margin-top:20px}.recordings-page{background:var(--paper);min-height:100vh}.recordings-public-shell{width:min(920px,100% - 40px);margin:0 auto;padding:clamp(52px,10vw,112px) 0}.recordings-access-panel{border-top:3px solid var(--green);background:var(--surface);width:min(510px,100%);box-shadow:var(--shadow);text-align:center;margin:0 auto;padding:clamp(28px,6vw,52px)}.recordings-access-panel>svg{color:var(--plum)}.recordings-access-panel .eyebrow{margin-top:18px}.recordings-access-panel h1{margin:0;font-size:clamp(41px,7vw,58px)}.recordings-access-panel p{color:var(--muted);margin:16px auto 28px;font-size:14px}.recordings-access-panel form{text-align:left;gap:9px;display:grid}.recordings-access-panel label{font-size:12px;font-weight:700}.recordings-access-panel input{background:#fffef9;border:1px solid #bdb5a3;border-radius:5px;min-height:48px;padding:11px 12px}.recordings-access-panel .button{width:100%;margin-top:8px}.recordings-access-panel .error{text-align:left;margin-top:18px}.recordings-library{border-top:3px solid var(--green);background:var(--surface);box-shadow:var(--shadow);padding:clamp(25px,5vw,52px)}.recordings-library-heading .button{flex:none}.recordings-public-list{border-top:1px solid var(--line);margin:34px 0 0;padding:0;list-style:none}.recordings-public-list li{border-bottom:1px solid var(--line);grid-template-columns:44px minmax(0,1fr) 42px;align-items:center;gap:16px;padding:20px 0;display:grid}.recording-number{color:var(--plum);font-family:var(--heading);text-align:center;font-size:25px}.recording-player{gap:12px;min-width:0;display:grid}.recording-player strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.recording-audio-player{min-width:0;color:var(--muted);font-variant-numeric:tabular-nums;grid-template-columns:38px auto minmax(70px,1fr) auto;align-items:center;gap:9px;font-size:11px;display:grid}.recording-audio-player audio{display:none}.recording-play-button{background:var(--green);color:#fff;border:0;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;transition:transform .18s,background .18s;display:grid}.recording-play-button:hover:not(:disabled){background:var(--green-dark);transform:scale(1.06)}.recording-play-button:disabled{cursor:not-allowed;opacity:.5}.recording-progress{width:100%;min-width:0;accent-color:var(--green);cursor:pointer}.recording-progress:disabled{cursor:default;opacity:.45}.recording-elapsed,.recording-duration{white-space:nowrap}.recording-elapsed{color:var(--ink)}.recording-audio-player.is-compact{grid-template-columns:30px auto minmax(54px,220px) auto;gap:7px}.recording-audio-player.is-compact .recording-play-button{width:30px;height:30px}.recording-download{border:1px solid var(--line);width:42px;height:42px;color:var(--green-dark);border-radius:50%;place-items:center;display:grid}.recording-download:hover{border-color:var(--green);background:var(--green-pale)}.truth-note svg{vertical-align:-3px;margin-right:4px}.customer-greeting-admin{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(190px,.8fr) minmax(240px,1fr) auto;align-items:center;gap:18px;margin:22px 0 0;padding:18px 0;display:grid}.customer-greeting-admin .eyebrow{margin-bottom:5px}.customer-greeting-admin strong,.customer-greeting-admin small{display:block}.customer-greeting-admin small{color:var(--muted);margin-top:4px;font-size:11px}.customer-greeting-admin audio{width:100%;height:38px}.greeting-page{background:radial-gradient(circle at 90% 12%, var(--green-pale), transparent 28%), var(--paper);min-height:100vh}.greeting-shell{place-items:center;width:min(700px,100% - 40px);min-height:calc(100vh - 73px);margin:0 auto;padding:52px 0;display:grid}.greeting-studio,.greeting-expired{border-top:3px solid var(--green);background:color-mix(in srgb, var(--surface) 92%, transparent);width:100%;box-shadow:var(--shadow);padding:clamp(28px,6vw,58px)}.greeting-studio h1,.greeting-expired h1{margin:0;font-size:clamp(42px,8vw,68px)}.greeting-intro{max-width:48ch;margin:16px 0 4px;font-size:17px}.greeting-optional{max-width:55ch;color:var(--muted);margin:0;font-size:13px}.greeting-guidance{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 75%, var(--paper));border-radius:10px;margin:24px 0 28px;padding:22px 24px}.greeting-guidance-head h2{font-family:var(--body);color:var(--ink);margin:0 0 8px;font-size:16px;font-weight:700}.greeting-guidance-head p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.greeting-tips{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);margin:18px 0 16px;padding:16px 0}.greeting-tips h3{font-family:var(--body);text-transform:uppercase;letter-spacing:.06em;color:var(--green-dark);margin:0 0 12px;font-size:13px;font-weight:700}.greeting-tips-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.greeting-tips-list li{grid-template-columns:24px 1fr;align-items:start;gap:12px;font-size:14px;line-height:1.55;display:grid}.tip-badge{background:var(--green-pale);width:24px;height:24px;color:var(--green-dark);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.greeting-tips-list strong{color:var(--ink)}.greeting-tips-list span{color:var(--muted)}.greeting-tips-list em{color:var(--ink);font-style:italic}.greeting-guidance-note{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.greeting-deadline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:baseline;gap:20px;margin:28px 0 0;padding:15px 0;font-size:12px;font-weight:700;display:flex}.greeting-deadline strong{color:var(--plum);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:25px}.greeting-recorder{align-items:center;gap:22px;margin-top:31px;display:flex}.microphone-button{background:var(--green);color:#fff;cursor:pointer;width:86px;height:86px;box-shadow:0 0 0 10px color-mix(in srgb, var(--green) 12%, transparent);border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:transform .16s,background .16s,box-shadow .16s;display:grid}.microphone-button svg{width:36px;height:36px}.microphone-button:hover:not(:disabled){background:var(--green-dark);transform:scale(1.05)}.microphone-button.is-recording{background:var(--danger);box-shadow:0 0 0 10px color-mix(in srgb, var(--danger) 14%, transparent);animation:1.2s ease-in-out infinite greeting-pulse}.greeting-recorder strong,.greeting-recorder span{display:block}.greeting-recorder strong{font-size:16px}.greeting-recorder span{color:var(--muted);margin-top:5px;font-size:12px}.greeting-progress{background:var(--line);height:5px;margin:28px 0 0;overflow:hidden}.greeting-progress i{background:var(--danger);height:100%;transition:width .1s linear;display:block}.greeting-preview{border-top:1px solid var(--line);gap:16px;margin-top:28px;padding-top:23px;display:grid}.greeting-preview .recording-audio-player{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:12px 16px;box-shadow:0 2px 8px #332d1c0a}.greeting-preview>div{flex-wrap:wrap;gap:10px;display:flex}.greeting-studio .success,.greeting-studio .error{margin-top:22px}.greeting-studio.is-expired{border-top-color:var(--ochre)}.greeting-expired>.button{margin-top:15px}.confirmed-greeting-action{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;width:min(100%,520px);margin:8px auto 26px;padding:24px 0}.confirmed-greeting-action .eyebrow{margin-bottom:7px}.confirmed-greeting-action h2{margin:0;font-size:27px}.confirmed-greeting-action p{color:var(--muted);margin:8px 0 18px;font-size:14px}.greeting-status-banner{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:8px;margin:24px 0 0;padding:18px 20px;display:grid}.greeting-status-banner.is-unsaved{border-color:var(--ochre);background:color-mix(in srgb, var(--ochre-pale) 65%, var(--surface))}.greeting-status-banner.is-saved{border-color:var(--green);background:color-mix(in srgb, var(--green-pale) 65%, var(--surface))}.greeting-status-banner.is-empty{border-color:var(--line);background:color-mix(in srgb, var(--surface) 60%, var(--paper))}.greeting-status-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.greeting-status-header h3{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:15.5px;font-weight:700;display:flex}.greeting-status-banner p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.greeting-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.greeting-status-badge.is-unsaved{background:var(--ochre-pale);color:var(--ochre-dark);border:1px solid var(--ochre)}.greeting-status-badge.is-saved{background:var(--green-pale);color:var(--green-dark);border:1px solid var(--green)}.greeting-status-badge.is-empty{background:var(--line);color:var(--muted)}.greeting-player-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:12.5px;font-weight:600;display:flex}@keyframes greeting-pulse{50%{transform:scale(1.045)}}@media (max-width:900px){.hero,.booking-layout,.contact-band{grid-template-columns:1fr}.schedule-planner{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr)}.hero{min-height:auto}.hero-aside{height:360px;min-height:360px}.steps,.gallery-line{grid-template-columns:1fr 1fr}.gallery-line .temp-image:first-child{grid-column:1/-1}.summary-panel{position:static}.admin-heading{flex-direction:column;align-items:flex-start}.admin-heading-actions{justify-content:flex-start}.google-calendar-panel,.recording-actions{grid-template-columns:1fr}.customer-greeting-admin{grid-template-columns:1fr;align-items:start}.google-calendar-actions{grid-column:auto;justify-content:flex-start}.phone-palette{flex-direction:column;align-items:flex-start}.phone-palette-controls{justify-content:flex-start}}@media (max-width:620px){.site-header nav{display:none}.header-cta{min-height:40px;padding:0 13px}.shell,.journey-main{width:min(100% - 28px,1180px)}.hero{padding:42px 0}.hero-copy h1{font-size:48px}.hero-aside{height:320px;min-height:320px}.section{padding:62px 0}.section-soft{padding:48px 20px}.steps,.package-grid,.gallery-line,.formula,.form-grid,.schedule-planner,.phone-type-options{grid-template-columns:1fr}.phone-type-option{min-height:0}.availability-calendar-frame{padding:14px 10px 12px}.availability-calendar-heading{grid-template-columns:38px 1fr 38px;gap:8px;margin-bottom:12px}.availability-calendar-heading button{width:38px;height:38px}.availability-calendar-heading strong{font-size:23px}.availability-calendar-weekdays,.availability-calendar-grid{gap:3px}.availability-calendar-grid{min-height:272px}.availability-calendar-grid button{gap:5px;min-height:48px;padding:6px 2px 5px;font-size:14px}.availability-calendar-footer{align-items:flex-start}.availability-calendar-legend{gap:8px}.package+.package{border-left:0;border-top:1px solid var(--line)}.form-grid .wide{grid-column:auto}.gallery-line .temp-image:first-child{grid-column:auto;min-height:290px}.contact-band{padding:34px 20px}.journey-header{padding:14px}.journey-header .brand{font-size:18px}.journey-intro{grid-template-columns:1fr}.journey-intro h1{white-space:normal}.booking-panel,.summary-panel{padding:20px}.admin-topbar nav{display:none}.admin-user{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.google-calendar-panel{padding:16px}.google-calendar-actions,.google-calendar-settings{flex-direction:column;align-items:stretch}.google-calendar-actions .button,.switch-control{width:100%}.google-calendar-meta,.google-calendar-config-note,.google-calendar-error{margin-left:0}.week-navigation{grid-template-columns:1fr 1fr}.week-navigation-label{grid-area:1/1/auto/-1}.week-navigation .button{justify-content:center}.phone-palette-controls{grid-template-columns:1fr 1fr;width:100%;display:grid}.phone-color-control{min-width:0}.recordings-heading,.recordings-library-heading{flex-direction:column;align-items:stretch}.recordings-library-heading .button{width:100%}.recording-form>div{flex-direction:column}.recording-form .button{width:100%}.recording-link-row,.recording-expiry-form>div,.recording-email-form>div{flex-direction:column}.recording-publication-heading,.recording-modal-actions{flex-direction:column;align-items:stretch}.recording-publication-heading span{text-align:left}.recording-statistics{grid-template-columns:1fr}.recording-publication-actions .button,.recording-modal-actions .button{width:100%}.recordings-public-list li{grid-template-columns:36px minmax(0,1fr);gap:12px}.recording-download{grid-column:2;justify-self:end;margin-top:-6px}.recording-audio-player,.recording-audio-player.is-compact{grid-template-columns:34px auto minmax(0,1fr) auto}.greeting-shell{width:min(100% - 28px,700px);min-height:calc(100vh - 64px);padding:28px 0}.greeting-studio,.greeting-expired{padding:26px 22px}.greeting-recorder{gap:17px}.microphone-button{width:72px;height:72px}.recording-audio-player.is-compact{max-width:100%}.recording-link-row .button,.recording-expiry-form .button,.recording-email-form .button{width:100%}.week-calendar-header,.week-all-day-row,.week-calendar-grid,.week-calendar-scroll{min-width:980px}.week-calendar-header,.week-all-day-row,.week-calendar-grid{grid-template-columns:62px repeat(7,minmax(130px,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
