@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-latin.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/cormorant-garamond-italic-latin.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-italic-latin.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}body{color:#1e2420;-webkit-font-smoothing:antialiased;background:#f8f4ee;width:100%;font-family:DM Sans,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;background:0 0;border:0}.container,.not-found,.approach__inner,.profile__inner,.personal__inner,.services__header,.services__grid,.work__inner,.faq__inner,.contact__inner{max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,4rem)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.contact__inner.contact__inner--booking{grid-template-columns:minmax(0,.72fr) minmax(560px,1.28fr);max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,4rem)}.contact__alternatives{color:#46534c;gap:.45rem;display:grid}.contact__alternatives p{font-weight:700}.contact__alternatives a{color:#35563f;width:fit-content;font-weight:700}.contact__portal-access{border-left:3px solid #6f855d;margin-top:1.5rem;padding:.85rem 1rem}.contact__portal-access p{color:#46534c;margin-bottom:.2rem;font-size:.85rem}.contact__portal-access a{color:#35563f;font-weight:700}.booking-page{background:#f8f4ee;min-height:100vh;padding:clamp(7rem,11vw,9rem) clamp(1rem,5vw,4rem) 6rem}.booking-page__intro{max-width:1120px;margin:0 auto 2.5rem}.booking-page__intro p:last-child{color:#46534c;max-width:680px}.booking-page>.booking-widget{max-width:1120px;margin:0 auto}.booking-page.page-route{padding-top:clamp(7.5rem,11vw,9rem)}.booking-widget{color:#1e2420;background:#fffdf8;border:1px solid #ddd5c5;min-width:0;padding:clamp(1.25rem,3vw,2rem)}.booking-widget__header{border-bottom:1px solid #ddd5c5;justify-content:space-between;align-items:start;gap:1rem;padding-bottom:1.25rem;display:flex}.booking-widget__header .section-label{margin-bottom:.35rem}.booking-widget__header h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,2.8rem);font-weight:400;line-height:1}.booking-widget__header>span{color:#35563f;letter-spacing:.08em;text-transform:uppercase;background:#6f855d21;padding:.65rem .8rem;font-size:.7rem;font-weight:700}.booking-widget__section{grid-template-columns:34px minmax(0,1fr);gap:1rem;padding-top:1.5rem;display:grid}.booking-widget__step{color:#fff;background:#35563f;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:.78rem;font-weight:700;display:flex}.booking-widget__section-content{min-width:0}.booking-widget__section-content>h4{margin-bottom:1rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:500}.booking-widget__selectors,.booking-widget__schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.booking-widget__schedule{grid-template-columns:minmax(0,1.08fr) minmax(190px,.92fr)}.booking-widget__selectors>div,.booking-widget .booking-form__field{gap:.45rem;display:grid}.booking-widget label{color:#1e2420;font-size:.84rem;font-weight:700}.booking-widget input,.booking-widget select,.booking-widget textarea{color:#1e2420;background:#fff;border:1px solid #ddd5c5;border-radius:0;outline:none;width:100%;min-height:46px;padding:.8rem .9rem}.booking-widget input:focus,.booking-widget select:focus,.booking-widget textarea:focus{border-color:#6f855d;box-shadow:0 0 0 3px #6f855d26}.booking-widget input[aria-invalid=true],.booking-widget select[aria-invalid=true],.booking-widget textarea[aria-invalid=true]{border-color:#a13f35}.booking-widget textarea{resize:vertical;min-height:92px}.booking-widget__service-description,.booking-widget__empty{color:#46534c;margin-top:.75rem;font-size:.9rem}.booking-widget__error{color:#a13f35;background:#a13f350f;border-left:3px solid #a13f35;margin-top:1rem;padding:.75rem}.booking-widget__review{scroll-margin-top:6rem}.booking-widget--fallback{gap:.9rem;display:grid}.booking-widget--fallback h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.booking-widget--fallback p{color:#46534c}.booking-widget--fallback .button{justify-self:start}.booking-widget--success{text-align:center}.booking-widget--success h3{margin-bottom:1rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2.4rem;font-weight:500}.booking-widget--success p{color:#46534c;margin-top:.45rem}.booking-widget__intake{text-align:left;background:#6f855d1a;border:1px solid #ddd5c5;border-left:3px solid #35563f;max-width:560px;margin:1.4rem auto 0;padding:1rem}.booking-widget__intake h4{color:#35563f;font-size:1rem}.booking-widget__intake .button{margin-top:.85rem}.booking-widget__success-icon{color:#fff;background:#35563f;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;font-size:1.4rem;display:inline-flex}.booking-calendar{border:1px solid #ddd5c5;min-width:0;padding:1rem}.booking-calendar__header{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:.5rem;margin-bottom:1rem;display:grid}.booking-calendar__header h4{text-align:center;white-space:normal;min-width:0;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(1rem,2vw,1.25rem);font-weight:600;line-height:1.15}.booking-calendar__header button{border:1px solid #ddd5c5;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.booking-calendar__header button:disabled{opacity:.3}.booking-calendar__weekdays,.booking-calendar__grid{grid-template-columns:repeat(7,1fr);display:grid}.booking-calendar__weekdays span{color:#7c877f;text-align:center;text-transform:uppercase;padding:.35rem 0;font-size:.68rem;font-weight:700}.booking-calendar__grid button,.booking-calendar__empty{aspect-ratio:1;min-width:0}.booking-calendar__grid button{color:#1e2420;border:1px solid #0000;justify-content:center;align-items:center;font-size:.8rem;display:flex;position:relative}.booking-calendar__grid button:not(:disabled):hover{background:#f8f4ee;border-color:#ddd5c5}.booking-calendar__grid button:disabled{color:#7c877f73;cursor:default}.booking-calendar__grid button.is-selected{color:#fff;background:#35563f}.booking-calendar__grid button span{background:#6f855d;border-radius:50%;width:3px;height:3px;position:absolute;bottom:3px}.booking-calendar__grid button.is-selected span{background:#fff}.booking-calendar__status{color:#46534c;text-align:center;margin-top:.75rem;font-size:.78rem}.time-slots{border:1px solid #ddd5c5;min-width:0;padding:1rem}.time-slots h4{margin-bottom:.75rem;font-size:.9rem}.time-slots>p{color:#46534c;font-size:.85rem}.time-slots__grid{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:.5rem;display:grid}.time-slots button{color:#35563f;white-space:nowrap;border:1px solid #ddd5c5;min-height:42px;padding:.65rem .45rem}.time-slots button:hover{border-color:#6f855d}.time-slots button.is-selected{color:#fff;background:#35563f;border-color:#35563f}.booking-form{gap:1rem;display:grid}.booking-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.booking-form__help{color:#7c877f;font-size:.78rem;line-height:1.45}.booking-form__error{color:#a13f35;font-size:.78rem}.booking-form__privacy{align-items:start;gap:.7rem;line-height:1.55;display:flex;font-weight:400!important}.booking-form__privacy input{flex:none;width:auto;min-height:auto;margin-top:.3rem}.booking-form__privacy a{color:#35563f;font-weight:700;text-decoration:underline}.booking-form__honeypot{width:0;height:0;position:absolute;left:-9999px;overflow:hidden}.booking-form .button{justify-self:start}.online-consultation-info{text-align:left;background:#f8f4ee;border:1px solid #ddd5c5;border-left:3px solid #35563f;gap:.65rem;margin-top:1rem;padding:1rem;display:grid}.online-consultation-info h5{color:#35563f;font-size:.9rem}.online-consultation-info p{color:#46534c;margin:0;font-size:.82rem;line-height:1.55}.online-consultation-info strong{color:#1e2420}.online-consultation-info__price{font-size:.9rem!important}.online-consultation-info__transfer{background:#ffffff73;border:1px solid #2c4d3b40;margin:1rem 0;padding:1rem}.dynamic-form__illustration{margin:1rem 0}.dynamic-form__illustration img{border:1px solid var(--color-beige,#ded3c2);border-radius:.5rem;width:100%;max-width:680px;display:block}.dynamic-form__illustration figcaption{margin-top:.5rem;font-size:.875rem}.booking-summary{padding-top:1.5rem}.booking-summary h4{margin-bottom:1rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.booking-summary dl{border-top:1px solid #ddd5c5;border-bottom:1px solid #ddd5c5;margin-bottom:1.5rem;display:grid}.booking-summary dl>div{grid-template-columns:140px 1fr;gap:1rem;padding:.75rem 0;display:grid}.booking-summary dl>div:not(:last-child){border-bottom:1px solid #ddd5c5a6}.booking-summary dt{color:#7c877f;text-transform:uppercase;font-size:.78rem;font-weight:700}.booking-summary dd{color:#1e2420}.booking-summary .online-consultation-info{margin:0 0 1.5rem}.booking-summary__actions{flex-wrap:wrap;gap:.75rem;display:flex}.legal-page{max-width:820px;min-height:80vh;margin:0 auto;padding:clamp(7rem,11vw,9rem) clamp(1rem,5vw,4rem) 6rem}.legal-page>p,.legal-page li{color:#46534c;line-height:1.8}.legal-page h2{margin:2rem 0 .6rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500}.legal-page a{color:#35563f;font-weight:700}.legal-page__notice{background:#ede7da;border-left:3px solid #9a6d3f;margin-top:2rem;padding:1rem}@media (width<=960px){.contact__inner.contact__inner--booking{grid-template-columns:1fr}}@media (width<=680px){.booking-page.page-route{padding-top:clamp(6.5rem,18vw,7.25rem)}.booking-widget{padding:1rem}.booking-widget__header{flex-direction:column;align-items:stretch}.booking-widget__header>span{align-self:start}.booking-widget__section{grid-template-columns:26px minmax(0,1fr)}.booking-widget__step{width:24px;height:24px}.booking-widget__selectors,.booking-widget__schedule,.booking-form__row{grid-template-columns:1fr}.booking-summary dl>div{grid-template-columns:1fr;gap:.25rem}.booking-summary__actions .button{width:100%}}.admin-shell{--admin-sidebar-width:250px;color:#1e2420;grid-template-columns:var(--admin-sidebar-width) minmax(0, 1fr);background:#f4f1ea;min-height:100vh;transition:grid-template-columns .18s;display:grid}.admin-shell--sidebar-closed{--admin-sidebar-width:72px}.admin-sidebar{box-sizing:border-box;color:#fff;height:100dvh;min-height:0;width:var(--admin-sidebar-width);z-index:60;background:#10251c;flex-direction:column;align-self:start;padding:1.9rem 1.2rem;display:flex;position:fixed;top:0;left:0;overflow:hidden}.admin-sidebar__brand{padding:0 .3rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.85rem}.admin-sidebar>p{color:#ffffffa3;text-transform:uppercase;margin:.35rem 0 1.9rem;padding:0 .3rem;font-size:.7rem}.admin-sidebar nav{flex:auto;gap:.45rem;min-height:0;display:grid;overflow:hidden auto}.admin-sidebar nav a{color:#fffc;white-space:nowrap;align-items:center;gap:1rem;min-width:0;padding:.95rem .8rem;font-size:.9rem;display:flex}.admin-sidebar nav a:hover,.admin-sidebar nav a:focus-visible,.admin-sidebar nav a.is-active{color:#fff;background:#ffffff1f}.admin-sidebar nav a .admin-icon{width:1.4rem;height:1.4rem}.admin-sidebar__toggle{color:#fff;text-align:left;white-space:nowrap;border-top:1px solid #ffffff2e;flex:none;align-items:center;gap:.7rem;margin-top:1rem;padding:1rem .8rem .2rem;font-size:.75rem;display:flex}.admin-sidebar__toggle .admin-icon{width:1.25rem;height:1.25rem}.admin-shell--sidebar-closed .admin-sidebar{padding-left:.7rem;padding-right:.7rem}.admin-shell--sidebar-closed .admin-sidebar .admin-sidebar__brand,.admin-shell--sidebar-closed .admin-sidebar>p,.admin-shell--sidebar-closed .admin-sidebar nav span,.admin-shell--sidebar-closed .admin-sidebar .admin-sidebar__toggle span{display:none}.admin-shell--sidebar-closed .admin-sidebar nav{flex:0 auto}.admin-shell--sidebar-closed .admin-sidebar nav a{justify-content:center;padding-left:.55rem;padding-right:.55rem}.admin-shell--sidebar-closed .admin-sidebar .admin-sidebar__toggle{justify-content:center;margin-top:auto;padding-left:.2rem;padding-right:.2rem}.admin-main{grid-column:2;min-width:0}.admin-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none;width:1.1rem;height:1.1rem;display:inline-block}.admin-topbar{justify-content:flex-end;align-items:center;height:58px;padding:0 clamp(1rem,3vw,2.25rem);display:flex}.admin-topbar__hamburger{display:none}.admin-topbar__account{position:relative}.admin-topbar__account>button{color:#10251c;text-align:left;align-items:center;gap:.65rem;display:flex}.admin-topbar__account strong,.admin-topbar__account small{display:block}.admin-topbar__account strong{font-size:.76rem}.admin-topbar__account small{color:#46534c;margin-top:.15rem;font-size:.67rem}.admin-topbar__account>button>.admin-icon{margin-left:.35rem}.admin-topbar__initials{color:#46534c;background:#ede7da;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.7rem;display:inline-flex}.admin-topbar__menu{z-index:50;background:#fffdf8;border:1px solid #ddd5c5;gap:.7rem;min-width:190px;padding:.8rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 26px #10251c1f}.admin-topbar__menu span{color:#46534c;overflow-wrap:anywhere;font-size:.72rem}.admin-topbar__menu button{color:#35563f;text-align:left;font-size:.78rem;font-weight:700}.admin-mobile-menu,.admin-mobile-menu__backdrop{display:none}.admin-page{max-width:1400px;margin:0 auto;padding:clamp(1rem,3vw,2.25rem)}.admin-page-header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.admin-page-header h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.4rem,5vw,3.8rem);font-weight:500;line-height:1}.admin-page-header>div>p:last-child{color:#46534c;margin-top:.6rem}.admin-filters,.admin-settings-strip{background:#fffdf8;border:1px solid #ddd5c5;flex-wrap:wrap;align-items:end;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.admin-filters label,.admin-dialog label,.admin-settings-form label,.admin-settings-strip label{color:#46534c;flex:1;gap:.35rem;min-width:160px;font-size:.78rem;font-weight:700;display:grid}.admin-filters--appointments label{flex-basis:170px}.admin-filter-actions{gap:.65rem;margin-left:auto;display:flex}.admin-dialog label small{color:#7c877f;font-weight:400;line-height:1.4}.admin-page input,.admin-page select,.admin-page textarea,.admin-dialog input,.admin-dialog select,.admin-dialog textarea,.admin-auth input{color:#1e2420;background:#fff;border:1px solid #ddd5c5;border-radius:0;outline:0;width:100%;min-height:44px;padding:.7rem .8rem}.admin-page input:focus,.admin-page select:focus,.admin-page textarea:focus,.admin-dialog input:focus,.admin-dialog select:focus,.admin-dialog textarea:focus,.admin-auth input:focus{border-color:#6f855d;box-shadow:0 0 0 3px #6f855d24}.admin-form-success,.admin-form-error{border-left:3px solid #35563f;margin:1rem 0;padding:.75rem 1rem}.admin-form-error{color:#a13f35;border-color:#a13f35}.admin-table-wrap{background:#fffdf8;border:1px solid #ddd5c5;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:1050px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ddd5c5;padding:.9rem 1rem}.admin-table th{color:#7c877f;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.admin-table td{font-size:.86rem}.admin-table td span:not(.status-badge){color:#46534c;margin-top:.25rem;font-size:.76rem;display:block}.admin-table td button{color:#35563f;margin:0 .65rem .35rem 0;font-weight:700}.admin-payment-cell{width:250px;min-width:250px;padding:.55rem .7rem!important}.admin-payment-card{background:#f8f4ee;border:1px solid #ddd5c5;gap:.45rem;width:100%;padding:.55rem;display:grid}.admin-payment-card__status{justify-content:space-between;align-items:center;gap:.65rem;display:flex}.admin-payment-card__status-action,.admin-payment-card__file-action{text-align:center;border:1px solid #ddd5c5;justify-content:center;align-items:center;min-height:32px;padding:.35rem .5rem;font-size:.68rem;line-height:1.2;transition:background .16s,border-color .16s,color .16s;display:inline-flex;color:#35563f!important;margin:0!important}.admin-payment-card__status-action:hover:not(:disabled),.admin-payment-card__file-action:hover:not(:disabled){background:#6f855d1a;border-color:#6f855d}.admin-payment-card__status-action:focus-visible,.admin-payment-card__file-action:focus-visible{outline-offset:2px;outline:2px solid #6f855d}.admin-payment-card__status-action:disabled,.admin-payment-card__file-action:disabled{cursor:wait;opacity:.55}.admin-payment-card__status-action{flex:0 auto}.admin-payment-card__status-action.is-primary{background:#35563f;border-color:#35563f;color:#fff!important}.admin-payment-card__status-action.is-primary:hover:not(:disabled){background:#10251c;border-color:#10251c}.admin-payment-card__receipt{border-top:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:.55rem;padding-top:.45rem;display:flex}.admin-payment-card__label{color:#7c877f;letter-spacing:.07em;text-transform:uppercase;flex:none;margin:0;font-size:.61rem;font-weight:700}.admin-payment-card__receipt-status{color:#7c877f;text-align:right;align-items:center;gap:.35rem;margin:0;font-size:.68rem;display:flex}.admin-payment-card__receipt-status.is-attached{color:#35563f;font-weight:700}.admin-payment-card__dot{background:#7c877f;border-radius:50%;flex:0 0 6px;width:6px;height:6px;margin:0!important;display:inline-block!important}.admin-payment-card__receipt-status.is-attached .admin-payment-card__dot{background:#35563f}.admin-payment-card__file-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;display:grid}.admin-payment-card__file-actions.is-single{grid-template-columns:1fr}.admin-payment-card__file-action{background:#fffdf8;width:100%}.admin-payment-card__file-action.is-view{background:#6f855d1f;border-color:#6f855d8c}.admin-page--appointments{max-width:1500px}.admin-page--appointments .admin-page-header{margin-bottom:1.65rem}.admin-page--appointments .admin-page-header .section-label{color:#9a6d3f;letter-spacing:.13em;font-size:.69rem}.admin-page--appointments .admin-page-header h1{font-size:clamp(3.2rem,5vw,4.2rem)}.admin-page--appointments .admin-page-header>div>p:last-child{margin-top:.7rem;font-size:1rem}.admin-page--appointments .admin-filters--appointments{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));align-items:end;gap:1rem;padding:1rem;display:grid}.admin-page--appointments .admin-filters--appointments label{color:#10251c;letter-spacing:.05em;text-transform:uppercase;gap:.45rem;min-width:0;font-size:.64rem;font-weight:800;display:grid}.admin-page--appointments .admin-filter-control{align-items:center;display:flex;position:relative}.admin-page--appointments .admin-filter-control>.admin-icon{color:#10251c;pointer-events:none;z-index:1;position:absolute;left:.72rem}.admin-page--appointments .admin-filter-control input,.admin-page--appointments .admin-filter-control select{min-height:45px;padding-left:2.45rem;font-size:.8rem}.admin-page--appointments .admin-filter-actions{align-self:end;align-items:center;gap:.75rem;min-width:max-content;margin:0;padding-bottom:0}.admin-page--appointments .admin-filter-actions .button{text-transform:uppercase;justify-content:center;align-items:center;gap:.55rem;min-height:45px;display:inline-flex}.admin-page--appointments .admin-filter-actions .button--secondary{color:#1e2420;background:0 0;border-color:#0000;padding-left:0;padding-right:0}.admin-page--appointments .admin-filter-actions .button--primary{min-width:121px}.admin-page--appointments .admin-table-wrap{border-color:#ddd5c5}.admin-page--appointments .admin-table{min-width:1160px}.admin-page--appointments .admin-table th{color:#657384;letter-spacing:.04em;padding:.85rem 1rem;font-size:.64rem}.admin-page--appointments .admin-table td{border-bottom-color:#ddd5c5d9;padding:1rem}.admin-page--appointments .admin-table tbody tr:last-child td{border-bottom:0}.admin-page--appointments .admin-table td>span:not(.status-badge){margin-top:.48rem}.admin-page--appointments .admin-table td .admin-icon{color:#10251c;vertical-align:-.2rem;margin-right:.55rem}.admin-page--appointments .admin-appointment-date{min-width:155px}.admin-page--appointments .admin-appointment-date strong{max-width:130px;line-height:1.45;display:block}.admin-page--appointments .admin-appointment-date>span:first-of-type{font-weight:700;color:#1e2420!important}.admin-page--appointments .admin-appointment-patient{min-width:205px}.admin-page--appointments .admin-appointment-patient strong{align-items:center;gap:.55rem;font-size:.9rem;display:flex}.admin-page--appointments .admin-appointment-patient>span{white-space:nowrap}.admin-page--appointments .admin-appointment-service,.admin-page--appointments .admin-appointment-modality{min-width:112px}.admin-page--appointments .admin-appointment-service .admin-icon,.admin-page--appointments .admin-appointment-modality .admin-icon{float:left}.admin-page--appointments .admin-appointment-service>span,.admin-page--appointments .admin-appointment-modality>span{color:#1e2420!important;margin:0!important;font-size:.84rem!important;display:block!important}.admin-page--appointments .admin-appointment-service{min-width:125px}.admin-page--appointments .admin-payment-cell{width:258px;min-width:258px;padding:.8rem 1rem!important}.admin-page--appointments .admin-payment-card{background:0 0;border:0;gap:.65rem;padding:0}.admin-page--appointments .admin-payment-card__status{align-items:flex-start;gap:.55rem}.admin-page--appointments .admin-payment-card__status-action{max-width:130px}.admin-page--appointments .admin-payment-card__receipt{border:0;justify-content:flex-start;padding:0}.admin-page--appointments .admin-payment-card__receipt-status{color:#46534c;text-align:left;font-size:.7rem}.admin-page--appointments .admin-payment-card__receipt-status .admin-icon{margin-right:.2rem}.admin-page--appointments .admin-payment-card__file-actions{gap:.5rem}.admin-page--appointments .admin-payment-card__file-action{background:0 0;min-height:38px}.admin-page--appointments .admin-payment-card__file-action.is-view{background:#6f855d14}.admin-page--appointments .admin-payment-card__file-action .admin-icon{margin-right:.35rem}.admin-page--appointments .admin-appointment-actions{min-width:120px}.admin-page--appointments .admin-appointment-actions>button{align-items:center;gap:.3rem;margin:0 0 .72rem;padding:0;display:flex}.admin-page--appointments .admin-appointment-actions>button:last-child{margin-bottom:0}.admin-page--appointments .admin-appointment-actions>button .admin-icon{margin:0}.appointment-view-switch{border-bottom:1px solid #ddd5c5;gap:.2rem;margin-bottom:1.15rem;display:flex}.appointment-view-switch button{color:#46534c;border-bottom:3px solid #0000;align-items:center;gap:.45rem;padding:.7rem 1rem;font-size:.78rem;display:inline-flex}.appointment-view-switch button.is-active{color:#10251c;border-color:#35563f;font-weight:700}.admin-filters--calendar{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.admin-filters--calendar .admin-filter-actions{justify-content:flex-end}.appointment-calendar-layout{grid-template-columns:minmax(0,1fr);gap:.65rem;display:grid}.appointment-calendar-layout.has-detail{grid-template-columns:minmax(0,1fr) 280px}.appointment-calendar-layout__main{min-width:0}.appointment-calendar__mini{border-bottom:1px solid #ddd5c5;padding:1rem}.appointment-calendar__mini header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.appointment-calendar__mini header h2{font-size:.82rem;font-weight:700}.appointment-calendar__mini header span{gap:.25rem;display:flex}.appointment-calendar__mini header button{color:#35563f;padding:.2rem}.appointment-calendar__mini-weekdays,.appointment-calendar__mini-days{text-align:center;grid-template-columns:repeat(7,1fr);display:grid}.appointment-calendar__mini-weekdays{color:#7c877f;margin-bottom:.25rem;font-size:.57rem;font-weight:700}.appointment-calendar__mini-days{gap:.1rem}.appointment-calendar__mini-days button,.appointment-calendar__mini-days span{justify-content:center;align-items:center;height:23px;font-size:.67rem;display:flex}.appointment-calendar__mini-days button{color:#1e2420;border-radius:50%;width:23px;margin:0 auto}.appointment-calendar__mini-days button:hover,.appointment-calendar__mini-days button:focus-visible{background:#6f855d29}.appointment-calendar__mini-days button.is-selected{color:#fff;background:#35563f}.appointment-calendar__mini-days button.is-today:not(.is-selected){color:#35563f;font-weight:800}.appointment-calendar__today{color:#10251c;border:1px solid #ddd5c5;width:100%;min-height:38px;margin-top:1rem;font-size:.72rem;font-weight:700}.appointment-calendar__sidebar-filters{gap:.65rem;padding:1rem;display:grid}.appointment-calendar__sidebar-filters h2{color:#10251c;margin:.5rem 0 .1rem;font-size:.72rem;font-weight:800}.appointment-calendar__sidebar-filters label{color:#46534c;cursor:pointer;align-items:center;gap:.5rem;font-size:.72rem;display:flex}.appointment-calendar__sidebar-filters label input{accent-color:#35563f;width:16px;height:16px;min-height:auto;margin:0;padding:0}.appointment-calendar__sidebar-filters hr{border:0;border-top:1px solid #ddd5c5;margin:.55rem 0}.appointment-calendar__legend{border-radius:2px;width:13px;height:13px}.appointment-calendar__legend--sage{background:#bfe2d4}.appointment-calendar__legend--lavender{background:#d9d0f3}.appointment-calendar__legend--sand{background:#f1ddae}.appointment-calendar__legend--mint{background:#c9e7d9}.appointment-calendar__legend--slate{background:#d7d9db}.appointment-calendar__week{background:#fffdf8;border:1px solid #ddd5c5;min-width:0}.appointment-calendar__toolbar{border-bottom:1px solid #ddd5c5;justify-content:space-between;align-items:center;min-height:59px;padding:.65rem .8rem;display:flex}.appointment-calendar__toolbar>div{gap:.45rem;display:flex}.appointment-calendar__toolbar button,.appointment-calendar__toolbar>span{color:#35563f;border:1px solid #ddd5c5;min-height:34px;padding:.35rem .6rem;font-size:.72rem}.appointment-calendar__toolbar h2{color:#10251c;font-size:1.05rem;font-weight:500}.appointment-calendar__toolbar>span{align-items:center;display:inline-flex}.appointment-calendar__scroll{overflow-x:auto}.appointment-calendar__grid{grid-template-columns:56px minmax(620px,1fr);min-width:700px;display:grid}.appointment-calendar__times{height:calc(var(--calendar-height) + 58px);position:relative}.appointment-calendar__times span{color:#63738b;margin-top:58px;font-size:.66rem;position:absolute;right:.6rem;transform:translateY(-.45rem)}.appointment-calendar__days{grid-template-columns:repeat(7,minmax(88px,1fr));display:grid}.appointment-calendar__days>article{border-left:1px solid #e5e8eb;min-width:0}.appointment-calendar__days>article>header{border-bottom:1px solid #e5e8eb;place-items:center;gap:.2rem;min-height:58px;padding:.35rem;display:grid}.appointment-calendar__days>article>header span{color:#63738b;text-transform:uppercase;font-size:.57rem;font-weight:800}.appointment-calendar__days>article>header strong{color:#34516f;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:500}.appointment-calendar__days>article.is-today>header strong{background:#6f855d2e;border-radius:50%;justify-content:center;align-items:center;width:29px;height:29px;display:inline-flex}.appointment-calendar__day-body{height:var(--calendar-height);background-image:repeating-linear-gradient(#0000 0 71px,#e5e8eb 72px);position:relative;overflow:hidden}.appointment-calendar__event{color:#1e2420;cursor:pointer;text-align:left;z-index:2;border-left:3px solid;padding:.27rem .35rem;position:absolute;overflow:hidden}.appointment-calendar__event:hover,.appointment-calendar__event:focus-visible,.appointment-calendar__event.is-selected{z-index:4;outline:0;box-shadow:inset 0 0 0 1px #10251c,0 3px 9px #10251c24}.appointment-calendar__event strong,.appointment-calendar__event span,.appointment-calendar__event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.appointment-calendar__event strong{font-size:.58rem}.appointment-calendar__event span{margin-top:.08rem;font-size:.63rem;font-weight:700}.appointment-calendar__event small{font-size:.56rem}.appointment-calendar__event--sage{background:#e3f2eb;border-color:#4f9779}.appointment-calendar__event--lavender{background:#eeeafd;border-color:#8e7cdc}.appointment-calendar__event--sand{background:#faf0db;border-color:#d9a94d}.appointment-calendar__event--mint{background:#e3f3eb;border-color:#66b392}.appointment-calendar__event--slate{background:#eaedef;border-color:#8e989d}.appointment-calendar__loading{color:#46534c;text-align:center;background:#fffdf8;border:1px solid #ddd5c5;padding:3rem}.calendar-appointment-detail{background:#fffdf8;border:1px solid #ddd5c5;align-content:start;gap:1rem;padding:1rem;display:grid}.calendar-appointment-detail>header{justify-content:space-between;align-items:center;display:flex}.calendar-appointment-detail>header h2{color:#10251c;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500}.calendar-appointment-detail>header>button{color:#35563f}.calendar-appointment-detail__status{text-align:center;justify-self:stretch}.calendar-appointment-detail dl{gap:.8rem;margin:0;display:grid}.calendar-appointment-detail dl>div{gap:.25rem;display:grid}.calendar-appointment-detail dl dt{color:#10251c;align-items:center;gap:.55rem;font-size:.67rem;font-weight:700;display:flex}.calendar-appointment-detail dl dd{color:#46534c;overflow-wrap:anywhere;margin:0 0 0 1.65rem;font-size:.76rem}.calendar-appointment-detail dl dd small{color:#7c877f;margin-top:.18rem;font-size:.69rem;display:block}.calendar-appointment-detail__payment{border-top:1px solid #ddd5c5;grid-template-columns:1fr 1fr;gap:.5rem;padding-top:.8rem;display:grid}.calendar-appointment-detail__payment span{color:#7c877f;gap:.3rem;font-size:.64rem;display:grid}.calendar-appointment-detail__payment .status-badge{text-align:center;border:0}.calendar-appointment-detail__receipt{border-top:1px solid #ddd5c5;gap:.55rem;padding-top:.8rem;display:grid}.calendar-appointment-detail__receipt p{color:#46534c;font-size:.7rem;font-weight:700}.calendar-appointment-detail__receipt span{color:#7c877f;font-size:.72rem}.calendar-appointment-detail__receipt button:not(.button){color:#35563f;border:1px solid #ddd5c5;justify-content:center;align-items:center;gap:.4rem;min-height:34px;font-size:.7rem;display:flex}.calendar-appointment-detail__actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.calendar-appointment-detail__actions .button{grid-column:span 2;justify-content:center;align-items:center;gap:.35rem;display:flex}.calendar-appointment-detail__actions>button:not(.button){color:#35563f;border:1px solid #ddd5c5;justify-content:center;align-items:center;gap:.35rem;min-height:36px;font-size:.7rem;display:flex}.calendar-filter-dialog{max-width:520px}.admin-visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.admin-pagination{background:#fffdf8;border:1px solid #ddd5c5;border-top:0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.admin-pagination p{color:#46534c;font-size:.8rem}.admin-pagination div{align-items:center;gap:.85rem;display:flex}.admin-pagination span{color:#46534c;font-size:.8rem}.admin-pagination button{color:#35563f;border:1px solid #ddd5c5;min-height:38px;padding:.55rem .8rem;font-size:.78rem;font-weight:700}.admin-pagination button:hover:not(:disabled){border-color:#6f855d}.admin-pagination button:disabled{color:#7c877f;cursor:default;opacity:.45}.status-badge{color:#46534c;letter-spacing:.06em;text-transform:uppercase;background:#ede7da;padding:.35rem .55rem;font-size:.65rem;font-weight:700;display:inline-block}.status-badge--confirmed,.status-badge--paid{color:#35563f;background:#6f855d26}.status-badge--cancelled{color:#a13f35;background:#a13f351a}.status-badge--completed{color:#35563f;background:#35563f24}.status-badge--no_show,.status-badge--processing,.status-badge--pending{color:#9a6d3f;background:#9a6d3f21}.admin-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.admin-card{background:#fffdf8;border:1px solid #ddd5c5;flex-direction:column;justify-content:space-between;gap:1rem;padding:1.25rem;display:flex}.admin-card h2,.admin-card h3{margin-top:.5rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.7rem;font-weight:500}.admin-card p{color:#46534c;font-size:.86rem}.admin-card dl{gap:.4rem;display:grid}.admin-card dl>div{justify-content:space-between;display:flex}.admin-card dt{color:#7c877f;text-transform:uppercase;font-size:.72rem}.admin-card dd{font-size:.8rem}.admin-card>button,.admin-card div>button{color:#35563f;text-align:left;margin-right:.8rem;font-weight:700}.admin-card--compact{min-height:210px}.admin-card__time{font-weight:700;color:#1e2420!important;font-size:1.2rem!important}.admin-card__preview{white-space:pre-line;max-height:8rem;overflow:hidden}.admin-card__actions{flex-wrap:wrap;gap:.85rem;display:flex}.admin-card__actions button{margin:0}.admin-card .admin-action--danger{color:#a13f35}.admin-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin:3rem 0 1rem;display:flex}.admin-section-heading h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.admin-section-heading p{color:#46534c}.admin-list{gap:.75rem;display:grid}.admin-list__item{background:#fffdf8;border:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.admin-list__item h3{margin:.35rem 0}.admin-list__item p{color:#46534c;font-size:.85rem}.admin-list__item button{color:#35563f;margin-left:.8rem;font-weight:700}.admin-dialog-backdrop{z-index:1000;background:#10251c8f;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-dialog{background:#fffdf8;gap:1rem;width:100%;max-width:600px;max-height:calc(100vh - 2rem);padding:clamp(1.3rem,4vw,2rem);display:grid;position:relative;overflow-y:auto}.admin-dialog h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.admin-dialog>p{color:#46534c}.admin-dialog fieldset{border:1px solid #ddd5c5;flex-wrap:wrap;gap:1rem;padding:1rem;display:flex}.admin-dialog--wide{max-width:780px}.admin-dialog__close{color:#46534c;font-size:1.7rem;position:absolute;top:.8rem;right:1rem}.admin-dialog__actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.admin-consultation-details__header{border-bottom:1px solid #ddd5c5;padding:0 2.6rem 1rem 0}.admin-consultation-details__header .section-label{margin-bottom:.45rem}.admin-consultation-details__header p:last-child{color:#46534c;margin:.5rem 0 0}.admin-detail-list{gap:.8rem;margin:.25rem 0;display:grid}.admin-detail-list>div{background:#f8f4ee;border:1px solid #ddd5c5;padding:1rem}.admin-detail-list dt{color:#35563f;text-transform:uppercase;font-size:.74rem;font-weight:700;line-height:1.45}.admin-detail-list dd{color:#1e2420;overflow-wrap:anywhere;white-space:pre-wrap;margin:.45rem 0 0;line-height:1.6}.admin-detail-list__kind{background:#6f855d1f!important}.admin-upload-progress{color:#46534c;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;font-size:.82rem;display:grid}.admin-upload-progress progress{accent-color:#35563f;width:100%;height:.65rem}.admin-button--danger{color:#fff;background:#8b3c32;border-color:#8b3c32}.admin-button--danger:hover,.admin-button--danger:focus-visible{background:#6f3028;border-color:#6f3028}.admin-checkbox{justify-self:start;align-items:center;flex:none!important;gap:.65rem!important;min-width:0!important;display:flex!important}.admin-checkbox input,.admin-choice input{accent-color:#35563f;flex:0 0 18px;box-shadow:none!important;width:18px!important;min-height:18px!important;padding:0!important}.admin-choice-fieldset{display:block!important}.admin-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%;display:grid}.admin-choice{cursor:pointer;background:#f8f4ee;border:1px solid #ddd5c5;flex-direction:row;align-items:center;padding:.85rem 1rem;transition:border-color .16s,background .16s;gap:.65rem!important;min-width:0!important;display:flex!important}.admin-choice.is-selected{color:#35563f;background:#6f855d1f;border-color:#6f855d}.admin-choice:hover{border-color:#6f855d}.admin-form-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.admin-settings-strip{justify-content:space-between}.admin-settings-strip h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:500}.admin-settings-strip p{color:#46534c;font-size:.8rem}.admin-settings-strip label{flex:0 auto;align-items:center;min-width:auto;display:flex}.admin-settings-strip input{width:90px}.admin-settings-form{gap:1.25rem;max-width:900px;display:grid}.admin-settings-form fieldset{background:#fffdf8;border:1px solid #ddd5c5;gap:1rem;padding:1.4rem;display:grid}.admin-settings-form legend{padding:0 .5rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem}.admin-settings-form small{color:#7c877f;font-weight:400}.admin-settings-form .button{justify-self:start}.admin-calendar-settings{background:#fffdf8;border:1px solid #ddd5c5;gap:1.2rem;max-width:900px;margin-bottom:1.5rem;padding:clamp(1.2rem,3vw,1.6rem);display:grid}.admin-calendar-settings__heading{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.admin-calendar-settings__heading h2{margin-bottom:.35rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500}.admin-calendar-settings__heading>div>p:last-child{color:#46534c;max-width:640px}.admin-calendar-settings__eyebrow{letter-spacing:.1em;text-transform:uppercase;margin-bottom:.4rem;font-size:.68rem;font-weight:700;color:#9a6d3f!important}.admin-calendar-settings__body{gap:1rem;display:grid}.admin-calendar-settings dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.admin-calendar-settings dl div{background:#f8f4ee;border:1px solid #ddd5c5;padding:.85rem}.admin-calendar-settings dt{color:#7c877f;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.3rem;font-size:.68rem;font-weight:700}.admin-calendar-settings dd{color:#1e2420;overflow-wrap:anywhere}.admin-calendar-settings__actions{flex-wrap:wrap;gap:.75rem;display:flex}.email-preview{background:#f8f4ee;border:1px solid #ddd5c5;padding:1rem}.email-preview h3{margin-bottom:.6rem}.email-preview p{white-space:pre-line}.email-preview iframe{background:#f8f4ee;border:1px solid #ddd5c5;width:100%;height:min(65vh,720px);margin-top:.75rem}.admin-email-field{gap:.4rem;display:grid}.admin-email-field__tools{flex-wrap:wrap;gap:.5rem;display:flex}.admin-email-field__tools>button{color:#35563f;background:#f8f4ee;border:1px solid #ddd5c5;min-height:32px;padding:.25rem .5rem}.admin-preview-controls{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.admin-preview-controls label{max-width:260px}.admin-help{color:#7c877f;overflow-wrap:anywhere;font-size:.75rem}.admin-auth{background:#f8f4ee;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.admin-auth__card{background:#fffdf8;border:1px solid #ddd5c5;gap:.8rem;width:100%;max-width:440px;padding:clamp(1.5rem,5vw,2.5rem);display:grid}.admin-auth__card h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2.4rem;font-weight:500}.admin-auth__card>p{color:#46534c}.admin-auth__card>a:last-child{color:#35563f;text-align:center;margin-top:.4rem;font-weight:700}.admin-auth__brand{color:#35563f;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.3rem}.admin-state{text-align:center;background:#f8f4ee;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:2rem;display:flex}.admin-state h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2.5rem;font-weight:500}@media (width<=1050px){.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1180px){.admin-page--appointments .admin-filters--appointments{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-page--appointments .admin-filter-actions{grid-column:span 3;justify-content:flex-end}.appointment-calendar-layout.has-detail{grid-template-columns:minmax(0,1fr) 260px}}@media (width<=760px){.admin-shell{display:block}.admin-sidebar{display:none}.admin-topbar{z-index:1002;justify-content:space-between;height:52px;padding:0 1rem;position:relative}.admin-topbar__hamburger{place-content:center;gap:5px;width:36px;height:36px;padding:8px 6px;display:grid}.admin-topbar__hamburger span{background:#10251c;width:22px;height:1.5px;transition:transform .16s,opacity .16s;display:block}.admin-shell--mobile-menu-open .admin-topbar__hamburger span:first-child{transform:translateY(6.5px)rotate(45deg)}.admin-shell--mobile-menu-open .admin-topbar__hamburger span:nth-child(2){opacity:0}.admin-shell--mobile-menu-open .admin-topbar__hamburger span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.admin-mobile-menu__backdrop{z-index:1000;background:#10251c47;display:block;position:fixed;inset:52px 0 0}.admin-mobile-menu{z-index:1001;background:#10251c;padding:.65rem 1rem 1rem;display:grid;position:absolute;top:52px;left:0;right:0}.admin-mobile-menu a{color:#ffffffdb;align-items:center;gap:.8rem;min-height:44px;padding:.65rem .75rem;font-size:.88rem;display:flex}.admin-mobile-menu a:hover,.admin-mobile-menu a:focus-visible,.admin-mobile-menu a.is-active{color:#fff;background:#ffffff1f}.admin-mobile-menu a .admin-icon{width:1.2rem;height:1.2rem}.admin-page-header,.admin-section-heading,.admin-list__item{flex-direction:column;align-items:stretch}.admin-card-grid,.admin-form-row,.admin-choice-grid{grid-template-columns:1fr}.admin-calendar-settings__heading{flex-direction:column;align-items:flex-start}.admin-calendar-settings dl{grid-template-columns:1fr}.admin-calendar-settings__actions{flex-direction:column}.admin-calendar-settings__actions .button{width:100%}.admin-filter-actions{width:100%;margin-left:0}.admin-filter-actions .button{flex:1}.admin-pagination{flex-direction:column;align-items:stretch}.admin-pagination div{justify-content:space-between}.admin-dialog__actions{flex-direction:column}.admin-dialog__actions .button{width:100%}.admin-page--appointments{padding-left:1rem;padding-right:1rem}.admin-page--appointments .admin-page-header h1{font-size:3.15rem}.admin-page--appointments .admin-filters--appointments{grid-template-columns:1fr;padding:.9rem}.admin-page--appointments .admin-filter-actions{grid-column:auto;justify-content:stretch}.admin-page--appointments .admin-filter-actions .button{flex:1}.admin-page--appointments .admin-table-wrap{margin-left:-1rem;margin-right:-1rem}.admin-topbar{height:62px;padding:0 1rem}.admin-topbar__account>button>span:nth-child(2){display:none}.appointment-calendar-layout,.appointment-calendar-layout.has-detail{flex-direction:column;display:flex}.appointment-calendar-layout__main{order:1;overflow-x:auto}.calendar-appointment-detail{z-index:1001;order:3;max-height:calc(100vh - 2rem);position:fixed;inset:1rem;overflow-y:auto;box-shadow:0 16px 42px #10251c42}}.admin-filters--patients{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr))}.admin-table--patients{min-width:840px}.admin-table--patients td>a{color:#35563f;font-weight:700}.admin-empty{color:#46534c;text-align:center;background:#fffdf8;border:1px solid #ddd5c5;padding:2rem}.admin-empty h2{color:#1e2420;margin-bottom:.35rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500}.admin-field-error{margin-top:.3rem;font-size:.75rem;display:block;color:#a13f35!important}.admin-duplicate-warning{background:#9a6d3f14;border-left:3px solid #9a6d3f;padding:.9rem 1rem}.admin-duplicate-warning p{color:#46534c;margin-top:.35rem;font-size:.8rem}.admin-back-link{color:#35563f;margin-bottom:1rem;font-size:.8rem;font-weight:700;display:inline-block}.admin-patient-status{flex-wrap:wrap;align-items:center;gap:.7rem;margin:-1rem 0 1.5rem;display:flex}.admin-patient-status>span:last-child:not(.status-badge){color:#46534c;font-size:.82rem}.admin-tabs{border-bottom:1px solid #ddd5c5;gap:.2rem;margin:1.5rem 0;display:flex;overflow-x:auto}.admin-tabs button{color:#46534c;border-bottom:3px solid #0000;flex:none;padding:.8rem 1rem;font-size:.78rem;font-weight:700}.admin-tabs button.is-active{color:#35563f;border-color:#35563f}.admin-tab-title{margin-bottom:1rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.admin-generated-link{background:#6f855d1c;border:1px solid #6f855d66;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:.8rem;margin:1rem 0;padding:1rem;display:grid}.admin-generated-link label{min-width:0}.admin-generated-link input{margin-top:.35rem}.admin-generated-link>button:last-child{color:#35563f;padding:.8rem;font-weight:700}.clinical-timeline{border-left:1px solid #ddd5c5;gap:1rem;margin-left:.5rem;padding-left:1.3rem;display:grid}.clinical-timeline article{background:#fffdf8;border:1px solid #ddd5c5;padding:1.2rem;position:relative}.clinical-timeline article:before{content:"";background:#6f855d;border:3px solid #f8f4ee;border-radius:50%;width:13px;height:13px;position:absolute;top:1.35rem;left:-1.75rem}.clinical-timeline article>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.clinical-timeline article h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem}.clinical-timeline article time{color:#7c877f;font-size:.75rem}.clinical-timeline article>p{white-space:pre-wrap;margin:1rem 0}.clinical-timeline article>div button{color:#35563f;margin-right:1rem;font-weight:700}.admin-form-assignments{gap:1rem;display:grid}.admin-form-assignments>article{background:#fffdf8;border:1px solid #ddd5c5;padding:1.2rem}.admin-form-assignments>article>header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.8rem;display:flex}.admin-form-assignments>article h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem}.admin-form-assignments>article p{color:#46534c;font-size:.82rem}.admin-form-assignment__actions{flex-wrap:wrap;align-items:center}.admin-form-assignment__actions .admin-pdf-icon{color:#35563f;letter-spacing:.04em;background:#35563f24;border-radius:.2rem;align-items:center;margin-right:.38rem;padding:.14rem .2rem;font-size:.58rem;font-weight:800;display:inline-flex}.admin-document-list{gap:1rem;display:grid}.admin-document-card{background:#fffdf8;border:1px solid #ddd5c5;border-left:4px solid #ede7da;padding:1.25rem}.admin-document-card--published{border-left-color:#35563f}.admin-document-card--archived{opacity:.76}.admin-document-card>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-document-card h3{margin-top:.15rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.55rem}.admin-document-card__meta{flex-wrap:wrap;gap:1.5rem;margin:1rem 0;display:flex}.admin-document-card__meta>div{gap:.15rem;display:grid}.admin-document-card__meta dt{color:#7c877f;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.admin-document-card__meta dd{color:#46534c;font-size:.86rem}.admin-document-card__actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.admin-document-card__actions .button{justify-content:center;align-items:center;display:inline-flex}.admin-document-card__actions .admin-pdf-icon{color:#35563f;background:#35563f24;border-radius:.2rem;margin-right:.4rem;padding:.14rem .2rem;font-size:.58rem;font-weight:800}.admin-button--warning{color:#a13f35;background:0 0;border:1px solid #a13f35}.admin-button--warning:hover,.admin-button--warning:focus-visible{background:#a13f3514}.status-badge--document-draft{color:#9a6d3f;background:#9a6d3f21}.status-badge--document-published{color:#35563f;background:#35563f24}.status-badge--document-archived{color:#46534c;background:#ede7da}.admin-response-view{border-top:1px solid #ddd5c5;gap:.7rem;margin-top:1rem;padding-top:1rem;display:grid}.admin-response-view h3{margin-bottom:.3rem}.admin-response-view>p{color:#46534c;font-size:.78rem}.admin-response-view dl{gap:.8rem;display:grid}.admin-response-view dl>div{background:#f8f4ee6b;border-left:3px solid #6f855d;gap:.5rem;padding:.75rem;display:grid}.admin-response-view dt{color:#7c877f;text-transform:uppercase;font-size:.7rem;font-weight:700}.admin-response-view dd{white-space:pre-wrap;gap:.45rem;display:grid}.admin-response-view dd.is-empty{color:#7c877f;font-style:italic}.admin-response-editor{gap:.45rem;display:grid}.admin-response-editor input,.admin-response-editor select,.admin-response-editor textarea{background:#fffdf8;width:100%}.admin-response-editor textarea{resize:vertical}.admin-response-editor__original{color:#46534c;font-size:.75rem}.admin-response-editor__options,.admin-response-editor__grid{gap:.45rem;display:grid}.admin-response-editor__options label{align-items:center;gap:.5rem;display:flex}.admin-response-editor__options input{width:auto}.admin-response-editor__grid label{grid-template-columns:minmax(130px,1fr) minmax(150px,.8fr);align-items:center;gap:.45rem;display:grid}.admin-response-editor__status{color:#7c877f;flex-wrap:wrap;align-items:center;gap:.7rem;min-height:1.4rem;font-size:.68rem;display:flex}.admin-response-editor__status .is-error{color:#a13f35}.admin-response-editor__status button{color:#35563f;font-size:inherit;font-weight:700;text-decoration:underline}.admin-dialog--pdf{width:calc(100vw - 2rem);max-width:960px}.admin-dialog--pdf iframe{border:1px solid #ddd5c5;width:100%;height:min(70vh,760px);margin:.8rem 0 1rem}.admin-access-card{background:#fffdf8;border:1px solid #ddd5c5;max-width:760px;padding:1.3rem}.admin-access-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-bottom:1.2rem;display:grid}.admin-access-card dt{color:#7c877f;text-transform:uppercase;font-size:.7rem;font-weight:700}.admin-invite-history{margin-top:1.5rem}.admin-invite-history h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.5rem}.admin-invite-history p{color:#46534c;border-bottom:1px solid #ddd5c5;padding:.6rem 0}.status-badge--portal-active{color:#35563f;background:#35563f24}.status-badge--portal-invited{color:#9a6d3f;background:#9a6d3f21}.status-badge--portal-blocked{color:#a13f35;background:#a13f351a}.status-badge--portal-disabled{color:#46534c;background:#ede7da}.admin-template-layout{grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:1.25rem;display:grid}.admin-template-list{background:#fffdf8;border:1px solid #ddd5c5;align-content:start;gap:.25rem;padding:.5rem;display:grid}.admin-template-list>button{text-align:left;gap:.3rem;padding:.9rem;display:grid}.admin-template-list>button strong{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:500}.admin-template-list>button span{color:#46534c;font-size:.78rem}.admin-template-list>button small{color:#7c877f;font-size:.7rem}.admin-template-list>button.is-active{color:#35563f;background:#6f855d21}.admin-template-workspace{min-width:0}.admin-template-toolbar{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.admin-template-toolbar h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2.3rem;font-weight:500}.admin-template-toolbar>div:last-child{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.admin-template-toolbar>div:last-child>button:not(.button){color:#35563f;font-size:.8rem;font-weight:700}.admin-template-meta{background:#fffdf8;border:1px solid #ddd5c5;grid-template-columns:1fr 2fr;gap:1rem;margin-bottom:1rem;padding:1rem;display:grid}.admin-template-meta label{color:#46534c;gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.admin-template-editor{gap:1rem;display:grid}.admin-template-section{background:#fffdf8;border:1px solid #ddd5c5;padding:1rem}.admin-template-section>header,.admin-template-section .admin-template-field__heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.admin-template-section>header>label{color:#46534c;flex:1;gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.admin-template-section button:not(.button){color:#35563f;margin-left:.7rem;font-size:.74rem;font-weight:700}.admin-template-section .admin-action--danger{color:#a13f35!important}.admin-template-fields{gap:.8rem;margin:1rem 0;display:grid}.admin-template-fields>article{background:#f8f4ee;border:1px solid #ddd5c5;gap:.7rem;padding:.9rem;display:grid}.admin-template-fields>article>label:not(.admin-checkbox){color:#46534c;gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.admin-template-fields>article small{color:#7c877f;font-size:.72rem}.admin-template-add-field{border-top:1px solid #ddd5c5;padding-top:.85rem}.admin-template-add-field label{align-items:center;gap:.7rem;font-size:.78rem;font-weight:700;display:flex}.admin-template-add-field select{width:auto}.admin-template-preview{background:#6f855d14;border:1px solid #6f855d59;margin-top:1rem;padding:1.2rem}.admin-template-preview>h2{margin-bottom:.5rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500}.admin-template-save{color:#35563f;margin-top:.35rem;font-size:.74rem}.admin-template-save--pending,.admin-template-save--saving{color:#46534c}.admin-template-save--error{color:#a13f35}.admin-template-canvas{grid-template-columns:minmax(0,1fr) 92px;align-items:start;gap:.8rem;display:grid}.admin-template-main{gap:1rem;min-width:0;display:grid}.admin-template-card{background:#fffdf8;border:1px solid #ddd5c5;border-top:5px solid #35563f;padding:1.1rem}.admin-template-card label{color:#46534c;gap:.35rem;font-size:.76rem;font-weight:700;display:grid}.admin-template-card--form{gap:.9rem;display:grid}.admin-template-card--form input{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem}.admin-template-section{border-top:5px solid #6f855d;padding:0}.admin-template-section.is-active{border-top-color:#35563f}.admin-template-section>header{background:#fffdf8;border-bottom:1px solid #ddd5c5;align-items:start;padding:1rem}.admin-template-section>header>div:first-child{flex:1;gap:.45rem;display:grid}.admin-template-section>header>div:first-child>span{color:#35563f;text-transform:uppercase;font-size:.7rem;font-weight:700}.admin-template-section>header>div:first-child input{font-size:1.1rem;font-weight:700}.admin-template-section>header>div:first-child textarea{resize:vertical}.admin-template-question{background:#fffdf8!important;border-left:4px solid #0000!important;padding:.55rem 1rem 1rem!important}.admin-template-question:focus-within{box-shadow:0 5px 20px #10251c12;border-left-color:#6f855d!important}.admin-template-question footer{border-top:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:1rem;padding-top:.8rem;display:flex}.admin-template-question footer>div{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.admin-template-question footer button{color:#35563f;font-size:.74rem;font-weight:700}.admin-template-drag{color:#7c877f;cursor:grab;text-align:center;font-size:1.2rem;line-height:1}.admin-template-question__top{grid-template-columns:minmax(0,1fr) minmax(180px,.38fr);align-items:start;gap:.8rem;display:grid}.admin-template-question__top label{color:#46534c;gap:.35rem;font-size:.76rem;font-weight:700;display:grid}.admin-template-question__top textarea{resize:vertical}.admin-template-help{color:#46534c;gap:.35rem;font-size:.76rem;font-weight:700;display:grid}.admin-template-options{gap:.5rem;display:grid}.admin-template-options>span{color:#46534c;font-size:.74rem;font-weight:700}.admin-template-options>div{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;display:grid}.admin-template-options>div>span{color:#7c877f}.admin-template-options>div>button{color:#a13f35;font-size:1.1rem}.admin-template-options>button{color:#35563f;justify-self:start;font-size:.75rem;font-weight:700}.admin-template-grid-config{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.admin-template-grid-config label{color:#46534c;gap:.35rem;font-size:.76rem;font-weight:700;display:grid}.admin-template-grid-config small{color:#7c877f}.admin-template-grid-config textarea{resize:vertical}.admin-template-routes{background:#6f855d14;gap:.55rem;padding:.75rem;display:grid}.admin-template-routes>label:not(.admin-checkbox){grid-template-columns:minmax(100px,.4fr) minmax(180px,1fr);align-items:center;gap:.55rem;font-size:.74rem;display:grid}.admin-template-add-inline{color:#46534c;background:#fffdf8;border-top:1px solid #ddd5c5;align-items:center;gap:.7rem;padding:.9rem 1rem;font-size:.76rem;font-weight:700;display:flex}.admin-template-add-inline select{width:auto}.admin-template-insert{background:#fffdf8;border:1px solid #ddd5c5;gap:.2rem;padding:.35rem;display:grid;position:sticky;top:1rem}.admin-template-insert button{color:#46534c;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .2rem;font-size:.65rem;display:flex}.admin-template-insert button span{color:#35563f;font-size:1.15rem}.admin-template-insert button:hover,.admin-template-insert button:focus-visible{background:#6f855d1f}.admin-template-preview summary{color:#35563f;cursor:pointer;font-weight:700}.admin-template-preview[open] summary{margin-bottom:1rem}.admin-response-files{gap:.35rem;display:grid}.admin-response-files li{align-items:center;gap:.7rem;display:flex}.admin-response-files button{color:#35563f;font-weight:700;text-decoration:underline}.admin-response-files span{color:#7c877f;font-size:.7rem}@media (width<=900px){.admin-filters--patients{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.admin-filters--patients,.admin-generated-link,.admin-access-card dl{grid-template-columns:1fr}.admin-patient-detail .admin-page-header__actions{width:100%;display:grid}.admin-patient-detail .admin-page-header__actions .button{width:100%}.clinical-timeline article>header,.admin-form-assignments>article>header{flex-direction:column;align-items:stretch}.admin-template-layout{grid-template-columns:1fr}.admin-template-list{grid-auto-columns:minmax(210px,80%);grid-auto-flow:column;overflow-x:auto}.admin-template-toolbar,.admin-template-section>header,.admin-template-field__heading{flex-direction:column;align-items:stretch}.admin-template-meta,.admin-template-canvas{grid-template-columns:1fr}.admin-template-insert{z-index:5;order:-1;grid-template-columns:repeat(4,1fr);position:sticky;top:auto;bottom:0}.admin-template-question__top,.admin-template-grid-config,.admin-template-routes>label:not(.admin-checkbox){grid-template-columns:1fr}.admin-template-question footer{flex-direction:column;align-items:stretch}.admin-response-editor__grid label{grid-template-columns:1fr}}.calendar-appointment-detail__patient-link{color:#35563f;border:1px solid #ddd5c5;align-items:center;gap:.35rem;min-height:32px;margin-top:.6rem;padding:.35rem .55rem;font-size:.68rem;font-weight:700;display:inline-flex}.calendar-appointment-detail__patient-link:hover,.calendar-appointment-detail__patient-link:focus-visible{background:#6f855d1a;border-color:#6f855d;outline:0}.calendar-appointment-detail__unlinked{font-style:italic}.portal-access-page,.public-form-page{background:#f8f4ee;min-height:calc(100vh - 180px);padding:clamp(7rem,12vw,9rem) clamp(1rem,5vw,4rem) 4rem}.portal-access-card,.public-form-card{background:#fffdf8;border:1px solid #ddd5c5;max-width:760px;margin:0 auto;padding:clamp(1.4rem,5vw,3rem)}.portal-access-card{max-width:500px}.portal-access-card h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.3rem,7vw,3.5rem);font-weight:500;line-height:1}.portal-access-card>p{color:#46534c;margin:1rem 0}.portal-access-card form{gap:.7rem;margin:1.4rem 0;display:grid}.portal-access-card input{background:#fff;border:1px solid #ddd5c5;width:100%;min-height:48px;padding:.8rem}.portal-access-card input:focus{border-color:#6f855d;outline:3px solid #6f855d26}.portal-access-card input[aria-invalid=true]{border-color:#a13f35}.portal-access-actions{border-top:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:1.25rem;margin-top:1.8rem;padding-top:1.2rem;display:flex}.portal-access-actions a{color:#35563f;font-size:.88rem;font-weight:700}.portal-feedback{color:#46534c;background:#6f855d1f;border-left:3px solid #35563f;margin:1rem 0;padding:1rem}.portal-feedback h2{color:#1e2420;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.6rem}.portal-error{color:#a13f35;margin:.7rem 0}.portal-error button{color:#35563f;font-weight:700}.portal-password-requirements{background:#f8f4ee;border:1px solid #ddd5c5;gap:.4rem;margin:-.1rem 0 .35rem;padding:.75rem;list-style:none;display:grid}.portal-password-requirements li{color:#46534c;font-size:.8rem}.portal-password-requirements strong{color:#7c877f}.portal-password-requirements .is-met,.portal-password-requirements .is-met strong{color:#35563f}.portal-state{text-align:center;background:#f8f4ee;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:2rem;display:flex}.portal-state h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2.4rem;font-weight:500}.patient-shell{background:#f8f4ee;min-height:100vh}.patient-header{color:#fff;background:#10251c;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:1rem clamp(1rem,5vw,4rem);display:grid}.patient-header__brand{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.35rem}.patient-header__link-short{display:none}.patient-header nav{justify-content:center;gap:.4rem;display:flex}.patient-header nav a{color:#ffffffb3;align-items:center;gap:.35rem;padding:.55rem .75rem;font-size:.75rem;display:inline-flex}.patient-header nav a.is-active{color:#fff;background:#ffffff1a}.patient-header__account{flex-direction:column;align-items:flex-end;min-width:0;font-size:.72rem;display:flex}.patient-header__account span{text-overflow:ellipsis;white-space:nowrap;max-width:15rem;overflow:hidden}.patient-header__account button{color:#ffffffb3;font-size:.7rem;text-decoration:underline}.patient-nav-badge,.admin-nav-badge{color:#10251c;background:#9a6d3f;border-radius:50%;justify-content:center;align-items:center;min-width:1.2rem;height:1.2rem;padding:0 .2rem;font-size:.64rem;font-weight:700;display:inline-flex}.patient-main{max-width:1120px;margin:0 auto;padding:clamp(2rem,6vw,4rem) clamp(1rem,5vw,4rem)}.patient-page>h2{margin-bottom:.8rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500}.patient-page__heading{max-width:750px;margin-bottom:2rem}.patient-page__heading h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.4rem,7vw,4rem);font-weight:500;line-height:1}.patient-page__heading>p:last-child{color:#46534c;margin-top:.8rem}.patient-page__heading--actions{justify-content:space-between;align-items:end;max-width:none;display:flex}.patient-page__heading--actions .button{flex:none}.patient-page__subheading{margin-top:2.5rem}.patient-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.patient-card{background:#fffdf8;border:1px solid #ddd5c5;padding:1.5rem}.patient-card h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.patient-card>p:not(.section-label){color:#46534c;margin:.5rem 0 1rem}.patient-card a{color:#35563f;font-weight:700}.patient-list{gap:.75rem;display:grid}.patient-list article{background:#fffdf8;border:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem;display:flex}.patient-list article h2,.patient-list article h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500}.patient-list article p,.patient-list article small{color:#46534c}.patient-list article .button{flex:none}.patient-empty{color:#46534c;background:#fffdf8;border:1px solid #ddd5c5;padding:1.2rem}.portal-appointment{flex-wrap:wrap}.portal-appointment .portal-appointment__actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.portal-appointment__cancel{color:#a13f35;font-size:.78rem;font-weight:700}.portal-appointment__notice{color:#46534c;width:100%;margin:0;font-size:.78rem}.portal-appointment__panel{border-top:1px solid #ddd5c5;gap:.8rem;width:100%;margin-top:.35rem;padding-top:1rem;display:grid}.portal-appointment__panel h4{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.35rem}.portal-appointment__panel>p{color:#46534c}.portal-appointment__panel .booking-widget__schedule{grid-template-columns:minmax(0,1fr) minmax(180px,.8fr);gap:.8rem;display:grid}.patient-shared-notes{margin-top:2.5rem}.patient-shared-notes h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.patient-shared-notes article{background:#fffdf8;border-left:3px solid #6f855d;margin-top:.8rem;padding:1.1rem}.patient-shared-notes article h3{margin-bottom:.4rem}.patient-shared-notes article p{white-space:pre-wrap}.patient-shared-notes article time{color:#7c877f;margin-top:.7rem;font-size:.75rem;display:block}.patient-profile-form{background:#fffdf8;border:1px solid #ddd5c5;gap:1rem;max-width:650px;padding:1.5rem;display:grid}.patient-profile-form label{gap:.35rem;display:grid}.patient-profile-form input{background:#fff;border:1px solid #ddd5c5;min-height:46px;padding:.75rem}.patient-profile-form input:disabled{color:#46534c;background:#ede7da}.patient-profile-form input:focus{border-color:#6f855d;outline:3px solid #6f855d26}.patient-profile-form .button{justify-self:start}.food-log-form{background:#fffdf8;border:1px solid #ddd5c5;gap:1rem;max-width:760px;padding:clamp(1rem,3vw,1.5rem);display:grid}.food-log-form>div:not(.food-log-upload-previews){grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.food-log-form label{gap:.35rem;font-weight:700;display:grid}.food-log-form input,.food-log-form select,.food-log-form textarea{background:#fff;border:1px solid #ddd5c5;width:100%;min-height:46px;padding:.75rem}.food-log-form input:focus,.food-log-form select:focus,.food-log-form textarea:focus{border-color:#6f855d;outline:3px solid #6f855d26}.food-log-form textarea{resize:vertical}.food-log-form small{color:#46534c;font-size:.78rem}.food-log-form .button{justify-self:start;min-width:190px}.food-log-upload-previews{grid-template-columns:repeat(4,minmax(0,100px));gap:.65rem;display:grid}.food-log-upload-previews>div{aspect-ratio:4/5;position:relative}.food-log-upload-previews>div .image-placeholder{height:100%}.food-log-upload-previews>div img{object-fit:cover}.food-log-upload-previews>div>span{color:#fff;background:#10251c;border-radius:50%;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.68rem;display:flex;position:absolute;top:.35rem;left:.35rem}.food-log-upload-previews>div>button{background:#fffdf8;border-radius:50%;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;font-size:1rem;display:flex;position:absolute;top:.35rem;right:.35rem;box-shadow:0 2px 8px #10251c2e}.food-log-browser{margin-top:1rem}.food-log-filters{background:#fffdf8;border:1px solid #ddd5c5;grid-template-columns:minmax(150px,1fr) repeat(2,minmax(145px,1fr)) minmax(180px,auto);align-items:end;gap:.8rem;padding:1rem;display:grid}.food-log-filters label:not(.food-log-filters__check){color:#46534c;gap:.35rem;font-size:.76rem;font-weight:700;display:grid}.food-log-filters input,.food-log-filters select{background:#fff;border:1px solid #ddd5c5;width:100%;min-height:42px;padding:.6rem}.food-log-filters__check{align-items:center;gap:.5rem;min-height:42px;font-size:.78rem;display:flex}.food-log-filters__check input{accent-color:#35563f;width:auto;min-height:auto}.food-log-filters__actions{grid-column:1/-1;justify-content:flex-end;gap:.7rem;display:flex}.food-log-filters__actions .button{min-height:40px;padding:.65rem 1rem}.food-log-filters__actions>button:last-child{color:#35563f;padding:.65rem;font-size:.78rem;font-weight:700}.food-log-list{gap:.65rem;margin-top:1rem;display:grid}.food-log-entry{background:#fffdf8;border:1px solid #ddd5c5;transition:border-color .18s,box-shadow .18s}.food-log-entry.is-withdrawn{opacity:.72}.food-log-entry.is-expanded{border-color:#6f855dbf;box-shadow:0 10px 28px #10251c0f}.food-log-entry__summary{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;width:100%;min-height:96px;padding:1rem 1.1rem;display:grid}.food-log-entry__summary:hover{background:#6f855d0d}.food-log-entry__summary:focus-visible{outline-offset:-3px;outline:3px solid #6f855d59}.food-log-entry__identity{min-width:0}.food-log-entry__identity h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.4rem;font-weight:500}.food-log-entry__identity>p{color:#46534c;text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem;font-size:.8rem;overflow:hidden}.food-log-entry__meta{color:#46534c;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;font-size:.72rem;display:flex}.food-log-entry__meta>span:not(.status-badge):not(.food-log-entry__chevron):not(.food-log-entry__unread){background:#f8f4ee;padding:.38rem .55rem}.food-log-entry__unread{color:#9a6d3f;background:#9a6d3f26;padding:.38rem .55rem;font-weight:700}.food-log-entry__chevron{color:#35563f;font-size:1.3rem;transition:transform .18s}.food-log-entry.is-expanded .food-log-entry__chevron{transform:rotate(180deg)}.food-log-entry__detail{border-top:1px solid #ddd5c5;padding:clamp(1rem,3vw,1.4rem)}.food-log-entry__note{max-width:760px}.food-log-entry__note h4{letter-spacing:.05em;text-transform:uppercase;margin-bottom:.35rem;font-size:.76rem}.food-log-entry__note p{white-space:pre-wrap}.food-log-entry footer{margin-top:1rem}.food-log-entry footer button{color:#a13f35;font-size:.78rem;font-weight:700}.food-log-entry__toggle{color:#35563f;align-items:center;gap:.35rem;padding:.35rem .15rem .35rem .45rem;font-size:.72rem;font-weight:700;display:inline-flex}.food-log-entry__toggle:focus-visible{outline-offset:2px;outline:3px solid #6f855d59}.food-log-photos{grid-template-columns:repeat(auto-fill,minmax(120px,170px));gap:.7rem;margin:1.2rem 0;display:grid}.food-log-photos>button,.food-log-photos>span{aspect-ratio:4/5;background:#ede7da;width:100%;display:block;overflow:hidden}.food-log-photos>button:focus-visible{outline-offset:2px;outline:3px solid #6f855d}.food-log-photos>button .image-placeholder{height:100%}.food-log-photos>button img{object-fit:cover;transition:transform .25s}.food-log-photos>button:hover img{transform:scale(1.025)}.food-log-photo-skeleton,.food-log-photo-unavailable{min-height:150px}.food-log-photo-unavailable{color:#7c877f;text-align:center;justify-content:center;align-items:center;padding:.6rem;font-size:.72rem;display:flex!important}.food-log-photo-error{color:#a13f35;margin:-.6rem 0 1rem;font-size:.78rem}.food-log-lightbox{z-index:500;background:#10251ce6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.food-log-lightbox__content{width:100%;max-width:min(920px,100vw - 2rem);max-height:calc(100vh - 2rem);display:grid;position:relative}.food-log-lightbox__content>.image-placeholder{background:#ffffff0f;width:100%;height:min(78vh,760px)}.food-log-lightbox__content img{object-fit:contain}.food-log-lightbox__close{z-index:4;background:#fffdf8;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.4rem;display:flex;position:absolute;top:.75rem;right:.75rem}.food-log-lightbox__navigation{background:#fffdf8;justify-content:space-between;align-items:center;padding:.7rem 1rem;display:flex}.food-log-lightbox__navigation button{color:#35563f;font-size:.78rem;font-weight:700}.food-log-lightbox__navigation span{color:#46534c;font-size:.75rem}.food-log-thread{border-top:1px solid #ddd5c5;max-width:800px;margin-top:1.2rem;padding-top:1rem}.food-log-thread>h3{margin-bottom:.7rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500}.food-log-thread>p{color:#46534c}.food-log-thread>div{gap:.55rem;display:grid}.food-log-thread article{background:#f8f4ee;border-left:3px solid #9a6d3f;padding:.75rem .85rem}.food-log-thread article.is-admin{background:#6f855d1f;border-color:#35563f}.food-log-thread article header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.food-log-thread article strong{text-transform:uppercase;font-size:.7rem}.food-log-thread article p{white-space:pre-wrap;margin-top:.35rem;font-size:.88rem}.food-log-thread article time{color:#7c877f;font-size:.68rem}.food-log-thread form{gap:.6rem;margin-top:1rem;display:grid}.food-log-thread label{gap:.35rem;font-weight:700;display:grid}.food-log-thread textarea{resize:vertical;background:#fff;border:1px solid #ddd5c5;padding:.7rem}.food-log-thread textarea:focus{border-color:#6f855d;outline:3px solid #6f855d26}.food-log-thread .button{justify-self:start}.food-log-pagination{border-top:1px solid #ddd5c5;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.9rem;display:flex}.food-log-pagination p,.food-log-pagination span{color:#46534c;font-size:.78rem}.food-log-pagination div{align-items:center;gap:.8rem;display:flex}.food-log-pagination button{color:#35563f;border:1px solid #ddd5c5;min-height:38px;padding:.5rem .75rem;font-size:.76rem;font-weight:700}.food-log-pagination button:disabled{color:#7c877f;opacity:.5}.food-log-results,.food-log-focused-note{color:#46534c;margin-top:.8rem;font-size:.76rem}.food-log-list-loading,.food-log-detail-loading{gap:.65rem;margin-top:1rem;display:grid}.food-log-list-loading span,.food-log-detail-loading span{background:linear-gradient(#ecebea,#faf9f6,#e5e4e1) 0 0/100% 220%;height:88px;animation:1.45s ease-in-out infinite image-placeholder-sweep;display:block}.food-log-detail-loading span{height:28px}.food-log-detail-loading span:nth-child(2){width:80%}.food-log-detail-loading span:nth-child(3){width:55%}.public-form-card--center{text-align:center}.public-form-card--center h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:3rem;font-weight:500}.public-form-card--center p{color:#46534c;margin:.7rem 0 1.4rem}.public-form-success{color:#35563f;background:#6f855d26;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1rem;font-size:2rem;display:inline-flex}.public-form-header{border-bottom:1px solid #ddd5c5;margin-bottom:1.2rem;padding-bottom:1.2rem}.public-form-header h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.3rem,7vw,3.6rem);font-weight:500;line-height:1}.public-form-header>p:not(.section-label){color:#46534c;margin-top:.7rem}.public-form-header__meta{font-size:.76rem}.public-form-progress{background:#ede7da;height:5px;margin-top:1rem;overflow:hidden}.public-form-progress span{background:#6f855d;height:100%;transition:width .2s;display:block}.public-form-save{color:#35563f;text-align:right;margin-bottom:.8rem;font-size:.74rem}.public-form-save--saving{color:#46534c}.public-form-save--error{color:#a13f35}.dynamic-form__section{scroll-margin-top:1.25rem}.dynamic-form__section>h2{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.dynamic-form__section>p{color:#46534c;margin-bottom:1rem}.dynamic-form__field{gap:.4rem;margin:1.2rem 0;display:grid}.dynamic-form__field>label{font-weight:700}.dynamic-form__field input:not([type=radio]):not([type=checkbox]),.dynamic-form__field textarea,.dynamic-form__field select{background:#fff;border:1px solid #ddd5c5;border-radius:2px;width:100%;min-height:48px;padding:.8rem}.dynamic-form__field input:not([type=radio]):not([type=checkbox]):focus,.dynamic-form__field textarea:focus,.dynamic-form__field select:focus{border-color:#6f855d;outline:3px solid #6f855d26}.dynamic-form__field input:not([type=radio]):not([type=checkbox])[aria-invalid=true],.dynamic-form__field textarea[aria-invalid=true],.dynamic-form__field select[aria-invalid=true]{border-color:#a13f35}.dynamic-form__field textarea{resize:vertical}.dynamic-form__field--content{margin:1.4rem 0}.dynamic-form__heading{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:500}.dynamic-form__info,.dynamic-form__help{color:#46534c}.dynamic-form__help{font-size:.78rem}.dynamic-form__error{color:#a13f35;font-size:.78rem;font-weight:600}.dynamic-form__choices{gap:.55rem;display:grid}.dynamic-form__choices label{cursor:pointer;background:#f8f4ee;border:1px solid #ddd5c5;align-items:center;gap:.7rem;padding:.75rem;display:flex}.dynamic-form__choices input{accent-color:#35563f;width:18px;height:18px}.dynamic-form__other{background:#f8f4ee;border:1px solid #ddd5c5;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;padding:.75rem;display:grid}.dynamic-form__other>label{background:0 0;border:0;padding:0}.dynamic-form__other>input{min-height:38px!important}.dynamic-form__grid{gap:.65rem;display:grid}.dynamic-form__grid fieldset{background:#f8f4ee;border:1px solid #ddd5c5;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:.45rem;padding:.75rem;display:grid}.dynamic-form__grid legend{padding:0 .25rem;font-weight:700}.dynamic-form__grid label{align-items:flex-start;gap:.45rem;padding:.35rem;font-size:.78rem;display:flex}.dynamic-form__grid input{accent-color:#35563f;flex:none;width:17px;height:17px;margin-top:.1rem}.dynamic-form__upload{background:#6f855d14;border:1px dashed #6f855d;gap:.55rem;padding:.9rem;display:grid}.dynamic-form__upload input[type=file]{background:0 0!important;border:0!important;min-height:auto!important;padding:0!important}.dynamic-form__upload small{color:#46534c}.dynamic-form__upload ul{gap:.4rem;display:grid}.dynamic-form__upload li{background:#fffdf8;border:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem;display:flex}.dynamic-form__upload li span{overflow-wrap:anywhere;font-size:.78rem}.dynamic-form__upload li button{color:#a13f35;font-size:.74rem;font-weight:700}.dynamic-form__consent{background:#6f855d14;border:1px solid #ddd5c5;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.dynamic-form__consent input{accent-color:#35563f;flex:0 0 18px;height:18px;margin-top:.2rem}.public-form-actions{justify-content:flex-end;gap:.8rem;margin-top:1.5rem;display:flex}.public-form-review .dynamic-form__section{border-bottom:1px solid #ddd5c5;padding:1rem 0}@media (width<=900px){.food-log-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.patient-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.9rem .75rem;padding-block:.85rem}.patient-header__brand{align-self:start}.patient-header__link-full{display:none}.patient-header__link-short{display:inline}.patient-header nav{border-top:1px solid #ffffff24;grid-column:1/-1;justify-content:stretch;gap:.15rem;width:100%;padding-top:.7rem;display:flex}.patient-header nav a{text-align:center;white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0;min-height:42px;padding:.65rem .15rem;font-size:.68rem}.patient-header nav a.is-active{box-shadow:inset 0 -2px #9a6d3f}.patient-header__account{align-items:flex-end;font-size:.66rem;line-height:1.25}.patient-header__account span{max-width:min(42vw,11rem)}.patient-header__account button{margin-top:.2rem;font-size:.66rem}.patient-dashboard{grid-template-columns:1fr}.patient-list article{flex-direction:column;align-items:stretch}.patient-page__heading--actions{flex-direction:column;align-items:stretch;gap:1rem}.patient-page__heading--actions .button{width:100%}.public-form-actions{flex-direction:column-reverse}.portal-access-actions{flex-direction:column;align-items:flex-start;gap:.85rem}.food-log-form>div:not(.food-log-upload-previews),.food-log-filters{grid-template-columns:1fr}.food-log-upload-previews{grid-template-columns:repeat(4,minmax(0,1fr))}.food-log-entry__summary{grid-template-columns:1fr;align-items:stretch}.food-log-entry__meta{justify-content:flex-start}.food-log-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.food-log-pagination{flex-direction:column;align-items:stretch;gap:.8rem}.food-log-pagination div{justify-content:space-between}.food-log-thread article header{flex-direction:column;align-items:flex-start;gap:.15rem}}@media (width<=410px){.patient-header nav a{letter-spacing:-.015em;font-size:.63rem}}@media (width<=760px){.portal-appointment__panel .booking-widget__schedule{grid-template-columns:1fr}}.section-label{color:#9a6d3f;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-size:.72rem;font-weight:700}.section-label--dark{color:#ffffff9e}.section-title{color:#1e2420;letter-spacing:0;margin-bottom:1.35rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.35rem,5vw,4rem);font-weight:500;line-height:1}.section-title em{color:#35563f;font-style:italic;font-weight:300}.section-title--dark{color:#fff}.section-title--dark em{color:#ffffffd9}.button{letter-spacing:.08em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;min-height:46px;padding:.9rem 1.55rem;font-size:.75rem;font-weight:700;transition:background .2s,color .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{color:#fff;background:#35563f}.button--primary:hover{background:#2d4735}.button--light{color:#35563f;background:#fffdf8}.button--text{color:#46534c;text-transform:none;min-height:auto;padding:0}.button--text:after{content:"→";margin-left:.5rem}.button--disabled{color:#7c877f;cursor:default;pointer-events:none;background:#ede7da}.image-placeholder{background:#f2f1ed;display:block;position:relative;overflow:hidden}.image-placeholder__shimmer{opacity:1;pointer-events:none;z-index:1;background:linear-gradient(#ecebea 0%,#faf9f6 45%,#e5e4e1 100%) 0 0/100% 220%;transition:opacity .35s;animation:1.45s ease-in-out infinite image-placeholder-sweep;position:absolute;inset:0}.image-placeholder__image{opacity:1;z-index:2;width:100%;height:100%;display:block;position:relative}.image-placeholder__picture{width:100%;height:100%;display:block}.image-placeholder__fallback{color:#46534c;text-align:center;z-index:3;justify-content:center;align-items:center;padding:.75rem;font-size:.72rem;display:flex;position:absolute;inset:0}.image-placeholder.is-loaded{background:0 0}.image-placeholder.is-loaded .image-placeholder__shimmer{opacity:0}.image-placeholder.is-loaded .image-placeholder__image{opacity:1}.image-placeholder.is-error .image-placeholder__shimmer,.image-placeholder.is-error .image-placeholder__image{opacity:0}@keyframes image-placeholder-sweep{0%{background-position:0 -120%}to{background-position:0 120%}}.navbar{box-sizing:border-box;z-index:100;background:#f8f4ee;border-bottom:1px solid #ddd5c5b8;justify-content:space-between;align-items:center;gap:1.2rem;width:100%;padding:1rem clamp(1rem,5vw,4rem);transition:background .35s,box-shadow .35s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{background:#f8f4ee;box-shadow:0 10px 30px #10251c0f}.navbar__logo{align-items:center;gap:.65rem;min-width:max-content;display:flex}.navbar__logo-icon{flex:0 0 30px;width:30px;height:30px}.navbar__logo-icon .image-placeholder__image{object-fit:contain;opacity:0}.navbar__logo-icon.is-loaded .image-placeholder__image{opacity:.78}.navbar__logo-text{color:#1e2420;white-space:nowrap;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:300;line-height:1}.navbar__links{gap:clamp(.95rem,2.2vw,2.1rem);list-style:none;display:flex}.navbar__links a{color:#1e2420;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:400}.navbar__links a:hover,.navbar__links a[aria-current=page]{color:#35563f}.navbar__cta{color:#fff;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:#35563f;border-radius:4px;padding:.72rem 1.2rem;font-size:.68rem;font-weight:700}.navbar__mobile-cta{display:none}.navbar__hamburger{z-index:102;flex-direction:column;gap:5px;display:none;position:relative}.navbar__hamburger span{background:#1e2420;width:23px;height:1.5px;transition:opacity .2s,transform .2s;display:block}.navbar.is-open .navbar__hamburger span:first-child{transform:translateY(6.5px)rotate(45deg)}.navbar.is-open .navbar__hamburger span:nth-child(2){opacity:0}.navbar.is-open .navbar__hamburger span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.page-route{padding-top:64px}.not-found{min-height:calc(100vh - 210px);padding-top:clamp(9rem,18vh,13rem);padding-bottom:6rem}.not-found .section-title{margin-bottom:2rem}.social-buttons{z-index:90;gap:.75rem;display:grid;position:fixed;bottom:clamp(1rem,2.5vw,1.75rem);right:clamp(1rem,2.5vw,1.75rem)}.social-buttons__link{color:#fff;background:#10251c;border:2px solid #fffdf8eb;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:background-color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:0 8px 22px #10251c38}.social-buttons__link:hover{background:#35563f;transform:translateY(-2px);box-shadow:0 10px 26px #10251c47}.social-buttons__link:focus-visible{outline-offset:3px;outline:3px solid #9a6d3f8c}.social-buttons__link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:28px;height:28px}.social-buttons__icon-dot,.social-buttons__icon-fill{fill:currentColor;stroke:none}.hero{color:#fff;touch-action:pan-y;background:#171815;width:100%;height:clamp(576px,78svh - 64px,776px);min-height:576px;margin-top:64px;position:relative;overflow:hidden}.hero__slides,.hero__slide,.hero__image,.hero__overlay{position:absolute;inset:0}.hero__slide{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .85s cubic-bezier(.16,1,.3,1)}.hero__slide.is-active{opacity:1;pointer-events:auto;visibility:visible;z-index:1}.hero__image{width:100%;height:100%}.hero__image .image-placeholder__image{filter:brightness(1.05)saturate(1.08);object-fit:cover;object-position:var(--hero-image-position,center);width:100%;height:100%;transition:transform 7.5s ease-out;transform:scale(1.035)}.hero__slide.is-active .hero__image .image-placeholder__image{transform:scale(1)}.hero__overlay{z-index:2;background:linear-gradient(90deg,#17181585 0%,#1718153d 40%,#17181500 74%),linear-gradient(#0000 52%,#1718152e 100%)}.hero__content{z-index:3;width:100%;max-width:1120px;padding:clamp(7.5rem,14vh,10rem) clamp(1rem,5vw,4rem) 7rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero__eyebrow,.hero__title,.hero__text,.hero__cta{opacity:0;transform:translateY(22px)}.hero__slide.is-active .hero__eyebrow,.hero__slide.is-active .hero__title,.hero__slide.is-active .hero__text,.hero__slide.is-active .hero__cta{opacity:1;transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1);transform:translateY(0)}.hero__slide.is-active .hero__title{transition-delay:80ms}.hero__slide.is-active .hero__text{transition-delay:.16s}.hero__slide.is-active .hero__cta{transition-delay:.24s}.hero__eyebrow{color:#ffffffdb;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 2px 14px #00000052;align-items:center;gap:.7rem;margin-bottom:1.2rem;font-size:.72rem;font-weight:700;display:flex}.hero__eyebrow:before{content:"";opacity:.75;background:#fff;width:32px;height:1px}.hero__title{color:#fff;letter-spacing:-.02em;text-wrap:balance;text-shadow:0 3px 22px #00000052;max-width:750px;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(3.8rem,7.4vw,7rem);font-weight:300;line-height:.9}.hero__text{color:#ffffffe6;text-wrap:balance;text-shadow:0 2px 14px #00000061;max-width:590px;margin-top:1.5rem;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.7}.hero__cta{color:#10251c;letter-spacing:.1em;text-transform:uppercase;background:#fffdf8;border:1px solid #ffffffb3;border-radius:4px;align-items:center;gap:1rem;min-height:50px;margin-top:2rem;padding:.9rem 1.45rem;font-size:.74rem;font-weight:700;display:inline-flex}.hero__cta span{font-size:1.05rem;transition:transform .2s}.hero__cta:hover{background:#f8f4ee}.hero__cta:hover span{transform:translate(4px)}.hero__cta:focus-visible{outline-offset:4px;outline:3px solid #ffffffb8}.hero__arrow{color:#fff;z-index:4;background:#10251c52;border:1px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:background-color .2s,border-color .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.hero__arrow:hover{background:#10251cb8;border-color:#fff}.hero__arrow:focus-visible{outline-offset:3px;outline:3px solid #ffffffb3}.hero__arrow--previous{left:clamp(1rem,2.5vw,2.25rem)}.hero__arrow--next{right:clamp(1rem,2.5vw,2.25rem)}.hero__controls{z-index:4;align-items:center;gap:1rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero__dots{align-items:center;gap:.55rem;display:flex}.hero__dot{border:1px solid #ffffffd1;border-radius:999px;width:9px;height:9px;transition:background-color .2s,width .3s cubic-bezier(.16,1,.3,1)}.hero__dot.is-active{background:#fff;width:30px}.hero__dot:focus-visible{outline-offset:3px;outline:2px solid #fff}.hero__pause{color:#fff;border:1px solid #ffffff8c;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.65rem;line-height:1;display:flex}.hero__pause:hover{background:#10251c8c}.hero__pause:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (width<=960px){.hero{height:max(586px,100svh - 64px);min-height:586px}.hero__overlay{background:linear-gradient(90deg,#17181580 0%,#17181538 72%,#1718150f 100%),linear-gradient(#0000 46%,#17181533 100%)}.hero__content{padding-left:clamp(2.5rem,8vw,5rem);padding-right:clamp(2.5rem,8vw,5rem)}}@media (width<=640px){.hero{height:max(564px,100svh - 56px);min-height:564px;margin-top:56px}.hero__overlay{background:linear-gradient(90deg,#17181524,#1718150f),linear-gradient(#17181508 0%,#17181547 44%,#1718158f 100%)}.hero__content{padding:6.5rem 1.25rem 7rem;top:auto;bottom:clamp(2.5rem,6vh,3.5rem);transform:translate(-50%)}.hero__eyebrow{margin-bottom:.9rem;font-size:.66rem}.hero__title{max-width:100%;font-size:clamp(3rem,15vw,4.8rem)}.hero__text{max-width:100%;margin-top:1rem;font-size:.98rem;line-height:1.55}.hero__cta{width:auto;min-height:48px;margin-top:1.4rem}.hero__arrow{display:none}.hero__controls{bottom:1.4rem}}@media (prefers-reduced-motion:reduce){.hero__slide,.hero__image .image-placeholder__image,.hero__eyebrow,.hero__title,.hero__text,.hero__cta,.hero__dot{transition:none}.hero__image .image-placeholder__image,.hero__slide.is-active .hero__image .image-placeholder__image{transform:none}}.identity{text-align:center;background:#fffdf8;padding:clamp(4.5rem,8vw,7rem) clamp(1rem,5vw,4rem)}.identity__inner{max-width:900px;margin:0 auto}.identity h2{color:#1e2420;margin-bottom:1.4rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1}.identity p{color:#46534c;font-size:1.05rem}.approach,.profile,.personal,.services,.faq{padding:clamp(4.5rem,8vw,7rem) 0}.approach__inner{gap:2.4rem;display:grid}.approach__header{max-width:760px}.approach__copy{color:#46534c;gap:1rem;max-width:760px;line-height:1.85;display:grid}.approach__cards{grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:1rem;display:grid}.info-card{background:#fffdf8;border:1px solid #ddd5c5;padding:1.6rem}.info-card h3{color:#1e2420;margin-bottom:.7rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:500;line-height:1.05}.info-card p{color:#46534c;font-size:.92rem;line-height:1.7}.profile{background:#fffdf8}.profile__inner{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(3rem,7vw,6rem);display:grid}.profile__image{border-top:1px solid #ddd5c5;padding-top:2rem}.profile__image .image-placeholder{aspect-ratio:4/5;width:100%;height:100%}.profile__image .image-placeholder__image{object-fit:cover}.profile__content{color:#46534c;gap:1rem;line-height:1.85;display:grid}.profile__badges{grid-template-columns:repeat(2,1fr);gap:.9rem;margin-top:1rem;display:grid}.profile__badges article{border-left:1px solid #ddd5c5;padding-left:1rem}.profile__badges h3{color:#1e2420;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:500;line-height:1.05}.profile__badges p{color:#46534c;font-size:.86rem;line-height:1.5}.personal__inner{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(3rem,7vw,6rem);display:grid}.personal__content{color:#46534c;gap:1rem;line-height:1.85;display:grid}.personal__gallery{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.personal__gallery .personal__photo{aspect-ratio:1;border-radius:10px;width:100%;height:100%}.personal__gallery .personal__photo:first-child{aspect-ratio:1.55;grid-column:1/-1}.personal__gallery .personal__photo .image-placeholder__image{object-fit:cover}.personal__gallery .personal__photo:first-child .image-placeholder__image{object-position:center 68%}.services{background:#ede7da}.services__header{margin-bottom:3rem}.services__grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.service-card{background:#fffdf8;border:1px solid #ddd5c5;grid-template-rows:auto 1fr;min-height:100%;display:grid}.service-card__media{aspect-ratio:1.8;width:100%;overflow:hidden}.service-card .image-placeholder{width:100%;height:100%}.service-card .image-placeholder__image{object-fit:cover}.service-card__body{flex-direction:column;gap:1rem;padding:1.4rem;display:flex}.service-card h3{color:#1e2420;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:500;line-height:1.05}.service-card h4{color:#1e2420;letter-spacing:.12em;text-transform:uppercase;font-size:.76rem}.service-card p,.service-card li{color:#46534c;font-size:.92rem;line-height:1.65}.service-card ul{gap:.45rem;list-style:none;display:grid}.service-card ul li{gap:.5rem;display:flex}.service-card ul li:before{color:#6f855d;content:"+";font-weight:700}.service-card .button{width:fit-content;margin-top:auto}.service-card__meta{flex-wrap:wrap;gap:.5rem;display:flex}.service-card__meta span{color:#46534c;background:#f8f4ee;border:1px solid #ddd5c5;padding:.38rem .6rem;font-size:.78rem}.work{color:#fff;background:#10251c;padding:clamp(4.5rem,8vw,7rem) 0}.work__inner{grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,7vw,6rem);display:grid}.work__content{gap:1rem;display:grid}.work__content p{color:#ffffffc7;max-width:520px;line-height:1.8}.work__steps{gap:1rem;display:grid}.work__steps article{border-top:1px solid #ffffff2e;grid-template-columns:3rem 1fr;gap:1rem;padding-top:1.2rem;display:grid}.work__steps span{color:#fff;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:2rem;line-height:1}.work__steps h3{color:#fff;margin-bottom:.35rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:300;line-height:1.1}.work__steps p{color:#ffffffbd;line-height:1.65}.faq{background:#fffdf8}.faq__inner{grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,5vw,4rem);display:grid}.faq__list{gap:1rem;display:grid}.faq__item{border-top:1px solid #ddd5c5}.faq__question{color:#1e2420;text-align:left;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 0;display:flex}.faq__question span:first-child{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500;line-height:1.1}.faq__icon{color:#35563f;border:1px solid #ddd5c5;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;line-height:1;transition:transform .2s;display:flex}.faq__item.is-open .faq__icon{transform:rotate(45deg)}.faq__answer{padding:0 0 1.2rem}.faq__answer p{color:#46534c;line-height:1.75}.contact{color:#1e2420;background:#f8f4ee;padding:clamp(4.5rem,8vw,7rem) 0}.contact__inner{grid-template-columns:1.1fr .9fr;align-items:start;gap:clamp(3rem,7vw,6rem);display:grid}.contact__label{color:#9a6d3f;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;font-size:.72rem;font-weight:700}.contact__title{color:#1e2420;max-width:760px;margin-bottom:1.2rem;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2.6rem,5vw,4.2rem);font-weight:300;line-height:1}.contact__text{color:#46534c;max-width:620px;margin-bottom:2rem;line-height:1.8}.contact__email{color:#46534c;line-height:1.8}.contact__email a{color:#35563f;font-weight:700}.contact__form-card{box-shadow:none;background:#fffdf8;border:1px solid #ddd5c5;border-radius:0;gap:1.2rem;padding:1.6rem;display:grid}.contact__form-header{border-bottom:1px solid #ddd5c5;justify-content:space-between;align-items:center;gap:1rem;margin:-.2rem -.2rem .4rem;padding-bottom:1.2rem;display:flex}.contact__form-header h3{color:#1e2420;margin-bottom:.35rem;font-family:DM Sans,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.1rem;font-weight:700;line-height:1}.contact__form-header p{color:#7c877f;letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;font-weight:700}.contact__form-header span{color:#fff;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#35563f;border-radius:0;padding:.78rem 1rem;font-size:.72rem;font-weight:700}.contact__field{gap:.55rem;display:grid}.contact__field label{color:#1e2420;font-size:.86rem;font-weight:700}.contact__field input,.contact__field select,.contact__field textarea{color:#1e2420;background:#fff;border:1px solid #ddd5c5;border-radius:0;outline:none;width:100%;padding:.95rem 1rem;transition:background-color .2s,border-color .2s,box-shadow .2s}.contact__field input::placeholder,.contact__field select::placeholder,.contact__field textarea::placeholder{color:#7c877f}.contact__field input:focus,.contact__field select:focus,.contact__field textarea:focus{border-color:#6f855d;box-shadow:0 0 0 3px #6f855d29}.contact__field input[aria-invalid=true],.contact__field select[aria-invalid=true],.contact__field textarea[aria-invalid=true]{background:#a13f3506;border-color:#a13f35}.contact__field input[aria-invalid=true]:focus,.contact__field select[aria-invalid=true]:focus,.contact__field textarea[aria-invalid=true]:focus{border-color:#a13f35;box-shadow:0 0 0 3px #a13f351f}.contact__field textarea{resize:vertical;min-height:120px}.contact__hint{color:#46534c;font-size:.88rem}.contact__error{color:#a13f35;margin-top:-.15rem;font-size:.8rem;font-weight:600;line-height:1.45}.contact__whatsapp{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#35563f;border-radius:0;justify-self:start;min-height:46px;margin-top:.3rem;padding:0 1.6rem;font-size:.75rem;font-weight:700;transition:background .2s,transform .2s}.contact__whatsapp:hover{background:#2d4735;transform:translateY(-1px)}.contact__disclaimer{color:#46534c;max-width:520px;margin-top:-.4rem;font-size:.78rem;line-height:1.6}.footer{color:#fff;background:#10251c;padding:3rem clamp(1rem,5vw,4rem) 2rem}.footer__inner{gap:2rem;max-width:1120px;margin:0 auto;display:grid}.footer__brand{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:1.45rem}.footer__tagline,.footer__bottom p,.footer__nav a{color:#ffffff80;font-size:.78rem}.footer__nav{flex-wrap:wrap;gap:1rem 1.5rem;display:flex}.footer__bottom{border-top:1px solid #ffffff1a;padding-top:1.5rem}@media (width<=1280px){.navbar__nav{opacity:0;pointer-events:none;z-index:101;background:#f8f4eefa;border-bottom:1px solid #ddd5c5;padding:5rem 1.25rem 1.4rem;transition:opacity .22s,transform .22s;position:fixed;top:0;left:0;right:0;transform:translateY(-12px);box-shadow:0 22px 36px #10251c14}.navbar__links{flex-direction:column;align-items:stretch;gap:0;display:flex}.navbar__links a{border-top:1px solid #ddd5c5cc;padding:1rem 0;font-size:.84rem;display:block}.navbar__mobile-cta{display:block}.navbar__mobile-cta a{color:#fff;text-align:center;background:#35563f;border:0;border-radius:4px;margin-top:.8rem;padding:.9rem 1rem;font-weight:700}.navbar__mobile-cta a:hover,.navbar__mobile-cta a[aria-current=page]{color:#fff}.navbar__cta{display:none}.navbar__hamburger{display:flex}.navbar.is-open .navbar__nav{opacity:1;pointer-events:auto;transform:translateY(0)}}@media (width<=960px){.profile__inner,.personal__inner,.work__inner,.faq__inner,.contact__inner,.approach__cards,.services__grid{grid-template-columns:1fr}}@media (width<=640px){.button{width:100%;max-width:100%}.navbar{padding:.85rem 1rem}.navbar__logo-icon{width:26px;height:26px}.page-route{padding-top:56px}.social-buttons{gap:.6rem}.social-buttons__link{width:54px;height:54px}.social-buttons__link svg{width:25px;height:25px}.identity,.approach,.profile,.personal,.services,.work,.faq,.contact{padding-top:4.5rem;padding-bottom:4.5rem}.profile__badges,.personal__gallery{grid-template-columns:1fr}.service-card .button{width:100%}}
