@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&display=swap');*{box-sizing:border-box}body{margin:0;background:#f1eee7;color:#403a2d;font-family:'DM Sans',sans-serif;min-height:100vh;padding:45px 20px;background-image:radial-gradient(ellipse at 20% 10%,#ffffff,transparent 60%)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #896b2e;outline-offset:5px}.card{max-width:480px;margin:auto;background:#ffffff;box-shadow:0 24px 90px #8a713512;border:1px solid #e5dcc6}.masthead{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 26px;font-size:7px;letter-spacing:1.8px;color:#766a50}.cover{height:235px;background:linear-gradient(125deg,#ffffff 0%,#faf6eb 48%,#ecdfbb 100%);position:relative;overflow:hidden;color:#a5843d}.arch{width:230px;height:340px;border:1px solid #b6934860;border-radius:130px 130px 0 0;position:absolute;top:28px;left:calc(50% - 115px);transform:rotate(18deg)}.arch:after{content:'';position:absolute;inset:16px;border:1px solid #b6934830;border-radius:inherit}.monogram{font-family:'Cormorant Garamond',serif;font-size:200px;line-height:1;position:absolute;left:calc(50% - 65px);top:0;letter-spacing:-18px;font-style:italic;font-weight:400}.cover-note{position:absolute;left:26px;bottom:28px;font-size:8px;line-height:1.8;letter-spacing:1.3px;color:#776238}.asterisk{position:absolute;right:27px;top:25px;font-size:27px;font-weight:400;color:#aa873b}.profile{text-align:center;padding:0 32px}.portrait{display:block;position:relative;margin:-39px auto 22px;width:84px;height:84px;border-radius:50%;border:5px solid #ffffff;object-fit:cover;filter:saturate(.7);box-shadow:0 0 0 1px #d5bd82}.eyebrow{font-size:7px;letter-spacing:1.8px;font-weight:500;margin:0;color:#796940;line-height:1.8}h1{font-family:'Cormorant Garamond',serif;font-size:54px;font-weight:400;margin:10px 0 8px;letter-spacing:-1.8px;line-height:1.1}h1 i{font-weight:400;color:#947332}.intro{font-size:12px;line-height:1.8;margin:12px 0;color:#766e5f}.divider{display:flex;align-items:center;justify-content:center;gap:13px;margin:21px 0;color:#b59650}.divider span{height:1px;width:32px;background:#e1d2ac}.divider i{font-style:normal;font-size:18px}.actions{display:grid;gap:12px}.action{display:flex;width:100%;align-items:center;text-align:left;border:1px solid #d8c494;min-height:80px;padding:17px 19px;background:#ffffff;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s}.action:hover{transform:translateY(-2px);background:#faf7ef;box-shadow:0 6px 15px #8064260b}.primary{background:#806426;color:#ffffff;border-color:#806426}.primary:hover{background:#6c531f}.icon{width:35px;flex-shrink:0;font-size:25px;font-family:Georgia,serif;color:#9b7a32}.primary .icon{color:#f5e5bb}.action strong{font-size:13px;font-weight:500;display:block;letter-spacing:.2px}.action small{display:block;font-size:9px;color:#776b52;margin-top:6px}.primary small{color:#fff5dc}.end{margin-left:auto;padding-left:10px;font-size:18px;color:#947332}.instagram{display:flex;align-items:center;justify-content:center;gap:9px;margin:29px 0 27px;font-size:10px;color:#756542}.instagram svg{width:16px;height:16px}.instagram>span{font-size:14px;margin-left:10px}footer{text-align:center;padding:22px 20px 26px;border-top:1px solid #e9e0ca;background:#fbf9f4}.footer-mark{font-family:'Cormorant Garamond',serif;font-size:32px;line-height:1;font-style:italic;letter-spacing:-3px;color:#967434}footer p{font-size:7px;letter-spacing:1.5px;color:#7d6b46;margin:13px 0 9px}footer small{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:15px;color:#8a774d}dialog{border:1px solid #d5bd82;background:#ffffff;color:#806426;width:calc(100% - 36px);max-width:460px;padding:42px 30px 30px;max-height:85vh;overflow:auto;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#302b20b8;backdrop-filter:blur(5px)}.close{position:absolute;right:14px;top:10px;background:none;border:0;cursor:pointer;font-size:30px;width:36px;height:36px}h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:50px;line-height:1;margin:20px 0}h2 i{color:#947332;font-weight:400}dialog p:not(.eyebrow){font-size:12px;line-height:1.9;color:#766e5f}.details{display:grid;margin:22px 0;font-size:11px}.details span{padding:13px 0;border-bottom:1px solid #e6dcc4}.modal-cta{display:block;background:#806426;color:#ffffff;padding:18px;font-size:11px;line-height:1.6;margin-top:25px}.catalog-number{display:block;margin-top:30px;font-size:8px;letter-spacing:2px;color:#8c7039}h3{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:400;margin:12px 0}.action:active{transform:translateY(0)}@media(max-width:520px){body{padding:0;background:#ffffff}.card{border:0;box-shadow:none;max-width:100%;min-height:100vh}.cover{height:215px}.profile{padding:0 25px}.masthead{padding-inline:25px}h1{font-size:51px}.action{min-height:78px}.monogram{font-size:187px}.cover-note{font-size:7px}footer{padding-bottom:25px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Gold accents on a white base. */
.monogram{color:#a5843d;text-shadow:0 1px 0 #ffffff}.primary .end{color:#f5e5bb}.modal-cta:hover{background:#6c531f}

/* Service catalog */
#catalog{max-width:520px;padding-bottom:30px}#catalog h2{margin-bottom:15px}.catalog-list{list-style:none;padding:0;margin:25px 0 20px;border-top:1px solid #e6dcc4}.catalog-item{display:flex;align-items:center;gap:17px;padding:20px 0;border-bottom:1px solid #e6dcc4}.service-index{display:flex;align-items:center;justify-content:center;width:42px;height:48px;flex-shrink:0;background:#faf7ef;border:1px solid #e9dfc8;color:#9b7a32;font-family:'Cormorant Garamond',serif;font-size:21px}.catalog-item h3{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;margin:0;line-height:1.5}#catalog .service-price{font-size:12px;color:#806426;margin:4px 0 0;line-height:1.6}.service-contact{margin-left:auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid #d8c494;color:#806426;font-size:21px;transition:background .2s}.service-contact:hover{background:#f1e8d2}#catalog .catalog-help{font-size:11px;margin:20px 0 0}#catalog .modal-cta{margin-top:18px}@media(max-width:380px){#catalog{padding-inline:21px}.catalog-item{gap:12px}.catalog-item h3{font-size:12px}.service-index{width:34px}}

.results{margin-top:27px}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.result-grid a{display:block;overflow:hidden;background:#f5eee0}.result-grid img{display:block;width:100%;height:145px;object-fit:cover;transition:transform .2s}.result-grid a:hover img{transform:scale(1.04)}#catalog .gallery-note{font-size:10px;color:#8c7039}.catalog-more{padding:20px;background:#faf7ef;border:1px solid #e6dcc4;margin:25px 0}.catalog-more h3{font-size:27px;margin-top:0}.catalog-faq details{border-bottom:1px solid #e6dcc4}.catalog-faq summary{font-size:12px;cursor:pointer;padding:17px 0;color:#806426}.catalog-faq details p{margin-top:0}.portrait{object-position:50% 25%}@media(max-width:380px){.result-grid img{height:120px}}

.product-list{border-top:0;display:grid;gap:20px}.product-card{border:1px solid #e6dcc4;background:#fff;overflow:hidden}.product-photo{display:block;background:#faf7ef}.product-photo img{display:block;width:100%;height:240px;object-fit:cover}.product-info{display:flex;align-items:center;gap:15px;padding:18px}.product-info h3{font-family:'DM Sans',sans-serif;font-size:14px;margin:0;font-weight:500}.product-info .service-contact{margin-left:auto}#catalog .product-info .service-price{margin:7px 0 0;font-size:13px;color:#806426}@media(max-width:380px){.product-photo img{height:200px}}

#catalog .maintenance{font-size:10px;color:#776b52;margin:6px 0 0;line-height:1.6}.other-services{list-style:none;padding:0;margin:0}.other-services li{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:11px;line-height:1.6;padding:12px 0;border-bottom:1px solid #e6dcc4}.other-services li:last-child{border-bottom:0}.other-services strong{font-weight:500;white-space:nowrap;color:#806426}

/* Tablet: a full-width composition with two balanced panels. */
@media(min-width:701px){
 body{padding:40px 28px;display:flex;align-items:center;justify-content:center;min-height:100svh}
 .card{width:100%;max-width:1120px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);overflow:hidden}
 .masthead{grid-column:1/-1;height:58px;padding:0 35px;font-size:8px;letter-spacing:2.2px;border-bottom:1px solid #e9e0ca}
 .cover{height:auto;min-height:620px;grid-column:1;grid-row:2;background:linear-gradient(160deg,#fffdf8,#eaddb9);isolation:isolate}
 .cover:before{content:'';position:absolute;inset:25px 25px 95px;background:url('assets/pdf-23.jpg') center 20% / cover no-repeat;border-radius:46% 46% 0 0;z-index:-1}
 .cover:after{content:'';position:absolute;inset:25px 25px 95px;border:1px solid #b5965066;border-radius:46% 46% 0 0;pointer-events:none}
 .arch{width:calc(100% - 24px);height:calc(100% - 35px);top:16px;left:12px;border-radius:48% 48% 0 0;transform:none;opacity:.4;z-index:-2}
 .monogram{font-size:90px;top:auto;bottom:12px;left:30px;line-height:1;letter-spacing:-9px;color:#806426}
 .cover-note{bottom:28px;left:auto;right:29px;text-align:right;font-size:9px;color:#75613b}
 .asterisk{top:32px;right:34px;background:#fffdf8bd;border-radius:50%;padding:5px;font-size:22px}
 .profile{grid-column:2;grid-row:2;padding:52px 30px 20px;align-self:center;min-width:0}
 .portrait{display:none}.eyebrow{font-size:8px;letter-spacing:1.8px}h1{font-size:clamp(49px,5.7vw,73px);margin-top:18px;line-height:1.05}.intro{font-size:14px;margin:18px 0}.divider{margin:25px 0}
 .action{min-height:83px;padding:18px}.action strong{font-size:14px}.action small{font-size:10px;line-height:1.5}.instagram{font-size:11px;margin:27px 0 15px}
 footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 35px}.footer-mark{font-size:35px}footer p{margin:0;font-size:8px;letter-spacing:1.5px}footer small{font-size:16px}
 dialog{max-height:88svh;padding:46px 36px 36px}dialog .close{width:44px;height:44px;top:10px;right:14px}#catalog{width:calc(100% - 64px);max-width:1000px;padding:45px 35px 35px}#catalog h2{font-size:59px}#catalog h2 br{display:none}#catalog h2 i:before{content:' '}.product-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.product-card{display:flex;flex-direction:column;min-width:0}.product-photo img{height:auto;aspect-ratio:4/3}.product-info{flex:1;padding:17px 14px;gap:8px}.product-info h3{font-size:13px}.service-contact{width:42px;height:44px}.catalog-more{padding:26px}.other-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.other-services li{font-size:12px}.catalog-faq{margin-top:25px}.catalog-faq summary{font-size:13px;padding:19px 0}#catalog .modal-cta{max-width:330px;text-align:center}#courses{max-width:520px}
}
/* Desktop: more generous spacing, larger imagery and three catalog columns. */
@media(min-width:1100px){
 body{padding:55px 45px}.card{grid-template-columns:1fr 1.08fr}.cover{min-height:700px}.cover:before,.cover:after{inset:30px 36px 105px}.profile{padding:55px 55px 30px}.masthead{padding:0 40px;height:65px;font-size:9px}h1{font-size:80px;letter-spacing:-2.5px}.intro{font-size:15px}.eyebrow{font-size:9px}.actions{gap:14px}.action{min-height:87px;padding:19px 22px}.action strong{font-size:15px}.action small{font-size:11px}.icon{width:42px}.divider{margin:29px 0}.instagram{margin-top:30px}.monogram{left:41px;font-size:100px}.cover-note{right:40px;font-size:10px;bottom:30px}footer{padding:25px 40px}#catalog{max-width:1120px;padding:48px 40px 40px}.product-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-photo img{aspect-ratio:1.15}.product-info{padding:18px 16px}.product-info h3{font-size:14px}
}
@media(min-width:701px) and (max-height:750px){body{align-items:flex-start;padding-block:25px}.cover{min-height:600px}.profile{padding-top:30px;padding-bottom:20px}}

/* Monogram: clean initials with breathing room. */
.monogram{left:50%;transform:translateX(-50%);letter-spacing:0;font-size:166px}.footer-mark{letter-spacing:1px;font-style:normal}@media(max-width:520px){.monogram{font-size:155px}}@media(min-width:701px){.monogram{left:30px;transform:none;font-size:74px;letter-spacing:2px}}@media(min-width:1100px){.monogram{left:41px;font-size:84px;letter-spacing:2px}}
