:root{--bg:#f9f7f3;--ink:#403c35;--muted:#777064;--accent:#85755f;--line:#ded7ce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,textarea,select{outline-offset:5px}header{height:124px;padding:18px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand img{width:170px;mix-blend-mode:multiply;display:block}nav{display:flex;gap:38px;align-items:center;font-size:13px}.nav-contact{border:1px solid var(--line);padding:12px 23px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12;margin:0}em{font-weight:400;color:var(--accent)}h1{font-size:clamp(48px,5.6vw,88px);letter-spacing:-3px}h2{font-size:clamp(37px,4vw,58px);letter-spacing:-1.7px}h3{font-size:30px}.eyebrow{font-size:10px;letter-spacing:2.4px;display:block;margin-bottom:24px;color:var(--muted)}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:5%;padding:45px 8% 70px 9%;align-items:center}.hero-copy{padding:36px 0}.hero p{max-width:370px;margin:28px 0 30px;color:var(--muted)}.button{background:var(--ink);color:white;border:0;padding:16px 25px;display:inline-flex;gap:40px;align-items:center;font-size:12px;cursor:pointer}.button:hover{background:var(--accent)}.hero-image{position:relative;height:640px}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.image-caption{position:absolute;bottom:22px;left:25px;color:#fff;font:italic 23px Georgia,serif;text-shadow:0 1px 8px #534539}.hero-note{display:flex;align-items:center;gap:16px;font-size:9px;letter-spacing:1.5px;margin-top:60px}.line{width:35px;height:1px;background:var(--accent)}.vertical-note{position:absolute;right:2.5%;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px}.intro,.portfolio,.pricing{padding:100px 9%}.intro{text-align:center;background:#f0ece5}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:65px;text-align:left}.number{font-size:12px;color:var(--accent)}.services h3{margin:15px 0}.services p{color:var(--muted);font-size:14px}.services a,.text-link{font-size:12px;border-bottom:1px solid var(--accent);padding-bottom:7px;display:inline-block;margin-top:12px}.section-top{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:44px}.section-top p{font-size:12px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:220px;gap:22px}.photo{border:0;padding:0;background:#eee;cursor:zoom-in;overflow:hidden}.photo img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .5s}.photo:hover img{transform:scale(1.04)}.photo.tall{grid-row:span 2}.gallery .photo:nth-child(4){grid-column:2;grid-row:2 / span 2}.gallery .photo:nth-child(5){grid-column:3;grid-row:2 / span 2}.portfolio>.text-link{margin-top:30px}.about{padding:90px 12%;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12%;background:#efeae2}.about-mark img{width:100%;mix-blend-mode:multiply}.about p{color:var(--muted);font-size:14px}.pricing{text-align:center}.section-description{max-width:480px;margin:25px auto 50px;color:var(--muted)}.price-list{border-top:1px solid var(--line);text-align:left}.price-list a{display:grid;grid-template-columns:60px 1fr auto 50px;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:30px 10px}.price-list a:hover{background:#efeae2}.price-list span{font-size:12px;color:var(--muted)}.price-list h3{font-size:27px}.price-list b{text-align:right;font-weight:400}.contact{padding:95px 9%;background:#e9e3d9;display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.contact p{color:#6c6459}.email{font-size:18px;border-bottom:1px solid var(--accent)}.location{font-size:12px;margin-top:30px}form label{display:block;font-size:12px;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #b9ad9d;background:transparent;padding:12px 0;color:var(--ink);border-radius:0}textarea{resize:vertical}small{display:block;font-size:10px;color:#6c6459;margin-top:15px}footer{padding:30px 6%;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}dialog{border:0;padding:0;background:transparent;max-width:94vw;max-height:94vh}dialog::backdrop{background:#25221eee}dialog img{display:block;max-width:90vw;max-height:88vh;object-fit:contain}.close{position:fixed;top:20px;right:25px;border:0;background:white;color:#403c35;border-radius:50%;width:42px;height:42px;cursor:pointer}#form-note{font-size:12px}a:hover{color:#8a7356}.button:hover{color:white}@media(min-width:1600px){main,header,footer{max-width:1700px;margin:auto}}@media(max-width:800px){header{height:100px;padding:14px 6%}.brand img{width:125px}nav{gap:17px;font-size:11px}nav .nav-contact{display:none}.hero{padding:30px 6% 55px;gap:25px;grid-template-columns:1fr}.hero-copy{padding:15px 0}h1{letter-spacing:-2px}.hero p{max-width:450px}.hero-note{margin-top:28px}.hero-image{height:520px}.vertical-note{display:none}.intro,.portfolio,.pricing{padding:65px 6%}.services{gap:30px;grid-template-columns:1fr;margin-top:40px}.services article{border-top:1px solid var(--line);padding-top:20px}.section-top{display:block}.gallery{gap:12px;grid-auto-rows:150px;grid-template-columns:repeat(2,1fr)}.gallery .photo:nth-child(n){grid-column:auto;grid-row:auto}.gallery .photo.tall{grid-row:span 2}.about{padding:55px 8%;gap:30px;grid-template-columns:1fr}.about-mark{max-width:260px;margin:auto}.price-list a{grid-template-columns:24px 1fr 16px;gap:12px;padding:25px 0}.price-list h3{font-size:23px}.price-list a span:nth-of-type(2){grid-column:2;grid-row:2}.price-list b{grid-column:3;grid-row:1}.contact{padding:65px 6%;gap:45px;grid-template-columns:1fr}footer{flex-wrap:wrap}.eyebrow{letter-spacing:1.7px;font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}
.packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;text-align:left}.package{border:1px solid var(--line);padding:35px 28px;display:flex;flex-direction:column}.package:nth-child(2){background:#efeae2}.package .eyebrow{margin-bottom:14px}.package-price{font:52px Georgia,serif;margin:22px 0}.package-price span{font-size:26px}.package ul{list-style:none;padding:0;margin:0 0 30px;font-size:13px;color:var(--muted);flex:1}.package li{padding:10px 0;border-bottom:1px solid var(--line)}.package .button{justify-content:space-between;gap:15px}.extras{max-width:720px;margin:65px auto 0;text-align:left}.extras h3{font-size:28px}.extras dl{margin-top:25px}.extras dl div{display:flex;gap:25px;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}.extras dd{margin:0;white-space:nowrap}.other-pricing{margin-top:70px;text-align:left}[hidden]{display:none!important}@media(max-width:900px){.packages{grid-template-columns:1fr}.package{padding:30px}.package ul{margin-bottom:25px}}
.family-pricing{margin-top:90px;padding-top:75px;border-top:1px solid var(--line)}.family-pricing>.packages{margin-top:45px}
.maternity-pricing>.packages{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px;margin-left:auto;margin-right:auto}@media(max-width:800px){.maternity-pricing>.packages{grid-template-columns:1fr}}
.bundle{margin-top:85px;padding:50px;background:#eee7dc;display:grid;grid-template-columns:1fr 1fr;gap:65px;text-align:left}.bundle>div>p:not(.package-price){color:var(--muted);font-size:14px;max-width:360px}.bundle .package-price span{font:14px Arial,sans-serif}.bundle-details article+article{border-top:1px solid #cfc5b6;margin-top:30px;padding-top:30px}.bundle-details h3{font-size:25px}.bundle-details .eyebrow{margin-bottom:12px}.bundle-details ul{padding-left:18px;font-size:13px;color:var(--muted)}.bundle-details li{padding:4px 0}@media(max-width:800px){.bundle{grid-template-columns:1fr;padding:30px 23px;gap:35px}.bundle .button{gap:20px}}
.logo-crop{display:block;overflow:hidden;aspect-ratio:963 / 365;width:100%}.brand .logo-crop{width:170px}.logo-crop img{width:100%;height:auto;display:block}.about-mark{width:100%}@media(max-width:800px){.brand .logo-crop{width:125px}}
.hero-note .line{flex-shrink:0}@media(max-width:380px){.hero-note{gap:10px;font-size:8px;letter-spacing:1px}.hero-note .line{width:25px}}
