:root{--purple:#532c7c;--pink:#df4a95;--blue:#2c86c5;--paper:#fffcf9;--ink:#30243c;--muted:#74667d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}.wrap{width:min(1280px,100% - 112px);margin-inline:auto}.header{border-bottom:1px solid #532c7c20;justify-content:space-between;align-items:center;padding-block:28px 24px;display:flex}.brand{flex-shrink:0;width:218px;display:block}.brand img{width:100%;height:auto;display:block}.header-note{text-align:right;color:var(--muted);font-size:14px;line-height:1.6}.hero{grid-template-columns:1.25fr 1fr;align-items:center;gap:64px;padding-block:76px 80px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--purple);align-items:center;gap:10px;margin:0 0 25px;font-size:11px;font-weight:700;display:flex}.eyebrow span{background:var(--pink);border-radius:50%;width:8px;height:8px}h1{letter-spacing:-.055em;color:var(--purple);margin:0;font-size:clamp(44px,4.8vw,70px);font-weight:700;line-height:1.06}h1 span{color:var(--pink)}.intro{max-width:490px;color:var(--muted);margin:26px 0 30px;font-size:18px;line-height:1.65}.button{background:var(--purple);color:#fff;border-radius:50px;justify-content:space-between;align-items:center;gap:30px;padding:20px 26px;font-size:15px;font-weight:700;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.button span{font-size:23px;line-height:1}.button:hover{background:#402260;transform:translateY(-2px)}a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.occasions{color:var(--muted);flex-wrap:wrap;gap:10px 20px;margin:28px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.occasions li+li:before{content:"·";color:var(--pink);margin-right:20px}.hero-photo{aspect-ratio:1.15;border-radius:24px;width:100%;position:relative;overflow:hidden}.handoff-photo{object-fit:cover;object-position:right center}.contacts{border-top:1px solid #532c7c20;padding-block:48px 56px;scroll-margin-top:24px}.section-label{text-transform:uppercase;letter-spacing:.15em;color:var(--muted);font-size:10px}h2{letter-spacing:-.035em;color:var(--purple);margin:14px 0 0;font-size:clamp(25px,3vw,38px)}.footer{color:var(--muted);border-top:1px solid #532c7c20;justify-content:space-between;gap:20px;padding-block:23px;font-size:11px;display:flex}.skip-link{z-index:10;background:#fff;padding:12px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}@media (min-width:1500px){.hero{padding-block:95px}}@media (max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:32px}h1{font-size:48px}.intro{font-size:16px}}@media (max-width:760px){.wrap{width:calc(100% - 40px)}.header{padding-block:20px}.brand{width:210px}.header-note{max-width:100px;font-size:10px}.hero{grid-template-columns:1fr;gap:36px;padding-block:38px 44px}.eyebrow{margin-bottom:20px;font-size:10px}h1{font-size:clamp(36px,8.9vw,60px)}.intro{margin-block:22px 25px;font-size:16px;line-height:1.6}.button{padding:18px 23px;font-size:14px}.occasions{gap:8px 13px;margin-top:24px;font-size:11px}.occasions li+li:before{margin-right:13px}.hero-photo{aspect-ratio:1.15;border-radius:20px}.contacts{padding-block:35px 40px}.footer{font-size:10px;line-height:1.5}}@media (max-width:370px){.header-note{display:none}.brand{width:210px}.occasions{gap:8px}.occasions li+li:before{margin-right:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}.contacts{grid-template-columns:1fr 1.25fr;align-items:start;gap:72px;display:grid}.contact-info p{color:var(--muted);margin:22px 0 12px;line-height:1.6}.contact-phone{color:var(--purple);text-underline-offset:7px;padding-block:6px;font-size:clamp(24px,2.5vw,34px);font-weight:700;line-height:1.5;text-decoration-thickness:1px;display:inline-block}.inquiry-form{min-width:0;scroll-margin-top:32px}.inquiry-form h2{margin-top:0;font-size:clamp(26px,3vw,36px)}.form-hint{color:var(--muted);margin:12px 0 22px;font-size:13px;line-height:1.6}.inquiry-form fieldset{border:0;min-width:0;margin:0;padding:0}.form-field{margin-bottom:20px}.form-field label{margin-bottom:9px;font-size:15px;font-weight:700;line-height:1.5;display:block}.optional{color:var(--muted);font-size:13px;font-weight:400}.form-field input,.form-field textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #bdb0c9;border-radius:12px;min-height:50px;padding:13px 15px;font-size:16px;line-height:1.5;display:block}.form-field textarea{resize:vertical}.form-field input:focus-visible,.form-field textarea:focus-visible,.consent input:focus-visible,.submit-button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.form-field [aria-invalid=true]{border-color:#a02d50}.field-error{color:#a02d50;margin:8px 0 0;font-size:14px;line-height:1.5}.consent{cursor:pointer;align-items:flex-start;gap:12px;padding-block:8px;font-size:14px;line-height:1.6;display:flex}.consent input{width:22px;height:22px;accent-color:var(--purple);flex:0 0 22px;margin:0}.consent a,.form-notice a{text-underline-offset:3px}.form-notice{color:var(--purple);background:#f2eaf6;border-radius:12px;padding:15px 18px;font-size:14px;line-height:1.6}.submit-button{cursor:pointer;border:0;min-height:54px;margin-top:18px;font-family:inherit}.submit-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.form-result{margin:18px 0 0;font-size:16px;line-height:1.6}.form-result:empty{display:none}@media (max-width:760px){.contacts{grid-template-columns:1fr;gap:36px}.contact-phone,.inquiry-form h2{font-size:28px}.submit-button{justify-content:center;width:100%}.contact-info p{margin-top:18px}}.formats{border-top:1px solid #532c7c20;padding-block:48px 64px}.format-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:32px;display:grid}.format-card{background:#fff;border:1px solid #532c7c20;border-radius:24px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.format-photo{aspect-ratio:3/2;touch-action:pan-y pinch-zoom;background:#f2eaf6;position:relative}.format-main-image{object-fit:contain}.gallery-controls{color:var(--purple);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px 8px;font-size:13px;display:flex}.gallery-controls button{background:var(--paper);width:44px;height:44px;color:var(--purple);cursor:pointer;border:1px solid #532c7c30;border-radius:50%;font-size:23px}.gallery-controls button:hover{background:#f2eaf6}.gallery-thumbs{flex-wrap:wrap;gap:8px;padding:0 20px 20px;display:flex}.gallery-thumbs button{cursor:pointer;background:#f2eaf6;border:2px solid #0000;border-radius:8px;width:54px;height:48px;padding:0;position:relative;overflow:hidden}.gallery-thumbs img{object-fit:contain}.gallery-thumbs button[aria-pressed=true]{border-color:var(--purple)}.format-gallery button:focus-visible,.format-photo:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.format-copy{flex-direction:column;flex:1;align-items:flex-start;padding:8px 28px 28px;display:flex}.format-copy h3{letter-spacing:-.035em;color:var(--purple);margin:13px 0 16px;font-size:28px;line-height:1.15}.format-copy p{color:var(--muted);margin:0 0 25px;font-size:16px;line-height:1.65}.format-link{margin-top:auto}@media (max-width:760px){.formats{padding-block:36px 44px}.format-grid{grid-template-columns:1fr;gap:24px;margin-top:26px}.format-card{border-radius:20px}.format-copy{padding:6px 20px 24px}.format-copy h3{font-size:26px}.format-copy p{font-size:15px}.gallery-thumbs{gap:6px;padding-inline:14px}.gallery-thumbs button{width:44px;height:44px}.gallery-controls{padding-inline:14px}.format-link{justify-content:space-between;gap:12px;width:100%;padding-inline:18px;font-size:13px}}
