:root{--sand:#F4EEE6;--champagne:#E7D6B6;--bronze:#B87333;--coffee:#5C4435;--ocean:#7FA6BF;--sky:#B9D7E8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--coffee);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #40647b;outline-offset:4px}.skip{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:12px}.intro{text-align:center;padding:25px 20px 23px;border-top:5px solid var(--champagne)}.brand{position:relative;width:244px;height:89px;overflow:hidden;margin:0 auto 15px;mix-blend-mode:multiply}.brand img{position:absolute;width:360px;height:auto;max-width:none;left:-60px;top:-65px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.3px;margin:8px 0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1{font-size:clamp(32px,4vw,48px);line-height:1.2;margin:9px 0 10px}.signature{font-family:Allura,cursive;font-size:29px;line-height:1.2;max-width:740px;margin:0 auto 10px}.intro-copy{max-width:600px;font-size:14px;margin:0 auto;line-height:1.8}.wave{display:block;color:var(--bronze);margin:18px auto 0}.container{max-width:1120px;margin:auto;padding:0 24px 55px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;border-top:1px solid #5c443521}.section-heading h2{font-size:23px;margin:0}.section-heading span{font-size:12px;letter-spacing:.5px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.card{background:#fffdf9;border:1px solid #e2d7c8;border-radius:13px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 5px 18px #5c443507;transition:transform .2s,box-shadow .2s;animation:appear .45s both;animation-delay:var(--delay)}.card:hover{transform:translateY(-3px);box-shadow:0 9px 24px #5c443513}.visual{aspect-ratio:3/2;flex-shrink:0;background:#ebe4d9;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;color:#776557;border-bottom:1px solid #5c44350d}.photo-symbol{font-family:Georgia,serif;font-size:29px;line-height:1;font-weight:400;border:1px solid #b6a795;border-radius:50%;width:38px;height:38px;text-align:center;padding-top:3px}.placeholder-text{font-size:12px;letter-spacing:.3px}.partner-photo{width:100%;height:100%;object-fit:cover}.card-body{padding:17px 16px 15px;display:flex;flex-direction:column;flex:1}.category{font-size:14px;font-weight:600;line-height:1.4;margin:0 0 6px}.partner-name{font-size:22px;line-height:1.3;margin:0 0 8px}.pending{font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:400;color:#7a695b}.profession{font-size:13px;line-height:1.6;margin:0 0 9px}.description{font-size:14px;margin:0 0 14px;line-height:1.65}.contact{margin-top:auto;padding-top:16px}.phone{font-size:12px;margin:0 0 9px;overflow-wrap:anywhere}.contact-button{min-height:44px;width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border:1px solid var(--bronze);border-radius:7px;background:var(--bronze);color:white;font-size:12px;font-weight:600;text-decoration:none;line-height:1.45;text-align:center}.contact-button svg{width:18px;height:18px;flex-shrink:0}.contact-button:not(:disabled):hover{background:var(--coffee);border-color:var(--coffee)}.contact-button:disabled{background:#efe8de;color:#766453;border-color:#dfd2c0;cursor:not-allowed}.partner-instagram{font-size:13px}.featured{border-color:#abc0c8}.digital{position:relative;background:linear-gradient(125deg,var(--sky),#b4cbd0 48%,var(--champagne));color:#3f5d68;gap:3px}.digital svg{width:55%;max-height:100px}.monogram{position:absolute;right:12px;top:8px;letter-spacing:2px;font-size:12px;font-weight:600}.digital-label{font-size:10px;letter-spacing:.6px}.footer{text-align:center;background:#ede4d7;padding:28px 24px 0;border-top:1px solid #dfd2c0}.brand-small{width:190px;height:69px;margin-bottom:10px}.brand-small img{width:280px;left:-47px;top:-51px}.instagram{font-size:14px;font-weight:500;text-decoration:none}.footer p{font-size:13px;margin:12px auto;max-width:620px}.footer .location{font-size:12px;letter-spacing:.7px}.footer .disclaimer{font-size:12px;line-height:1.8;max-width:670px;margin-top:22px}.credit{border-top:1px solid #5c44351a;margin-top:25px;padding:16px 0;font-size:12px}.credit a{text-decoration:none}.back-top{position:fixed;bottom:18px;right:16px;width:42px;height:42px;display:grid;place-items:center;background:#fffdf9;color:var(--coffee);border:1px solid #d6c4ae;border-radius:50%;text-decoration:none;box-shadow:0 3px 12px #5c443514;font-size:22px}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:760px){.featured{grid-column:span 2;flex-direction:row}.featured .visual{width:44%;aspect-ratio:auto;border-bottom:0}.featured .card-body{width:56%}.featured .digital svg{width:82%}}@media(min-width:760px) and (max-width:1020px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.featured{grid-column:span 1;flex-direction:column}.featured .visual,.featured .card-body{width:100%}.featured .visual{aspect-ratio:3/2}}@media(max-width:759px){.intro{padding:16px 18px 19px}.brand{width:208px;height:76px;margin-bottom:11px}.brand img{width:308px;left:-51px;top:-56px}.eyebrow{font-size:10px;letter-spacing:1.6px}.signature{font-size:25px;max-width:365px}.intro-copy{font-size:13px;line-height:1.65;max-width:430px}.wave{margin-top:12px}.container{padding:0 14px 32px}.section-heading{padding:15px 0}.section-heading h2{font-size:20px}.section-heading span{display:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-body{padding:13px 11px}.category{font-size:14px}.partner-name{font-size:21px}.pending{font-size:12px}.phone{font-size:12px}.contact-button{font-size:12px;padding:9px 5px;gap:3px}.contact-button svg{width:16px}.contact{padding-top:12px}.featured{grid-column:1/-1}.featured .visual{aspect-ratio:2.8}.featured .digital svg{height:72px}.featured .contact-button{max-width:290px}.footer{padding-left:20px;padding-right:20px}.credit{padding-right:25px}.back-top{width:38px;height:38px}}@media(max-width:339px){.grid{grid-template-columns:1fr}.signature{font-size:23px}.visual{aspect-ratio:2}.contact-button{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{animation:none;transition:none}.card:hover{transform:none}}
