:root{--purple:#493368;--deep:#352147;--lilac:#ddd3eb;--pale:#f5f1f9;--yellow:#f2d67c;--ink:#30263e;--muted:#70657b;--white:#fff;--line:#e7e0ee}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--white);color:var(--ink);font-family:"Trebuchet MS",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #9164c4;outline-offset:6px}img{max-width:100%;display:block}svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;top:-100px;left:15px;z-index:10;background:white;padding:12px}.skip:focus{top:15px}.header{display:flex;align-items:center;justify-content:space-between;padding-block:25px;border-bottom:1px solid var(--line);gap:24px}.brand{display:inline-flex;flex-direction:column;line-height:1;color:var(--purple)}.brand>span{font-family:Georgia,serif;font-style:italic;font-size:46px;font-weight:700;letter-spacing:-3px}.brand-dot{color:#b18b22}.brand small{font-size:10px;letter-spacing:2.5px;margin-top:8px;font-weight:700}.header nav{display:flex;gap:33px;font-size:14px}.header nav a:hover{color:#835caa}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:16px 26px;border-radius:9px;background:var(--purple);color:white;font-weight:700;font-size:16px;border:1px solid var(--purple);transition:background .2s,transform .2s;line-height:1.35;text-align:center}.button:hover{background:var(--deep);transform:translateY(-2px)}.button-small{min-height:44px;font-size:14px;padding:12px 19px}.button-small svg{width:19px;height:19px}.button-outline{background:transparent;color:var(--purple);border-color:#ab96c1}.button-outline:hover{background:white}.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:50px;align-items:center;padding-top:52px;padding-bottom:56px}.eyebrow{color:var(--purple);font-size:12px;font-weight:700;letter-spacing:1.8px;margin:0 0 22px;line-height:1.6}.hero .eyebrow{display:flex;align-items:center;gap:12px}.tiny-line{width:26px;height:2px;background:var(--purple)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(58px,6.15vw,86px);font-weight:700;letter-spacing:-4px;line-height:1.05;color:var(--purple);margin-bottom:25px}em{font-family:Georgia,"Times New Roman",serif;font-weight:400}h1 em{display:block;white-space:nowrap}h2{font-size:clamp(34px,3.6vw,49px);line-height:1.15;letter-spacing:-1.8px;font-weight:600;color:var(--purple);margin-bottom:22px}h3{font-size:24px;letter-spacing:-.6px;font-weight:600;line-height:1.3;margin-bottom:15px}.hero-description{font-size:18px;line-height:1.7;margin-bottom:30px;color:var(--muted)}.helper{font-size:12px;color:var(--muted);margin-top:12px;letter-spacing:0}.hero-note{display:flex;align-items:center;gap:15px;margin-top:35px;font-size:13px;line-height:1.65;color:var(--muted)}.hero-note svg{width:37px;height:37px;padding:8px;background:var(--pale);border-radius:50%;color:var(--purple)}.hero-note strong{font-weight:400;color:var(--purple)}.hero-figure{position:relative;margin:0;padding:0 0 35px 0}.photo-frame{height:540px;border-radius:47% 47% 7px 7px;overflow:hidden;background:var(--lilac)}.photo-frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.28);object-position:center 42%}.experience-tag{position:absolute;top:26px;right:-17px;background:var(--yellow);width:117px;height:117px;border-radius:50%;display:flex;justify-content:center;align-items:center;flex-direction:column;transform:rotate(10deg);color:var(--deep);box-shadow:0 4px 0 #4933680c}.experience-tag strong{font-size:33px;font-family:Georgia,serif;line-height:1.1}.experience-tag span{font-size:12px;text-align:center;line-height:1.3;margin-top:4px}.hero-figure figcaption{position:absolute;bottom:42px;right:10px;color:#fff;font-size:10px;padding:2px 6px;border-radius:3px;background:#30263e99}.photo-label{position:absolute;bottom:8px;left:23px;font-family:Georgia,serif;font-style:italic;font-size:19px;color:var(--purple);background:#fff;padding:10px 20px;transform:rotate(-4deg)}.ribbon{background:var(--purple);color:#f4eff9;padding:24px 0}.ribbon .wrap{display:flex;justify-content:space-between;align-items:center;font-size:15px;gap:16px}.separator{color:var(--yellow);font-size:17px}.section{padding-block:93px}.section-intro{display:grid;grid-template-columns:1.4fr 1fr;column-gap:140px;align-items:end}.section-intro .eyebrow{grid-column:1/-1;margin-bottom:18px}.section-intro>p:last-child{color:var(--muted);max-width:340px;font-size:17px;margin-bottom:25px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px}.service-grid article{padding:0 40px;border-left:1px solid var(--line)}.service-grid article:first-child{padding-left:0;border-left:0}.service-grid article:last-child{padding-right:0}.service-top{display:flex;justify-content:space-between;align-items:center;color:var(--purple);margin-bottom:27px}.service-top svg{width:33px;height:33px}.service-top span{font-family:Georgia,serif;font-size:15px;color:#9b8ba9}.service-grid p{color:var(--muted);margin-bottom:0;font-size:16px}.detail-section{background:var(--pale);padding-block:70px;border-block:1px solid #eee7f5}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:140px;align-items:center}.detail-layout h2{font-size:48px;margin-bottom:0}.detail-copy{font-size:18px}.detail-copy .muted{font-size:16px;color:var(--muted)}.detail-copy .button{margin-top:10px}.social-handle{display:block;margin-top:14px;font-size:14px;color:var(--muted)}.taxi{display:grid;grid-template-columns:.9fr 1.1fr;gap:115px;align-items:center}.taxi-visual{height:310px;background:var(--yellow);border-radius:120px 12px 120px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--purple);transform:rotate(-3deg)}.taxi-visual svg{width:77px;height:77px;stroke-width:1.1;margin-bottom:8px}.taxi-visual span{font-family:Georgia,serif;font-style:italic;font-size:50px;line-height:1.25}.taxi-visual small{font-size:10px;letter-spacing:1.5px;margin-top:14px;font-weight:700}.taxi-copy p:not(.eyebrow){color:var(--muted)}.taxi-copy .availability{font-size:14px}.text-link{display:inline-block;color:var(--purple);border-bottom:1px solid #b8a3cd;padding-bottom:2px;font-weight:700;font-size:15px}.text-link:hover{border-color:var(--purple);color:#8055a5}.about{background:var(--purple);color:var(--lilac);padding-block:72px}.about-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}.about h2{color:white}.about h2 em{color:var(--yellow)}.about .eyebrow{color:var(--lilac)}.about p{max-width:540px;margin-bottom:16px}.about-number strong{font-family:Georgia,serif;font-weight:400;color:var(--yellow);font-size:145px;letter-spacing:-8px;line-height:1}.about-number strong span{font-size:75px;vertical-align:top;line-height:1.5;letter-spacing:-4px}.about-number p{font-size:17px;margin:20px 0 0}.location{display:grid;grid-template-columns:1fr 1fr;gap:95px}.location>div>p:not(.eyebrow){color:var(--muted)}.contact-card{border:1px solid var(--line);border-radius:14px;padding:32px}.contact-row{display:flex;gap:18px;padding-bottom:28px}.contact-row+ .contact-row{border-top:1px solid var(--line);padding-top:28px;padding-bottom:0}.contact-row>svg{color:var(--purple);margin-top:2px}.contact-row h3{font-size:18px;margin-bottom:12px}.contact-row address{font-style:normal;font-size:16px;color:var(--muted);margin-bottom:17px}.phone{font-size:22px;color:var(--purple);font-weight:700;letter-spacing:-.4px}.contact-row p{font-size:14px;color:var(--muted);margin:6px 0 0}.final-cta{background:var(--lilac);border-radius:14px;padding:48px 60px;display:flex;gap:40px;justify-content:space-between;align-items:center;margin-bottom:65px}.final-cta h2{margin-bottom:0}.final-cta .eyebrow{margin-bottom:16px}.final-cta>div:last-child{text-align:center}.final-cta p:last-child{font-size:12px;color:#62536e;margin:14px 0 0}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line);padding-block:35px}footer .brand>span{font-size:36px}footer .brand small{font-size:8px}footer>p{font-family:Georgia,serif;font-style:italic;color:var(--muted);font-size:17px;margin:0}footer>div{text-align:right}footer>div a{display:block;font-size:14px;margin-bottom:6px}footer>div span{font-size:12px;color:var(--muted)}.floating-contact{position:fixed;bottom:23px;right:23px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--purple);border:2px solid white;color:white;box-shadow:0 4px 18px #35214726;z-index:5}.floating-contact:hover{background:var(--deep)}
@media(min-width:1600px){.hero{padding-top:65px;padding-bottom:70px}.photo-frame{height:600px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.header nav{gap:20px}.hero{gap:35px}.photo-frame{height:495px}h1{font-size:64px;letter-spacing:-3px}.experience-tag{width:95px;height:95px;right:-8px}.hero-description{font-size:16px}.section-intro{column-gap:60px}.detail-layout,.taxi,.about-layout,.location{gap:55px}.detail-layout h2{font-size:41px}.service-grid article{padding-inline:25px}.final-cta{padding:40px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{padding-block:18px;gap:15px}.brand>span{font-size:38px}.brand small{font-size:8px}.header nav{display:none}.button-small{font-size:12px;padding:10px 12px;gap:7px;min-height:41px}.hero{grid-template-columns:1fr;gap:30px;padding-top:33px;padding-bottom:33px}.eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:18px}h1{font-size:66px;letter-spacing:-3px;line-height:1.02;margin-bottom:20px}h1 br{display:none}h1 em{white-space:normal}.hero-description{font-size:16px;line-height:1.6;margin-bottom:24px}.hero .button{min-height:54px;padding:15px 22px}.hero .helper{font-size:11px}.hero-note{display:none}.hero-figure{margin:0 9px;padding-bottom:32px}.photo-frame{height:370px;border-radius:45% 45% 8px 8px}.photo-frame img{object-position:center 43%}.experience-tag{top:9px;right:-7px}.photo-label{font-size:17px;left:10px;bottom:8px}.hero-figure figcaption{bottom:40px}.ribbon{padding:18px 0}.ribbon .wrap{display:grid;grid-template-columns:1fr 1fr;gap:11px 20px;text-align:center;font-size:13px}.ribbon .separator{display:none}.section{padding-block:58px}.section-intro{display:block}.section-intro>p:last-child{font-size:16px;max-width:100%;margin-bottom:0}h2{font-size:37px;letter-spacing:-1.3px;line-height:1.15}.service-grid{grid-template-columns:1fr;margin-top:28px}.service-grid article,.service-grid article:first-child,.service-grid article:last-child{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.service-grid article:last-child{border:0;padding-bottom:0}.service-top{margin-bottom:18px}.service-top svg{width:30px;height:30px}.service-grid h3{font-size:23px;margin-bottom:10px}.detail-section{padding-block:50px}.detail-layout{grid-template-columns:1fr;gap:25px}.detail-layout h2{font-size:39px}.detail-copy{font-size:17px}.button{font-size:15px;padding:15px 19px}.taxi{grid-template-columns:1fr;gap:40px}.taxi-visual{height:225px;margin:0 15px;border-radius:100px 12px 100px 12px;order:2}.taxi-visual svg{width:60px;height:60px}.taxi-visual span{font-size:43px}.taxi-visual small{font-size:9px}.about{padding-block:52px}.about-layout{grid-template-columns:1fr;gap:34px}.about-number{display:flex;gap:25px;align-items:center}.about-number strong{font-size:100px;letter-spacing:-7px}.about-number strong span{font-size:50px}.about-number p{font-size:15px;margin:0}.about p{font-size:16px}.location{grid-template-columns:1fr;gap:20px}.contact-card{padding:24px}.contact-row{gap:13px}.contact-row address{font-size:15px}.phone{font-size:21px}.final-cta{flex-direction:column;align-items:flex-start;padding:34px 26px;gap:27px;margin-bottom:40px}.final-cta>div:last-child{text-align:left}.final-cta h2{font-size:40px}.final-cta p:last-child{font-size:11px}footer{align-items:flex-start;flex-wrap:wrap;padding-block:27px 85px;gap:25px}footer>p{font-size:15px;padding-top:13px}footer>div{text-align:left;width:100%}.floating-contact{bottom:18px;right:17px;width:49px;height:49px}}
@media(max-width:370px){h1{font-size:56px}.hero .eyebrow{font-size:10px;letter-spacing:1px}.wrap{width:calc(100% - 32px)}.button-small span{max-width:86px}.photo-frame{height:320px}.contact-card{padding:19px}.final-cta{padding:30px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
