:root{--page-bg: #eaeaf1;--surface: #ffffff;--field-bg: #f7f7fc;--ink: #2a2733;--heading-ink: #3a3550;--muted: #847f95;--muted-2: #8a86a6;--body-muted: #5e5b6b;--accent: #6e7ba6;--accent-text: #ffffff;--gold: #f2c66b;--line: #dedcea;--line-2: #dbdae6;--divider: #e6e4ee;--hero-solid: #281e37;--error: #b23a3a;--footer-faint: #a39fb3;--font-ui: "DM Sans", system-ui, sans-serif;--font-display: "Newsreader", Georgia, serif;--max-width: 1180px;--gutter: 40px;--section-gap: 76px;--shadow-card: 0 10px 30px -20px rgba(60, 55, 90, .25);--shadow-accordion: 0 8px 24px -20px rgba(60, 55, 90, .22);--shadow-form: 0 30px 70px -30px rgba(30, 26, 50, .6);--shadow-float-nav: 0 18px 44px -22px rgba(60, 55, 90, .4), 0 2px 6px -2px rgba(60, 55, 90, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:var(--page-bg);background-image:radial-gradient(rgba(110,123,166,.1) 1px,transparent 1px);background-size:22px 22px;color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;min-height:100vh}a{color:inherit}.container{max-width:var(--max-width);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.page{display:flex;flex-direction:column;align-items:center;gap:var(--section-gap);padding:var(--section-gap) 0}.section{width:100%;max-width:var(--max-width);padding:0 var(--gutter);scroll-margin-top:24px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-logo{display:block;width:auto;height:100%}.nav-logo{display:inline-flex;align-items:center;flex:none;height:46px}.nav-logo--trad{height:52px}.nav-float{max-width:var(--max-width);margin:0 auto;padding:56px var(--gutter) 0;display:flex;justify-content:center}.nav-float__pill{display:flex;align-items:center;gap:30px;background:var(--surface);border-radius:999px;padding:11px 14px 11px 24px;box-shadow:var(--shadow-float-nav)}.nav-float__divider{width:1px;height:24px;background:var(--divider);flex:none}.nav-links{display:flex;align-items:center;gap:30px}.nav-links a{font:500 15px var(--font-ui);color:var(--heading-ink);text-decoration:none}.nav-links a:hover{color:var(--ink)}.nav-cta{font:600 14px var(--font-ui);color:var(--accent-text);background:var(--accent);padding:12px 24px;border:none;border-radius:999px;text-decoration:none;white-space:nowrap;cursor:pointer}.nav-cta:hover{background:#616e98}.nav-trad{border-bottom:1px solid var(--line-2)}.nav-trad__inner{max-width:var(--max-width);margin:0 auto;padding:18px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-trad .nav-links{gap:34px}.nav-trad .nav-cta{padding:11px 22px}.hero-wrap{max-width:var(--max-width);margin:0 auto;padding:64px var(--gutter) 0}.hero-panel{position:relative;border-radius:28px;overflow:hidden;min-height:600px;display:flex;background:var(--hero-solid)}.hero-photo{position:absolute;left:0;top:0;bottom:0;width:60%;background-image:url(/images/hero-wedding-dog.jpg);background-size:cover;background-position:center}.hero-panel__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,transparent 0%,transparent 40%,var(--hero-solid) 56%,var(--hero-solid) 100%),linear-gradient(100deg,#1a1226d6,#1a122685 26%,#1a122633 44%,#1a122600 58%)}.hero-grid{position:relative;flex:1;display:grid;grid-template-columns:1fr 440px;gap:40px;align-items:center;padding:48px}.hero-eyebrow{font:600 12px var(--font-ui);letter-spacing:.2em;color:#edebf5;margin-bottom:18px}.hero-title{font:600 58px/1.02 var(--font-display);color:#fff;margin:0 0 16px;letter-spacing:-.01em}.hero-title__place{display:block;white-space:nowrap;color:var(--gold);animation:hero-place-in .45s ease}@keyframes hero-place-in{0%{opacity:0;transform:translateY(.16em)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.hero-title__place{animation:none}}.hero-sub{font:400 17px/1.6 var(--font-ui);color:#efeef6;max-width:400px;margin:0 0 26px}.hero-trust{display:flex;flex-wrap:wrap;gap:10px 22px}.hero-trust__item{display:flex;align-items:center;gap:8px;font:500 14px var(--font-ui);color:#fff}.hero-trust__dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}.hero-form-shell{box-shadow:var(--shadow-form);border-radius:18px}.hero-headline--mobile{display:none}.kitform{width:100%}.kitform__card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;color:var(--ink)}.kitform__head{font:600 25px var(--font-display);color:var(--ink);margin-bottom:6px;letter-spacing:-.01em}.kitform__head-em{color:#3a4675}.kitform__sub{font:400 14px/1.5 var(--font-ui);color:var(--body-muted);margin:0 0 18px}.kitform__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:13px 16px;align-items:start}.cell-full{grid-column:1 / -1}.field{min-width:0}.field__label{display:block;font:600 11px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 7px}.field__label .opt{font:400 11px var(--font-ui);text-transform:none;letter-spacing:0;color:var(--muted);opacity:.75}.field__input,.field__textarea{width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:var(--field-bg);color:var(--ink);font:15px/1.4 var(--font-ui);outline:none}.field__input::placeholder,.field__textarea::placeholder{color:#a7a3b4}.field__input:focus,.field__textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6e7ba626}.field__textarea{resize:vertical;min-height:50px}.chip-group{border:0;margin:0;padding:0;min-width:0}.chip-group legend{padding:0}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip-label{display:inline-flex}.chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;line-height:1.2;border:1px solid var(--line);border-radius:14px;background:var(--field-bg);color:var(--ink);font:13.5px var(--font-ui);cursor:pointer;transition:all .15s;white-space:nowrap;-webkit-user-select:none;user-select:none}.chip:hover{border-color:var(--accent)}.chip--selected{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.chip-input:focus-visible+.chip{box-shadow:0 0 0 3px #6e7ba64d}.kitform__error{margin-top:14px;font:13px var(--font-ui);color:var(--error)}.kitform__submit{margin-top:18px;width:100%;padding:13px;border:none;border-radius:14px;background:var(--accent);color:var(--accent-text);font:600 15px var(--font-ui);letter-spacing:.01em;cursor:pointer;transition:background .15s,opacity .15s}.kitform__submit:hover:not(:disabled){background:#616e98}.kitform__submit:disabled{opacity:.7;cursor:progress}.kitform__fine{margin-top:12px;text-align:center;font:12px var(--font-ui);color:var(--muted);opacity:.85}.spinner{display:inline-block;width:15px;height:15px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;vertical-align:-2px;margin-right:8px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.kitform__thanks{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:48px 32px;text-align:center}.kitform__thanks-title{font:600 24px var(--font-display);color:var(--ink);margin-bottom:12px;letter-spacing:-.01em}.kitform__thanks-body{font:15px/1.6 var(--font-ui);color:var(--muted);max-width:380px;margin:0 auto}.section-label{font:600 11px var(--font-ui);letter-spacing:.18em;color:var(--muted-2);margin-bottom:18px}.section-head{display:flex;flex-direction:column;gap:10px;max-width:560px;margin-bottom:30px}.section-head .section-label{margin:0}.section-title{font:600 31px/1.12 var(--font-display);color:var(--ink);letter-spacing:-.01em;margin:0}.section-intro{font:400 15px/1.6 var(--font-ui);color:var(--body-muted);margin:0}.carousel{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%)}.carousel__track{display:flex;gap:16px;width:max-content;list-style:none;margin:0;padding:4px 0 10px;animation:gallery-marquee 50s linear infinite}.carousel:hover .carousel__track{animation-play-state:paused}.carousel__item{flex:none;height:440px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-card)}.carousel__img{display:block;height:100%;width:auto}@keyframes gallery-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 8px))}}@media (prefers-reduced-motion: reduce){.carousel{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.carousel__track{animation:none}.carousel__item--dup{display:none}}.how-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.how-grid:before{content:"";position:absolute;top:44px;left:12.5%;right:12.5%;height:2px;background:repeating-linear-gradient(to right,var(--line) 0 7px,transparent 7px 14px);z-index:0}.how-card{position:relative;z-index:1;display:flex;flex-direction:column;background:var(--surface);border-radius:18px;padding:22px;box-shadow:var(--shadow-card)}.how-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.how-card__icon{width:40px;height:40px;border-radius:50%;background:#6e7ba61f;color:var(--accent);display:flex;align-items:center;justify-content:center}.how-card__icon svg{width:21px;height:21px}.how-card__num{font:600 18px var(--font-display);color:var(--accent)}.how-card__tag{display:inline-block;width:fit-content;font:600 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:#6e7ba61a;padding:4px 9px;border-radius:999px;margin-bottom:11px}.how-card__title{font:600 15.5px var(--font-ui);margin-bottom:5px}.how-card__body{font:400 13px/1.55 var(--font-ui);color:var(--body-muted);margin:0}.how-cta{display:flex;justify-content:center;margin-top:30px}.how-cta__btn{display:inline-flex;align-items:center;gap:9px;background:var(--accent);color:#fff;font:600 15px var(--font-ui);padding:13px 26px;border-radius:999px;text-decoration:none;transition:background .15s}.how-cta__btn:hover{background:#616e98}.about{display:grid;grid-template-columns:.82fr 1fr;background:var(--surface);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-card)}.about__media{min-height:360px}.about__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%}.about__body{padding:44px 44px 40px}.about__body .section-label{margin-bottom:12px}.about__body .section-title{margin-bottom:18px}.about__p{font:400 15px/1.7 var(--font-ui);color:var(--body-muted);margin:0 0 14px;max-width:52ch}.about__sign{font:400 italic 18px var(--font-display);color:var(--ink);margin:18px 0 0}.faq-list{display:flex;flex-direction:column;gap:12px}.faq-item{background:var(--surface);border-radius:16px;box-shadow:var(--shadow-accordion);overflow:hidden}.faq-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:transparent;border:none;cursor:pointer;padding:18px 22px;text-align:left;font:600 16px var(--font-ui);color:var(--ink)}.faq-icon{flex:none;width:26px;height:26px;border-radius:50%;background:#edecf4;color:var(--accent);display:flex;align-items:center;justify-content:center;font:400 18px/1 var(--font-ui)}.faq-body{padding:0 22px 20px;font:400 14px/1.6 var(--font-ui);color:var(--body-muted)}.footer{border-top:1px solid var(--line-2)}.footer__row{max-width:var(--max-width);margin:0 auto;padding:38px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer__brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer__logo{height:64px}.footer__tagline{font:400 13px var(--font-ui);color:var(--muted)}.footer__links{display:flex;align-items:center;gap:26px}.footer__links a{font:500 13px var(--font-ui);color:var(--body-muted);text-decoration:none}.footer__links a:hover{color:var(--ink)}.footer__copy{max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter) 32px;font:400 12px var(--font-ui);color:var(--footer-faint)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#1a12268c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:modal-fade .18s ease}.modal__dialog{position:relative;width:100%;max-width:460px;max-height:calc(100vh - 48px);overflow-y:auto;background:var(--surface);border-radius:18px;box-shadow:0 40px 90px -30px #1e1a3299;padding:30px;animation:modal-pop .2s ease}.modal__close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:none;background:var(--field-bg);color:var(--muted);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.modal__close:hover{background:#ecebf3;color:var(--ink)}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}@media (prefers-reduced-motion: reduce){.modal,.modal__dialog{animation:none}}.contact__head{font:600 23px var(--font-display);color:var(--ink);letter-spacing:-.01em;margin:0 0 6px}.contact__intro{font:400 14px/1.6 var(--font-ui);color:var(--muted);margin:0 0 20px;max-width:38ch}.contact__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px 16px;align-items:start}.contact__thanks{text-align:center;padding:20px 4px 8px}@media (max-width: 900px){:root{--section-gap: 60px}.nav-float{padding-top:28px}.hero-wrap{padding-top:40px}.hero-panel{flex-direction:column;min-height:0}.hero-photo{position:relative;width:100%;height:300px;flex:none;background-image:url(/images/hero-wedding-dog-mobile.jpg);background-position:center 42%}.hero-panel__overlay{bottom:auto;height:300px;background:linear-gradient(to top,var(--hero-solid) 0%,rgba(40,30,55,.55) 9%,rgba(40,30,55,0) 26%)}.hero-headline--mobile{display:flex;flex-direction:column;padding:22px 26px 0}.hero-headline--mobile .hero-title{font-size:40px;margin-bottom:0}.hero-title__br,.hero-headline--desktop{display:none}.hero-grid{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:22px;padding:14px 24px 30px}.hero-sub{max-width:none;margin:0 0 18px}.how-grid{grid-template-columns:repeat(2,1fr)}.how-grid:before{display:none}.carousel__item{height:360px}.about{grid-template-columns:1fr}.about__media{min-height:0;max-height:340px}.about__body{padding:32px 28px 30px}.nav-float__divider,.nav-float .nav-links{display:none}}@media (max-width: 560px){:root{--gutter: 20px;--section-gap: 48px}.hero-wrap{padding:30px var(--gutter) 0}.hero-photo,.hero-panel__overlay{height:280px}.hero-headline--mobile{padding:20px 22px 0}.hero-headline--mobile .hero-title{font-size:36px}.hero-grid{padding:12px 20px 28px}.kitform__grid,.how-grid{grid-template-columns:1fr}.nav-trad .nav-links{gap:18px}}
