:root{--page-padding:38px;--header-height:80px;--color-bg:#f7f5f4;--color-text:#101010;--color-text-muted:#62615f;--color-text-light:#a7a5a3;--color-border:#cdc3bb;--color-accent-soft:#c6b6ab;--color-accent:#9d8574;--color-accent-dark:#8c6f5b;--color-footer:#141414;--color-footer-text:#f9f8f8;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--shadow-sm:0 4px 12px #00000014;--shadow-md:0 10px 30px #0000001f;--container-width:1200px;--font-heading:Georgia, "Times New Roman", serif;--font-body:Arial, Helvetica, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--color-text);font-family:var(--font-body)}a{color:inherit;text-decoration:none}ul{list-style:none}.colored_word{color:#856951}.site-header{z-index:1000;background-color:#f7f4f1;border-bottom:1px solid #b79d8a47;width:100%;position:sticky;top:0}.navbar{width:100%;min-height:var(--header-height);padding-inline:var(--page-padding);justify-content:space-between;align-items:center;gap:48px;display:flex}.navbar__brand{color:#1f1a17;align-items:center;gap:18px;text-decoration:none;display:flex}.navbar__logo{object-fit:contain;flex-shrink:0;width:72px;height:72px;display:block}.navbar__brandText{flex-direction:column;align-items:center;display:flex}.navbar__name{color:#1f1a17;letter-spacing:.38em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:400;line-height:1}.navbar__role{color:#856951;letter-spacing:.48em;margin:7px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:8px;font-weight:500;line-height:1}.navbar__links{align-items:center;gap:48px;margin:0;padding:0 40px;list-style:none;display:flex}.navbar__links a{color:#1f1a17;padding-block:12px;font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:400;text-decoration:none;transition:color .18s;position:relative}.navbar__links a:after{content:"";transform-origin:50%;background-color:#8e7463;height:1px;transition:transform .18s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.navbar__links a:hover{color:#8e7463}.navbar__links a:hover:after{transform:scaleX(1)}@media (width<=900px){.navbar{width:100%;min-height:74px;padding-inline:24px;position:relative}.navbar__links{display:none}.navbar__logo{width:60px;height:60px}.navbar__name{letter-spacing:.3em;font-size:13px}.navbar__role{letter-spacing:.38em;font-size:7px}}.navbar__toggle{color:#1f1a17;cursor:pointer;background:0 0;border:none;padding:0;font-size:28px;display:none}@media (width<=900px){.navbar{position:relative}.navbar__brand{gap:12px}.navbar__logo{width:52px;height:52px;transform:translateY(-2px)}.navbar__toggle{justify-content:center;align-items:center;display:flex}.navbar__links{background-color:#f7f4f1;border-top:1px solid #b79d8a47;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;display:none;position:absolute;top:100%;left:0;right:0}.navbar__links--open{display:flex}}.hero{padding-inline:var(--page-padding);background-color:#f7f4f1}.hero__inner{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);align-items:center;gap:56px;display:grid}.hero__content{align-self:center;max-width:1000px;padding-left:20%;transform:translateY(25px)}.hero__eyebrow{color:#856951;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;font-size:13px;font-weight:500;line-height:1.4}.hero__title{color:#1f1a17;letter-spacing:-.03em;max-width:720px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,4.8vw,76px);font-weight:400;line-height:1.02}.hero__text{color:#574c45;max-width:620px;margin-top:28px;font-size:17px;line-height:1.75}.hero__buttons{align-items:center;gap:16px;margin-top:34px;display:flex}.button{text-transform:uppercase;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;min-height:48px;padding:0 26px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .18s,color .18s,border-color .18s,transform .18s;display:inline-flex}.booking__button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{color:#fff;background-color:#806656;border-color:#806656}.button--primary:hover{color:#fff;background-color:#806656}.button--secondary{color:#1f1a17;background-color:#0000;border-color:#cfc3ba}.button--secondary:hover{color:#8e7463;border-color:#8e7463}.hero__skills{flex-wrap:wrap;align-items:flex-start;gap:30px;margin-top:42px;display:flex}.hero__skill{color:#8e7463;flex-direction:column;align-items:center;gap:8px;display:flex}.hero__skill svg{font-size:25px}.hero__skill span{color:#574c45;font-size:11px}.hero__visual{justify-content:flex-end;align-self:start;align-items:flex-start;min-width:0;height:100%;display:flex}.hero__image{width:100%;max-width:500px;margin-right:16%;transform:translateY(-10px)}@media (width<=1050px){.hero__inner{grid-template-columns:1fr;align-items:start;gap:42px;min-height:auto;padding-bottom:0}.hero__content{align-self:auto;max-width:780px;padding-bottom:0}.hero__visual{justify-content:flex-start;height:auto}.hero__image{max-width:520px;max-height:none}}@media (width<=700px){.hero__inner{gap:36px;min-height:auto;padding-bottom:0}.hero__eyebrow{letter-spacing:.13em;margin-bottom:12px;font-size:11px}.hero__title{font-size:clamp(32px,6vw,48px);line-height:1.06}.hero__text{margin-top:22px;font-size:16px;line-height:1.65}.hero__buttons{flex-direction:column;align-items:stretch;margin-top:28px}.button{width:100%}.hero__skills{gap:22px;margin-top:34px}.hero__skill svg{font-size:23px}.hero__visual{justify-content:center}.hero__image{max-width:360px;margin-inline:auto}.hero__content{width:100%;max-width:420px;margin-inline:auto;padding-left:0;transform:none}.hero__visual{display:none}.about__image-wrapper{width:88%;margin-inline:auto}.about__image{width:100%;height:auto;display:block}}.services{background-color:#f1ebe5;padding:7rem 2rem}.services__header{text-align:center;max-width:720px;margin:0 auto 4rem}.services__eyebrow{color:#765f51;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;font-size:.85rem;font-weight:600;display:inline-block}.services__header h2{color:#1f1a17;margin:0 0 1rem;font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:500;line-height:1.1}.services__header p{color:#574c45;margin:0;font-size:1rem;line-height:1.7}.services__category{width:100%;max-width:1200px;margin:0 auto 5rem}.services__category:last-of-type{margin-bottom:3rem}.services__category-header{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-bottom:2rem;scroll-margin-top:120px;display:flex}.services__category-header h3{color:#1f1a17;margin:0;font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:500;line-height:1.15}.services__category-header p{color:#574c45;text-align:center;width:100%;max-width:650px;margin:0 auto;font-size:1rem;line-height:1.7}.services__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid}.services__card{background-color:#fffdf9;border:1px solid #cbb9ac;border-radius:20px;flex-direction:column;height:100%;padding:2rem;display:flex;box-shadow:0 12px 35px #392b230f}.services__card:hover{border-color:#9d8574;transform:translateY(-6px);box-shadow:0 18px 45px #392b231a}.services__icon{color:#765f51;border:1px solid #cbb9ac;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:1.5rem;font-size:1.35rem;display:grid}.services__subtitle{color:#765f51;margin:0 0 .5rem;font-size:.85rem;font-weight:600;line-height:1.5}.services__card h4{color:#1f1a17;margin:0 0 1rem;font-family:Georgia,serif;font-size:1.55rem;font-weight:500;line-height:1.25}.services__card>p:not(.services__subtitle){color:#574c45;min-height:3.5rem;margin:0 0 1.5rem;line-height:1.7}.services__card ul{border-top:1px solid #ded4cc;flex-direction:column;gap:.75rem;min-height:150px;margin-top:auto;margin-bottom:0;padding:1.25rem 0 0;list-style:none;display:flex}.services__card li{color:#574c45;padding-left:1.4rem;font-size:.95rem;line-height:1.5;position:relative}.services__card li:before{color:#765f51;content:"✓";position:absolute;top:0;left:0}.services__cta{justify-content:center;margin-top:1rem;display:flex}.services__button{color:#fffdf9;background-color:#806656;border:1px solid #806656;border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:.85rem 1.8rem;font-weight:600;text-decoration:none;transition:background-color .25s,color .25s,transform .25s;display:inline-flex}.services__button:hover{color:#765f51;background-color:#0000;transform:translateY(-2px)}@media (width<=950px){.services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.services{padding:5rem 1.25rem}.services__header h2{font-size:2.3rem}.services__category{margin-bottom:4rem}.services__category-header{margin-bottom:1.5rem}.services__category-header h3{font-size:2rem}.services__grid{grid-template-columns:1fr}.services__card{border-radius:16px;padding:1.5rem}.services__cta{justify-content:stretch}.services__button{width:100%}}.about{background-color:#f7f4f1;padding:6rem 1.5rem}.about__inner{width:100%;max-width:1200px;margin:0 auto}.about__hero{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:center;gap:4rem;margin-bottom:3rem;display:grid}.about__content{max-width:700px}.about .section-eyebrow,.about-card__eyebrow{color:#806656;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;font-size:.78rem;font-weight:600}.about__content h2{color:#1f1a17;margin:0 0 1.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.3rem,4vw,4rem);font-weight:500;line-height:1.05}.about__lead{color:#574c45;max-width:650px;margin:0;font-size:1rem;line-height:1.8}.about__image-wrapper{aspect-ratio:1.35;background-color:#eee7e1;border-radius:20px;width:100%;overflow:hidden}.about__image{object-fit:cover;object-position:center 25%;width:100%;height:100%;display:block}.about__cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid}.about-card{background-color:#fffdf9;border:1px solid #ddd1c8;border-radius:20px;flex-direction:column;min-height:360px;padding:1.75rem;display:flex;box-shadow:0 12px 30px #4c3a300d}.about-card h3{color:#1f1a17;margin:20px 0 .25rem;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:500;line-height:1.15}.about-card p:not(.about-card__eyebrow){color:#574c45;margin-top:14px;font-size:.95rem;line-height:1.7}.about-card__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.about-card__icon{color:#806656;width:24px;height:24px}.about-card__icon-wrapper{background-color:#f1ebe6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.about-card p+p{margin-top:1rem}.about-card__header .about-card__eyebrow{margin:0}.about-card__tags{flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1.5rem;display:flex}.about-card__tags span{color:#574c45;background-color:#f7f4f1;border:1px solid #d8cbc2;border-radius:999px;padding:.45rem .75rem;font-size:.78rem}.about-card--accessibility{position:relative}.about-card__accessibility-content{flex-direction:column;height:100%;display:flex}.about-card__button{color:#fffdf9;background-color:#806656;border:1px solid #806656;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;min-height:48px;margin-top:auto;padding:.8rem 1.4rem;font-weight:600;text-decoration:none;transition:background-color .25s,color .25s,transform .25s;display:inline-flex}.about-card__button:hover{background-color:#6f5749;transform:translateY(-2px)}.about-card h3:after{content:"";background-color:#b69b89;width:42px;height:2px;margin-top:1rem;display:block}@media (width<=900px){.about__hero{grid-template-columns:1fr;gap:2.5rem}.about__image-wrapper{max-width:560px}.about__cards{grid-template-columns:1fr}.about-card{min-height:auto}}@media (width<=650px){.about{padding:4rem 1rem}.about__hero{gap:2rem;margin-bottom:2rem}.about__content h2{font-size:2.35rem}.about__lead{font-size:1rem;line-height:1.75}.about__image-wrapper{aspect-ratio:4/3}.about__cards{gap:1rem}.about-card{padding:1.4rem}.about-card h3{font-size:1.55rem}.about-card__button{width:100%}}.projects{background-color:#f1ebe5;padding:7rem 2rem}.section-heading{text-align:center;max-width:720px;margin:0 auto 4rem}.projects .section-eyebrow{color:#765f51;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.85rem;font-weight:600}.section-heading h2{color:#1f1a17;margin:0 0 1rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:500;line-height:1.1}.section-heading>p:last-child{color:#6f625a;margin:0;font-size:1rem;line-height:1.7}.projects__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.project-card{background-color:#fffdf9;border:1px solid #cdc3bb;border-radius:20px;flex-direction:column;min-height:100%;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden;box-shadow:0 12px 35px #392b230f}.project-card:hover{border-color:#b79d8a;transform:translateY(-6px);box-shadow:0 18px 45px #392b231a}.project-card__image{aspect-ratio:16/10;background-color:#eee7e1;position:relative;overflow:hidden}.project-card__image img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.project-card:hover .project-card__image img{transform:scale(1.03)}.project-card__category{color:#6f625a;letter-spacing:.05em;text-transform:uppercase;background-color:#fffdf9e6;border-radius:999px;padding:.45rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;left:1rem}.project-card__content{flex-direction:column;flex:1;padding:1.75rem;display:flex}.project-card__content h3{color:#1f1a17;margin:0 0 .8rem;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:500;line-height:1.25}.project-card__content>p{color:#655a53;margin:0 0 1.4rem;line-height:1.7}.project-card__tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.project-card__tags span{color:#6f625a;border:1px solid #ddd2ca;border-radius:999px;padding:.4rem .7rem;font-size:.78rem;line-height:1}.project-card__links{flex-wrap:wrap;gap:1rem;margin-top:auto;display:flex}.project-card__link{color:#8e7463;font-size:.9rem;font-weight:700;text-decoration:none;transition:color .2s,transform .2s}.project-card__link:hover{color:#1f1a17;transform:translate(3px)}.project-card__link--secondary{color:#6f625a}.project-card:nth-last-child(2):nth-child(3n+1){grid-column:1/2}.project-card:last-child:nth-child(3n+2){grid-column:2/3}@media (width<=950px){.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card:nth-last-child(2):nth-child(3n+1),.project-card:last-child:nth-child(3n+2){grid-column:auto}}@media (width<=650px){.projects{padding:5rem 1.25rem}.section-heading{text-align:left;margin-bottom:3rem}.projects__grid{grid-template-columns:1fr}.project-card{border-radius:16px}.project-card__content{padding:1.4rem}}.contact{background-color:#f7f4f1;padding:7rem 2rem}.contact__inner{width:100%;max-width:900px;margin:0 auto}.contact__card{background-color:#fffdf9;border:1px solid #cbb9ac;border-radius:20px;padding:3rem;box-shadow:0 12px 35px #392b230f}.contact .section-eyebrow{color:#765f51;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.85rem;font-weight:600}.contact__card h2{color:#1f1a17;max-width:700px;margin:0 0 1.25rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:500;line-height:1.1}.contact__description{color:#574c45;max-width:720px;margin:0 0 2.5rem;font-size:1.05rem;line-height:1.8}.contact__info{border-top:1px solid #ded4cc;border-bottom:1px solid #ded4cc;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-bottom:2rem;padding:1.75rem 0;display:grid}.contact__item{min-width:0}.contact__item span{color:#765f51;margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.contact__item p{color:#574c45;margin:0;line-height:1.6}.contact__item a{color:#574c45;overflow-wrap:anywhere;text-underline-offset:3px;line-height:1.6}.contact__item a:hover{color:#1f1a17}.contact__button{color:#fffdf9;background-color:#806656;border:1px solid #806656;border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:.85rem 1.8rem;font-weight:600;text-decoration:none;transition:background-color .25s,color .25s,transform .25s;display:inline-flex}.contact__button:hover{color:#765f51;background-color:#0000;transform:translateY(-2px)}.contact__button:focus-visible,.contact__item a:focus-visible{outline-offset:3px;outline:3px solid #1f1a17}.contact__button-icon{margin-left:.7rem;font-size:1.2rem}@media (width<=800px){.contact__info{grid-template-columns:1fr;gap:1.5rem}}@media (width<=650px){.contact{padding:5rem 1.25rem}.contact__card{border-radius:16px;padding:1.5rem}.contact__description{margin-bottom:2rem}.contact__button{width:100%}}.footer{padding:40px var(--page-padding) 18px;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:56px;display:grid}.footer__brand{align-items:flex-start;gap:14px;display:flex}.footer__logo{width:64px;height:auto;transform:translateY(-15px)}.footer__name,.footer__role,.footer__contact p{margin:0}.footer__name{font-weight:600}.footer__role{margin-top:5px;font-size:14px}.footer__links,.footer__services,.footer__contact{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.footer__heading{text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px;font-size:13px;font-weight:700}.footer__links a,.footer__services a{text-decoration:none}.footer__copy{text-align:center;grid-column:1/-1;margin:18px 0 0;padding-top:16px;font-size:12px}.footer__socials{flex-direction:row;align-items:center;gap:16px;margin-top:8px;font-size:24px;display:flex}@media (width<=768px){.footer{grid-template-columns:1fr;gap:28px;padding:32px 24px 20px}.footer__brand,.footer__links,.footer__services,.footer__contact{width:100%}.footer__copy{text-align:left;grid-column:1;width:100%;margin-top:8px;padding-top:16px}}.app{background:var(--color-bg);min-height:100vh}section{padding:72px}.section-eyebrow{color:var(--color-accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:700}.section-heading{max-width:680px;margin-bottom:40px}.section-heading h2{font-family:var(--font-heading);margin-bottom:16px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.1}.section-heading p{color:var(--color-text-muted);line-height:1.7}.button{border-radius:var(--radius-sm);text-transform:uppercase;justify-content:center;align-items:center;padding:15px 24px;font-size:13px;font-weight:700;display:inline-flex}.button--dark{background:var(--color-text);color:#fff}.button--light{border:1px solid var(--color-border);color:var(--color-text);background:#fff}@media (width<=768px){.app{background:#fffdf9;padding:0}.page-shell{box-shadow:none;border-radius:0}section{padding:48px 24px}}
