@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}:root{--font-display: "Unbounded", "Georgia", serif;--font-body: "Onest", "Inter", system-ui, sans-serif;--font-hand: "Caveat", cursive;--bg: #fdf8f9;--bg-soft: #f5eef2;--bg-card: #ffffff;--bg-watercolor-1: #c9ece3;--bg-watercolor-2: #fcd9cc;--bg-watercolor-3: #e6dcf5;--bg-watercolor-4: #fef0c7;--bg-watercolor-5: #fdd1e2;--ink: #2a3a36;--ink-soft: #4a5a56;--ink-muted: #8b9793;--line: #e2ece8;--line-soft: #eef4f1;--accent: #e67b5c;--accent-deep: #c85a3b;--accent-soft: #fbe4dc;--mint: #5fb09b;--mint-deep: #3d8a76;--mint-soft: #d6ede5;--r-sm: 10px;--r-md: 16px;--r-lg: 24px;--r-xl: 36px;--r-round: 999px;--shadow-sm: 0 1px 2px rgba(42,58,54,.04), 0 2px 8px rgba(42,58,54,.05);--shadow-md: 0 2px 6px rgba(42,58,54,.05), 0 12px 32px rgba(42,58,54,.08);--shadow-lg: 0 8px 24px rgba(42,58,54,.08), 0 24px 60px rgba(42,58,54,.1);--ease-smooth: cubic-bezier(.22, 1, .36, 1);--maxw: 1240px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}body{font-family:var(--font-body);color:var(--ink);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;background:radial-gradient(ellipse 900px 600px at 0% 0%,#fdd1e2 0%,transparent 55%),radial-gradient(ellipse 700px 500px at 100% 5%,#fcd9cc 0%,transparent 50%),radial-gradient(ellipse 600px 400px at 15% 60%,#c9ece3 0%,transparent 50%),radial-gradient(ellipse 500px 400px at 80% 80%,#e6dcf5 0%,transparent 55%),var(--bg);background-attachment:fixed;min-height:100vh}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;color:var(--ink);line-height:1.1;text-wrap:balance}h1{font-size:clamp(38px,6vw,72px);line-height:1.05}h2{font-size:clamp(26px,3.6vw,44px);line-height:1.1}h3{font-size:clamp(18px,2vw,24px);font-weight:600}p{text-wrap:pretty}.eyebrow{font-family:var(--font-hand);font-size:clamp(20px,2vw,28px);color:var(--accent);font-weight:500;line-height:1;display:inline-block;margin-bottom:12px;transform:rotate(-1.5deg)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}.section{padding:clamp(60px,8vw,110px) 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:var(--r-round);font-family:var(--font-body);font-size:15px;font-weight:500;cursor:pointer;border:none;transition:transform .45s var(--ease-smooth),box-shadow .45s var(--ease-smooth),background .3s var(--ease-smooth),color .3s var(--ease-smooth),border-color .3s var(--ease-smooth);white-space:nowrap;position:relative}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 6px 20px -6px var(--accent)}.btn-primary:hover{background:var(--accent-deep);box-shadow:0 10px 28px -8px var(--accent-deep)}.btn-ghost{background:var(--bg-card);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.btn-ghost:hover{background:var(--bg-soft);border-color:var(--accent)}.btn-mint{background:var(--mint);color:#fff;box-shadow:0 6px 20px -6px var(--mint)}.btn-mint:hover{background:var(--mint-deep)}.btn-sm{padding:10px 18px;font-size:13px}.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--r-round);background:var(--bg-card);border:1px solid var(--line);font-size:13px;color:var(--ink-soft);font-weight:500;box-shadow:var(--shadow-sm)}.dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px var(--mint-soft);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 0 4px var(--mint-soft)}50%{opacity:.7;box-shadow:0 0 0 6px color-mix(in oklab,var(--mint-soft) 60%,transparent)}}.age{display:inline-block;padding:3px 10px;background:var(--accent-soft);color:var(--accent-deep);border-radius:var(--r-round);font-size:12px;font-weight:600}.photo-ph{position:relative;border-radius:var(--r-lg);overflow:hidden;background:repeating-linear-gradient(45deg,var(--bg-watercolor-1) 0 14px,var(--bg-watercolor-5) 14px 28px);display:flex;align-items:flex-end;justify-content:flex-start;min-height:200px;padding:14px}.photo-ph:after{content:attr(data-label);font-family:monospace;font-size:11px;color:#2a3a3699;background:#ffffffbf;padding:4px 10px;border-radius:var(--r-round);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.nav{position:sticky;top:0;z-index:100;-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);background:color-mix(in oklab,var(--bg) 80%,transparent);border-bottom:1px solid var(--line-soft)}.nav-inner{max-width:var(--maxw);margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:24px;height:70px}.brand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:500;font-size:18px;color:var(--ink);letter-spacing:-.03em;flex-shrink:0}.brand-mark{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--bg-watercolor-1),var(--bg-watercolor-5) 80%);position:relative;overflow:hidden;flex-shrink:0;box-shadow:inset 0 0 0 2px color-mix(in oklab,var(--accent) 30%,transparent)}.brand-mark:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background-image:url(/logo-boy.png);background-size:cover;background-position:center top}.brand-txt{line-height:1.2}.brand-txt small{display:block;font-family:var(--font-body);font-size:11px;color:var(--ink-muted);font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.nav-links{display:flex;gap:2px;margin-left:auto;align-items:center}.nav-links a{padding:8px 14px;border-radius:var(--r-round);font-size:14px;color:var(--ink-soft);font-weight:500;transition:background .3s var(--ease-smooth),color .3s var(--ease-smooth)}.nav-links a:hover{background:var(--bg-soft);color:var(--ink)}.nav-links a.active{background:var(--accent-soft);color:var(--accent-deep)}.nav-phone{font-family:var(--font-display);font-size:13px;font-weight:500;color:var(--ink);padding:8px 14px;border-radius:var(--r-round);border:1px solid var(--line);white-space:nowrap;transition:border-color .3s var(--ease-smooth),color .3s var(--ease-smooth)}.nav-phone:hover{border-color:var(--accent);color:var(--accent)}.nav-burger{display:none;flex-direction:column;gap:5px;padding:8px;background:none;border:none;cursor:pointer;margin-left:auto}.nav-burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px}@media (max-width: 860px){.nav-links,.nav-phone{display:none!important}.nav-burger{display:flex!important}}.nav-mobile-menu{position:fixed;top:70px;right:0;bottom:0;left:0;background:color-mix(in oklab,var(--bg) 95%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:20px;z-index:99;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:4px}.nav-mobile-menu a{padding:14px 16px;border-radius:var(--r-md);font-size:16px;font-weight:500;color:var(--ink);transition:background .15s}.nav-mobile-menu a:hover{background:var(--bg-soft)}.nav-mobile-menu a.active{color:var(--accent-deep);background:var(--accent-soft)}.nav-mobile-phone{margin-top:16px;padding:14px 16px;border-radius:var(--r-md);background:var(--accent-soft);font-family:var(--font-display);font-size:18px;color:var(--accent-deep);text-align:center}.footer{background:color-mix(in oklab,var(--bg-soft) 60%,transparent);border-top:1px solid var(--line-soft);padding:60px 0 32px;margin-top:40px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}.footer-col h4{font-family:var(--font-body);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin-bottom:16px}.footer-col a{display:block;font-size:14px;color:var(--ink-soft);padding:4px 0;transition:color .15s}.footer-col a:hover{color:var(--accent)}.footer-col p{font-size:14px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line-soft);font-size:13px;color:var(--ink-muted);gap:16px;flex-wrap:wrap}@media (max-width: 860px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.footer-grid{grid-template-columns:1fr;gap:28px}}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.service-card{display:flex;flex-direction:column;background:var(--bg-card);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line-soft);box-shadow:var(--shadow-sm);transition:transform .45s var(--ease-smooth),box-shadow .45s var(--ease-smooth);color:inherit}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.wc-tile{aspect-ratio:4/3;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate}.wc-tile:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 30% 20%,color-mix(in oklab,var(--wc-a, var(--bg-watercolor-1)) 85%,#fff) 0%,transparent 55%),radial-gradient(ellipse at 80% 80%,color-mix(in oklab,var(--wc-b, var(--bg-watercolor-2)) 90%,#fff) 0%,transparent 55%),radial-gradient(ellipse at 20% 90%,var(--bg-watercolor-5) 0%,transparent 50%)}.wc-glyph{position:relative;z-index:1;font-family:var(--font-display);font-size:clamp(36px,5vw,56px);color:color-mix(in oklab,var(--ink) 65%,var(--accent));letter-spacing:-.04em;text-align:center;line-height:1}.wc-glyph small{display:block;font-family:var(--font-hand);font-size:.45em;color:var(--ink-soft);font-weight:400;margin-top:6px;letter-spacing:0}.service-card-body{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column;gap:8px}.service-card-body h3{font-size:15px;font-weight:600;color:var(--ink);font-family:var(--font-body);line-height:1.3}.service-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--ink-muted)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:20px;flex-wrap:wrap}.section-head>p{max-width:420px;margin:0}.page-hero{padding:64px 0 20px}.page-hero h1{max-width:820px}.page-hero .lede{font-size:18px;color:var(--ink-soft);max-width:580px;margin-top:18px}.why-block{background:var(--bg-card);border-radius:var(--r-xl);padding:clamp(36px,5vw,64px);box-shadow:var(--shadow-sm);border:1px solid var(--line-soft)}.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px 24px;margin-top:40px}.why-item{display:flex;flex-direction:column;gap:6px}.why-num{font-family:var(--font-display);font-size:26px;font-weight:400;color:var(--accent);display:inline-flex;align-items:center;gap:10px;line-height:1;margin-bottom:4px}.why-num:before{content:"";width:20px;height:1px;background:var(--accent)}.why-item h4{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--ink)}.why-item p{font-size:14px;color:var(--ink-soft);margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--line);border-radius:var(--r-lg);overflow:hidden;margin-top:32px}.stats>div{background:var(--bg-card);padding:22px}.stats strong{font-family:var(--font-display);font-size:clamp(26px,3vw,38px);font-weight:400;color:var(--ink);display:block;line-height:1;margin-bottom:8px}.stats span{font-size:13px;color:var(--ink-muted)}@media (max-width: 640px){.stats{grid-template-columns:1fr 1fr}.wrap,.nav-inner{padding:0 16px}.section{padding:clamp(36px,8vw,72px) 0}.page-hero{padding:32px 0 12px}.cta-band{padding:32px 20px;border-radius:var(--r-lg)}.why-block{padding:28px 20px;border-radius:var(--r-lg)}.section-head{margin-bottom:24px}}.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.quote{background:var(--bg-card);padding:28px;border-radius:var(--r-lg);border:1px solid var(--line-soft);box-shadow:var(--shadow-sm);position:relative}.quote:before{content:'"';position:absolute;top:-4px;left:18px;font-family:var(--font-display);font-size:72px;color:var(--accent-soft);line-height:1}.quote p{font-size:15px;color:var(--ink-soft);margin:12px 0 20px;position:relative}.quote-author{display:flex;align-items:center;gap:12px}.quote-av{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:14px;color:var(--accent-deep);flex-shrink:0}.quote-author strong{display:block;font-size:14px;color:var(--ink);font-weight:600}.quote-author span{font-size:12px;color:var(--ink-muted)}.cta-band{background:radial-gradient(ellipse 500px 300px at 10% 50%,var(--bg-watercolor-5) 0%,transparent 60%),radial-gradient(ellipse 400px 300px at 90% 30%,var(--bg-watercolor-1) 0%,transparent 60%),var(--bg-card);border-radius:var(--r-xl);padding:clamp(40px,6vw,72px);text-align:center;border:1px solid var(--line-soft);box-shadow:var(--shadow-sm)}.cta-band h2{max-width:680px;margin:0 auto 20px}.cta-band>p{max-width:500px;margin:0 auto 32px;color:var(--ink-soft)}.btn-group{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:200px 200px;gap:16px}.gallery>*{border-radius:var(--r-lg)}.gallery .g1{grid-row:1 / 3}@media (max-width: 700px){.gallery{grid-template-columns:1fr 1fr;grid-template-rows:150px 150px 150px}.gallery .g1{grid-row:1;grid-column:1 / 3}}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:500;color:var(--ink-soft)}.field input,.field textarea,.field select{font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--bg-soft);border:1.5px solid transparent;border-radius:var(--r-md);padding:13px 16px;transition:border-color .3s var(--ease-smooth),background .3s var(--ease-smooth);width:100%}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--accent);background:var(--bg-card)}.field input.invalid{border-color:#e53e3e!important;background:#fff5f5!important}.field-error{font-size:12px;color:#c53030;margin-top:4px}.field textarea{resize:vertical;min-height:96px}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
