@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:none;text-size-adjust:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-block-size:100svh}img,picture,svg,video{block-size:auto;max-inline-size:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{text-wrap:balance}p{text-wrap:pretty}ul[class],ol[class]{padding:0;list-style:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer fonts{@font-face{font-family:roca fallback;src:local(Georgia Bold),local(Georgia-Bold);font-weight:700;font-style:normal;size-adjust:92.0872%;ascent-override:102.62%;descent-override:56.3596%;line-gap-override:0%}@font-face{font-family:roca fallback;src:local(Georgia);font-weight:300;font-style:normal;size-adjust:103.391%;ascent-override:91.4009%;descent-override:50.198%;line-gap-override:0%}}@layer tokens{:root{--color-sand:#fad194;--color-coral:#ff7549;--color-sage:#bcbd8b;--color-blossom:#fadbfa;--color-background:#fff;--color-text:#000;--color-inverse:#fff;--font-heading:"roca", "roca fallback", serif;--font-weight-light:300;--font-weight-regular:400;--font-weight-semibold:600;--font-weight-bold:700;--font-size-xs:.625rem;--font-size-button:.9375rem;--font-size-base:1rem;--font-size-h2:1.5rem;--font-size-button-large:clamp(1.125rem, 1rem + .5vw, 1.375rem);--font-size-h1:clamp(2.5rem, 1.75rem + 2.5vw, 3.75rem);--font-size-display:clamp(2.75rem, 1.5rem + 4.5vw, 5rem);--line-height-body:1.75;--line-height-tight:1.2;--line-height-heading:1.1;--letter-spacing-xs:.01em;--letter-spacing-base:-.011em;--letter-spacing-h2:-.015em;--letter-spacing-caps:.03em;--letter-spacing-caps-large:.02em;--rule-width:1.5px;--rule:var(--rule-width) solid currentColor;--space-2xs:.25rem;--space-xs:.5rem;--space-s:1rem;--space-m:1.5rem;--space-l:clamp(2rem, 1.5rem + 1.5vw, 3rem);--space-xl:clamp(3rem, 2rem + 3vw, 5.25rem);--container-max:89.75rem;--container-padding:clamp(1.25rem, 5.125vw, 5.125rem);--content-indent:clamp(0rem, (100vw - 48rem) * .1455, 7.5625rem);--content-measure:67rem;--grid-gap:.9375rem;--ease-settle:cubic-bezier(.22, 1, .36, 1)}}@layer base{html{color-scheme:light}body{background-color:var(--color-background);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-base)}h1{font-family:var(--font-heading);font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:normal}h2,h3{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-h2)}strong,b{font-weight:var(--font-weight-semibold)}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px;&:hover{text-decoration-thickness:2px}}:focus-visible{outline-offset:3px;outline:2px solid}@keyframes enter{0%{opacity:0;transform:translateY(.75rem)}}}@layer layout{.page{flex-direction:column;display:flex}.page--blossom{--color-background:var(--color-blossom)}main{flex:1}.container{inline-size:100%;max-inline-size:calc(var(--container-max) + 2 * var(--container-padding));padding-inline:var(--container-padding);margin-inline:auto}.page-title{padding-block:var(--space-xl) var(--space-l)}.page-title--indented{padding-block-end:0;padding-inline-start:var(--content-indent)}}@layer components{.button{border:var(--rule-width) solid var(--color-text);background-color:var(--color-text);min-block-size:1.8125rem;color:var(--color-inverse);font-family:var(--font-body);font-size:var(--font-size-button);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-caps);text-align:center;text-transform:uppercase;cursor:pointer;border-radius:100vmax;justify-content:center;align-items:center;padding:.25em 1.25em;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex;&:hover{color:var(--color-text);background-color:#0000}}.button--large{min-block-size:2.625rem;font-size:var(--font-size-button-large);letter-spacing:var(--letter-spacing-caps-large);padding-inline:1.4em}.header{view-transition-name:header;padding-block:clamp(1.25rem,3vw,3rem) clamp(1.25rem,2.9vw,2.875rem)}.header__inner{justify-content:space-between;align-items:center;gap:var(--space-m);display:flex}.header__logo{flex-shrink:0}.header__logo-image{block-size:auto;inline-size:clamp(9.5rem,8rem + 5vw,13rem)}.header__menu{block-size:100dvh;max-block-size:none;inline-size:100%;max-inline-size:none;padding:var(--space-m) var(--container-padding) var(--space-xl);background-color:var(--color-background);color:var(--color-text);gap:var(--space-l);opacity:0;transition:opacity .2s, display .2s allow-discrete, overlay .2s allow-discrete;border:0;flex-direction:column;margin:0;inset:0;&:popover-open{opacity:1;display:flex;@starting-style{opacity:0}}}:root:has(.header__menu:popover-open){overflow:hidden;& .header{view-transition-name:none}}.header__close{align-self:flex-end}.header__actions{flex-wrap:wrap;gap:.75rem;display:flex}@media (width<80rem) and (prefers-reduced-motion:no-preference){.header__menu:popover-open :is(.nav__item,.header__actions){animation:enter .45s var(--ease-settle) backwards;animation-delay:calc(50ms + var(--menu-index) * 40ms)}}@media (width>=80rem){.header__toggle,.header__close{display:none}.header__menu{opacity:1;background:0 0;flex-direction:row;flex:1;align-items:center;block-size:auto;inline-size:auto;padding:0;display:flex;position:static;overflow:visible}.header__actions{flex-wrap:nowrap}}.nav__list{gap:var(--space-s);flex-direction:column;display:flex}.nav__link{font-family:var(--font-heading);font-size:clamp(2rem,1.5rem + 2vw,2.5rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:normal;text-decoration:none;&:hover,&[aria-current=page]{text-decoration:underline;text-decoration-thickness:var(--rule-width);text-underline-offset:.3em}&:hover:not([aria-current=page]){text-decoration-color:color-mix(in srgb, currentColor 30%, transparent)}}@media (width>=80rem){.nav{margin-inline:auto}.nav__list{flex-direction:row;gap:clamp(1.5rem,2.5vw,2.75rem)}.nav__link{font-family:var(--font-body);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-base);position:relative;&:hover,&[aria-current=page]{text-decoration:none}&:after{content:"";block-size:var(--rule-width);opacity:0;background-color:currentColor;transition:opacity .15s ease-out;position:absolute;inset-block-end:-.2em;inset-inline:0}&:hover:after{opacity:.3}&[aria-current=page]:after{opacity:1;view-transition-name:nav-underline}}::view-transition-group(nav-underline){animation-duration:.35s;animation-timing-function:cubic-bezier(.2,0,0,1)}::view-transition-old(nav-underline):only-child{animation-duration:.15s;animation-timing-function:ease-out}}.footer{padding-block:var(--space-l);background-color:var(--color-blossom);margin-block-start:var(--space-xl)}.footer__inner{gap:var(--space-l) var(--grid-gap);grid-template-areas:"appointment""contact""menu""meta";display:grid}.footer__column--appointment{grid-area:appointment}.footer__column--contact{grid-area:contact}.footer__column--menu{grid-area:menu}.footer__header{justify-content:space-between;align-items:center;gap:var(--space-s);padding:0 1.2rem var(--space-s);border-block-end:var(--rule);margin-block-end:var(--space-m);display:flex}.footer__title{letter-spacing:var(--letter-spacing-caps-large);text-transform:uppercase}.footer__icon{flex-shrink:0;block-size:auto;inline-size:2.25rem}.footer__buttons,.footer__address,.footer__list,.footer__meta{padding-inline:1.2rem}.footer__buttons{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.footer__address{font-style:normal;& p+p{margin-block-start:.5lh}}.footer__link{text-decoration:none;&:hover{text-decoration:underline}}.footer__meta{gap:var(--space-2xs) var(--space-s);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-xs);flex-wrap:wrap;grid-area:meta;display:flex}.footer__meta-link{text-decoration:none;&:hover{text-decoration:underline}}@media (width>=48rem){.footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"appointment contact""menu.""meta meta"}}@media (width>=80rem){.footer__inner{row-gap:var(--space-m);grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"appointment contact menu""meta contact menu"}.footer__meta{align-self:end}}.hero__image{aspect-ratio:3/2;object-fit:cover;inline-size:100%}@media (width>=48rem){.hero__image{aspect-ratio:16/7}}.content-block{padding-block:calc(var(--space-xl) / 2);&:not(.content-block--filled):has(+.content-block--filled){padding-block-end:var(--space-xl)}.content-block--filled+&:not(.content-block--filled){padding-block-start:var(--space-xl)}}.content-block--filled{padding-block:var(--space-xl);background-color:var(--content-block-bg);&+&{margin-block-start:var(--space-xl)}main>&:first-of-type{margin-block-start:var(--space-l)}}.content-block--bg-sand{--content-block-bg:var(--color-sand)}.content-block--bg-coral{--content-block-bg:var(--color-coral)}.content-block--bg-sage{--content-block-bg:var(--color-sage)}.content-block__inner{gap:var(--space-l);align-items:center;padding-inline-start:calc(var(--container-padding) + var(--content-indent));display:grid}.content-block__body{max-inline-size:var(--content-measure)}.content-block__image{aspect-ratio:4/3;object-fit:cover;inline-size:100%}.content-block--image-left .content-block__media{order:-1}@media (width>=48rem){.content-block--image-right .content-block__inner{grid-template-columns:minmax(0,421fr) minmax(0,832fr);column-gap:clamp(2rem,4vw,3.875rem)}.content-block--image-left .content-block__inner{padding-inline:var(--container-padding) calc(var(--container-padding) + var(--content-indent));grid-template-columns:minmax(0,832fr) minmax(0,421fr);column-gap:clamp(2rem,4vw,3.875rem)}}.rich-text{&>*+*{margin-block-start:.5lh}& h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-base)}&>*+h3{margin-block-start:1lh}&>h3+*{margin-block-start:0}&>*+h2{margin-block-start:var(--space-xl)}&>h2+*{margin-block-start:var(--space-m)}& ol{padding-inline-start:1.625rem}& li>ol{padding-inline-start:1.25rem}& ul{padding-inline-start:.96875rem;list-style-type:disc;&>li{padding-inline-start:.4375rem}}}.home-hero{text-align:center;flex-direction:column;align-items:center;padding-block:clamp(3rem,1rem + 9vw,10rem) clamp(4rem,1rem + 12vw,13rem);display:flex}.home-hero__mark{block-size:auto;inline-size:clamp(8rem,6rem + 6vw,14.5rem);margin-block-end:clamp(1.5rem,1rem + 3vw,3.5rem)}.home-hero__title{font-size:var(--font-size-display);line-height:var(--line-height-heading);text-wrap:balance}.home-hero__welcome{font-weight:var(--font-weight-light);display:block}.home-hero__name{display:block}.home-hero__button{margin-block-start:clamp(2rem,1rem + 3vw,4rem)}@media (prefers-reduced-motion:no-preference){.home-hero__mark,.home-hero__welcome,.home-hero__name,.home-hero__button{animation:home-hero-enter .7s var(--ease-settle) backwards}.home-hero__mark{--home-hero-enter-from:scale(.96)}.home-hero__welcome{animation-delay:.1s}.home-hero__name{animation-delay:.2s}.home-hero__button{animation-delay:.3s}}@keyframes home-hero-enter{0%{opacity:0;transform:var(--home-hero-enter-from,translateY(.75rem));filter:blur(4px)}}.news__title{border-block-end:var(--rule);font-family:var(--font-heading);font-size:var(--font-size-h1);line-height:var(--line-height-heading);letter-spacing:normal;padding-block-end:var(--space-m)}.news__list{column-gap:clamp(2rem,11.5vw - 4.4rem,6rem);display:grid}.news__column{display:contents}.news__item{border-block-start:var(--rule);display:grid}.news__column:first-child>.news__item:first-child{border-block-start:0}.news-item{padding-block:clamp(2.5rem,1.75rem + 3vw,4.5rem)}.news-item__icon{block-size:2.5rem;inline-size:2.5rem}.news-item__title{margin-block:var(--space-s) var(--space-m)}@media (width>=48rem){.news__list{grid-template-columns:repeat(2,minmax(0,1fr))}.news__column:nth-child(2)>.news__item:first-child{border-block-start:0}}@media (width>=64rem){.news__list{grid-template-columns:repeat(3,minmax(0,1fr))}.news__column{display:block}.news__item:first-child{border-block-start:0}}.home-sections{padding-block-start:var(--space-xl)}.home-section{gap:var(--space-l);padding-block:var(--space-m);border-block-start:var(--rule);align-items:center;display:grid;&:last-child{border-block-end:var(--rule)}}.home-section__image{aspect-ratio:4/3;object-fit:cover;inline-size:100%}.home-section__title{font-family:var(--font-heading);font-size:var(--font-size-h1);line-height:var(--line-height-heading);letter-spacing:normal;margin-block-end:var(--space-l)}@media (width>=48rem){.home-section{column-gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr))}}.team-intro{gap:var(--space-m) var(--grid-gap);padding-block:var(--space-xl);display:grid}.team-intro__text{font-weight:var(--font-weight-semibold)}.team-list{gap:calc(var(--space-xl) * 1.25) var(--space-l);padding-block-end:var(--space-l);display:grid}.team-member{text-align:center;flex-direction:column;align-items:center;display:flex}.team-member__photo{aspect-ratio:1;object-fit:cover;inline-size:100%;max-inline-size:20rem;margin-block-end:var(--space-l)}.team-member__button{margin-block-start:var(--space-m)}@media (width>=36rem){.team-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.team-intro{grid-template-columns:repeat(3,minmax(0,1fr))}.team-intro__text{grid-column:2/-1}.team-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.contact{gap:var(--space-l);align-items:start;display:grid}.contact__map{overflow:hidden}.contact__map-image{aspect-ratio:589/528;object-fit:cover;inline-size:100%}@media (hover:hover) and (prefers-reduced-motion:no-preference){.contact__map-image{transition:scale .6s var(--ease-settle)}.contact__map:hover .contact__map-image{scale:1.03}}.contact__details{border-block-start:var(--rule);container-type:inline-size}.contact__row,.contact__actions{border-block-end:var(--rule);padding:1.25rem 0}.contact__row{gap:0 var(--space-m);display:grid}.contact__value{font-weight:var(--font-weight-semibold);overflow-wrap:anywhere}.contact__link{text-decoration:none;&:hover{text-decoration:underline}}.contact__actions{flex-wrap:wrap;gap:.75rem;display:flex}@container (width>=24rem){.contact__row,.contact__actions{padding-inline:1.25rem}}@container (width>=36rem){.contact__row,.contact__actions{padding-block:1.75rem}.contact__row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.contact{grid-template-columns:minmax(0,589fr) minmax(0,796fr);column-gap:clamp(2rem,3.2vw,3.2rem)}}}@layer utilities{.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;padding:var(--space-xs) var(--space-s);background-color:var(--color-background);position:absolute;inset-block-start:var(--space-xs);inset-inline-start:var(--space-xs);translate:0 -200%;&:focus-visible{translate:0}}}
