@font-face{font-family:Anton;src:url('./assets/anton.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f3eee4;--paper-light:#faf7f0;--ink:#1f221e;--muted:#65675e;--line:#cfcec0;--blue:#244bc5;--sand:#e7dfcc;--white:#fff;--font:Arial,Helvetica,sans-serif;--display:Anton,Impact,sans-serif;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:10;background-image:url('./assets/paper-grain.svg')}[hidden]{display:none!important}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.05}p+p{margin-top:16px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px}::selection{background:#cdd4b9;color:var(--ink)}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.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}.skip{position:fixed;top:12px;left:12px;z-index:50;background:var(--ink);color:var(--paper);padding:12px 20px;transform:translateY(-180%)}.skip:focus{transform:none}.eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.6;font-weight:700}.blue-dot{display:inline-block;width:6px;height:6px;margin:0 7px 1px 0;background:var(--blue);border-radius:50%}.site-header{position:sticky;top:0;z-index:20;background:rgba(243,238,228,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{min-height:97px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:var(--display);font-size:26px;line-height:.91;letter-spacing:-.025em;display:inline-flex;flex-direction:column;position:relative;flex-shrink:0}.brand span{letter-spacing:.065em}.brand i{width:6px;height:6px;position:absolute;background:var(--blue);right:-10px;bottom:1px;border-radius:50%}.site-nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600}.site-nav>a{padding:12px 0;position:relative}.site-nav>a:not(.nav-contact)::after,.quiet-link::after{content:"";height:1px;position:absolute;inset:auto 0 6px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.site-nav>a:hover::after,.quiet-link:hover::after{transform:scaleX(1)}.site-nav .nav-contact{margin-left:25px;border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:12px;font-size:18px}.menu-toggle{display:none;align-items:center;gap:10px;border:0;background:none;font-size:12px;padding:12px 0 12px 12px}.menu-mark{width:22px;height:10px;border-top:1px solid;border-bottom:1px solid;transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-mark{transform:rotate(-15deg)}
.hero{position:relative;display:grid;grid-template-columns:1.18fr 1fr;column-gap:52px;padding-top:67px;padding-bottom:0;min-height:830px}.hero-copy{position:relative;z-index:2;padding-bottom:70px}.hero h1{font-size:clamp(53px,5.4vw,82px);letter-spacing:-.018em;line-height:1.08;margin-top:30px;white-space:nowrap}.hero h1>span{color:var(--ink);text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:2px;text-underline-offset:.13em}.hero-intro{font-size:16px;line-height:1.65;margin-top:32px;max-width:420px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:12px;line-height:1.4;font-weight:700;border:1px solid transparent;padding:18px 22px;min-height:58px;transition:background .2s,transform .2s}.button span[aria-hidden]{font-size:21px;line-height:1}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper-light);border-color:var(--ink)}.button-dark:hover{background:#3b4036;border-color:#3b4036}.hero .button{margin-top:32px}.hero-small{font-size:10px;color:var(--muted);margin-top:14px}.hero-art{position:relative;padding-top:8px;margin-bottom:67px;align-self:start}.image-note{display:flex;justify-content:space-between;gap:15px;font-size:8px;font-weight:700;letter-spacing:.1em;margin-bottom:13px}.portrait{position:relative;height:563px;background:var(--ink);overflow:hidden}.portrait>img{height:100%;width:100%;object-fit:cover;object-position:61% 50%;filter:saturate(.66) contrast(.93)}.portrait::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(15,19,16,.8));pointer-events:none}.portrait figcaption{position:absolute;bottom:20px;left:22px;right:22px;display:flex;justify-content:space-between;gap:15px;z-index:1;color:var(--paper-light);font-size:9px;letter-spacing:.12em}.record{position:absolute;bottom:-35px;left:-72px;width:172px;aspect-ratio:1;border-radius:50%;border:1px solid #585a4d;background:repeating-radial-gradient(circle,#30362e 0,#30362e 1px,#252c25 2px,#252c25 3px);box-shadow:0 16px 32px #1f221e25;display:grid;place-items:center;transform:rotate(-13deg)}.record::before{content:"";position:absolute;inset:12px;border:1px solid #61695c55;border-radius:50%}.record-label{background:var(--sand);width:86px;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:50%;text-align:center;position:relative}.record-label::before{content:"";position:absolute;inset:7px;border:1px solid #b8b09f;border-radius:50%}.record-label>span{font-family:var(--display);line-height:1.05;font-size:16px;position:relative}.record-label>small{font-size:4px;letter-spacing:.06em;margin-top:6px}.art-index{display:block;text-align:right;font-size:8px;letter-spacing:.15em;margin-top:16px}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);min-height:67px;font-size:9px;letter-spacing:.12em;font-weight:600}.hero-bottom a{display:flex;gap:18px;padding:16px 0}.hero-bottom a>span{font-size:15px;line-height:1}
.section-line{border-top:1px solid var(--line)}.proposal{padding-block:98px 104px}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:65px}.section-top .eyebrow{padding-top:8px}h2{font-size:clamp(36px,4.25vw,62px);letter-spacing:-.01em}.proposal-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-block:35px}.proposal-row:last-child{border-bottom:1px solid var(--line)}.row-number{font-family:Georgia,serif;font-size:18px;line-height:1.2;color:var(--muted)}.proposal-row h3{font-size:27px;line-height:1.16}.proposal-row>p{font-size:13px;line-height:1.75;max-width:340px;color:#55594e}
.moments-section{background:var(--ink);color:var(--paper);padding-block:100px 108px;overflow:hidden;position:relative}.moments-section::before{content:"";position:absolute;inset:0 0 auto 55%;height:450px;background:radial-gradient(ellipse at top,#c7b08212,transparent 66%);pointer-events:none}.moments-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.moments-heading>h2{margin-top:22px}.moments-heading>p:last-child{max-width:330px;font-size:13px;line-height:1.75;color:#bcbfb1;margin-top:27px}.moment-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #5c6157}.moment-tabs>button{background:none;border:0;border-bottom:2px solid transparent;color:#adb4a5;text-align:left;font-size:12px;display:flex;justify-content:space-between;gap:8px;padding:8px 0 17px;margin-right:24px}.moment-tabs>button:last-child{margin-right:0}.moment-tabs>button[aria-selected=true]{color:var(--paper);border-bottom-color:var(--paper)}.moment-tabs button>span{font-size:16px}.moment-panel{padding-top:35px;max-width:420px}.moment-caption{font-size:8px;letter-spacing:.14em;color:#c4cdb7}.moment-panel>h3{font-size:47px;line-height:1.09;margin-top:16px}.moment-panel>p{font-size:13px;color:#c2c6b9;line-height:1.75;margin-top:20px}.text-button{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 6px;text-align:left;font-size:11px;font-weight:700;line-height:1.5;display:inline-flex;gap:20px;align-items:center}.text-button>span{font-size:17px;line-height:1}.moment-panel .text-button{margin-top:27px;color:var(--paper)}
.artist{padding-block:112px;display:grid;grid-template-columns:1.08fr 1fr;gap:95px;align-items:center}.artist-photo{position:relative}.artist-photo>img{height:470px;object-fit:cover;object-position:50% 50%;filter:saturate(.55)}.photo-caption{font-size:8px;font-weight:700;letter-spacing:.1em;display:block;margin-top:12px;color:var(--muted)}.artist-copy>h2{margin-top:23px}.artist-lead{font-size:16px;line-height:1.6;margin-top:28px}.artist-copy>p:not(.artist-lead):not(.eyebrow){font-size:13px;line-height:1.75;color:#55594e}.quiet-link{font-size:11px;line-height:1.5;font-weight:700;display:inline-flex;gap:20px;align-items:center;position:relative;padding-block:5px 10px}.quiet-link::after{bottom:4px;transform:scaleX(1);opacity:.5}.quiet-link:hover::after{opacity:1}.artist-copy .quiet-link{margin-top:22px}
.consult-section{padding-block:90px 102px;background:#e9e3d7;border-top:1px solid var(--line)}.consult-heading{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:55px}.consult-heading h2{margin-top:22px}.consult-heading>p{max-width:385px;font-size:14px;line-height:1.7;padding-bottom:4px;color:#55594e}.consult-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:54px;align-items:start}.wedding-form{background:var(--paper-light);padding:34px 38px 38px;min-width:0}.steps{list-style:none;display:flex;justify-content:space-between;gap:13px;padding:0 0 26px;margin:0 0 34px;border-bottom:1px solid var(--line);color:#777c6c}.steps li{font-size:8px;font-weight:700;letter-spacing:.06em;display:flex;align-items:center;gap:9px;white-space:nowrap}.steps span{font-family:Georgia,serif;font-weight:400;font-size:15px;line-height:1;letter-spacing:0}.steps .is-current{color:var(--ink)}.steps .is-current>span{color:var(--blue)}.steps .is-done{color:var(--ink)}.form-step>h3{font-family:var(--font);font-size:20px;font-weight:500;line-height:1.35;letter-spacing:-.025em;margin-bottom:29px;outline-offset:5px}.form-field{margin:0 0 23px;padding:0;border:0;min-width:0}.form-field>label,.form-field>legend{display:block;font-size:11px;font-weight:700;margin-bottom:8px;padding:0}.form-field legend{margin-bottom:11px}.optional{font-weight:400;color:var(--muted)}.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{display:block;width:100%;min-width:0;max-width:100%;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #a8ac9e;border-radius:0;padding:12px 0;font-size:14px;min-height:46px}.form-field textarea{resize:vertical;min-height:100px}.form-field select{padding-right:30px}.form-field input::placeholder,.form-field textarea::placeholder{color:#818577;opacity:1;font-size:12px}.form-field input:disabled{color:#959888;opacity:.7;background:#f0eee7}.field-help{font-size:10px;line-height:1.65;color:var(--muted);margin-top:9px;max-width:450px}.field-error{font-size:11px;color:#9b3028;margin-top:8px;line-height:1.5}.form-field [aria-invalid=true],.choice-grid[aria-invalid=true]{border-color:#a8372d}.form-error{padding:12px 14px;background:#f8e5df;border:1px solid #d0a59a;font-size:12px;line-height:1.5;margin-bottom:22px}.check-row{display:flex;align-items:flex-start;gap:10px;font-size:12px;cursor:pointer}.check-row input{width:16px;height:16px;accent-color:var(--ink);margin:1px 0 0;flex-shrink:0}.check-simple{margin:-7px 0 28px;font-size:11px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{position:relative;display:flex;cursor:pointer}.choice>input{position:absolute;top:14px;left:12px;width:14px;height:14px;margin:0;accent-color:var(--ink)}.choice>span{width:100%;border:1px solid #c6cabd;padding:11px 11px 11px 34px;font-size:11px}.choice>input:checked+span{border-color:var(--ink);background:#ebece0}.choice>input:focus-visible{outline-offset:4px}.moment-checks{display:flex;flex-wrap:wrap;gap:15px 24px}.moment-checks .check-row{font-size:11px}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.step-actions-end{justify-content:flex-end}.step-actions .button{min-height:50px;font-size:11px;padding:14px 18px;gap:20px}.back-button{border:0;background:none;padding:12px 0;font-size:10px;display:flex;gap:10px;align-items:center}.back-button>span{font-size:17px}.form-privacy{font-size:10px;line-height:1.75;color:var(--muted);max-width:460px}.consult-summary{padding:3px 0 0;position:sticky;top:125px}.summary-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-top>.eyebrow{font-size:8px}.summary-seal{width:36px;height:36px;display:grid;place-items:center;border:1px solid #969f8f;border-radius:50%;font-family:var(--display);font-size:14px;transform:rotate(-13deg)}.consult-summary h3{font-size:35px;line-height:1.12;margin-top:23px}.consult-summary dl{margin:27px 0 0}.consult-summary dl>div{padding-block:13px;border-top:1px solid #c8c7b7;display:grid;grid-template-columns:110px 1fr;gap:12px}.consult-summary dt{font-size:9px;font-weight:600;color:#666c5e}.consult-summary dd{font-size:11px;line-height:1.5;margin:0;overflow-wrap:anywhere}.summary-note{font-size:11px;line-height:1.7;margin-top:22px;color:#676c5f}.no-script{padding:20px;background:var(--paper-light);margin-bottom:25px;font-size:14px}.no-script a{display:inline-block;text-decoration:underline;margin-top:10px}.prepared-consult{margin-top:38px;padding:35px 38px;background:var(--paper-light);display:grid;grid-template-columns:1fr 1.1fr;gap:50px;border:1px solid #aeb5a3}.prepared-consult h3{font-size:35px;margin-top:20px}.prepared-consult p{font-size:12px;line-height:1.75;max-width:400px;margin-top:20px;color:#55594e}.prepared-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:25px}.prepared-actions .button{font-size:11px}.prepared-consult textarea{display:block;width:100%;font:11px/1.8 var(--font);padding:14px;background:#f0ede3;border:1px solid var(--line);color:var(--ink);resize:vertical;min-height:280px;margin-top:10px}.prepared-consult .copy-status{font-size:10px;margin-top:8px;min-height:18px;color:var(--ink)}
.faq{padding-block:100px 108px;display:grid;grid-template-columns:.9fr 1.2fr;gap:100px}.faq h2{font-size:45px;margin-top:22px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 0;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:20px;font-weight:400;flex-shrink:0;transition:transform .2s}.faq details[open] summary>span{transform:rotate(45deg)}.faq details>p{font-size:12px;line-height:1.8;color:#55594e;padding:0 36px 25px 0}.contact-band{background:var(--ink);color:var(--paper);padding-block:68px 75px}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-inner h2{font-size:57px;margin-top:22px}.contact-inner>div:last-child{padding-top:8px}.contact-inner p{font-size:12px;line-height:1.8}.contact-inner p>span{font-size:9px;color:#b7bfac}.contact-inner a:not(.quiet-link){display:block;font-size:26px;line-height:1.4;letter-spacing:-.03em;margin-top:25px;width:fit-content}.contact-inner .mail-link{font-size:16px!important;letter-spacing:0!important;margin-top:8px!important}.contact-inner .quiet-link{margin-top:18px;font-size:10px}.site-footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;padding-block:43px 32px}.site-footer .brand{font-size:23px;width:fit-content}.site-footer>p{font-size:9px;line-height:1.8;color:var(--muted)}.site-footer>a:not(.brand){font-size:10px;justify-self:end}.site-footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:23px;margin-top:7px;font-size:8px;letter-spacing:.08em;color:var(--muted)}.can-reveal .reveal{transition:opacity .55s,transform .55s}.can-reveal .reveal:not(.revealed){opacity:0;transform:translateY(18px)}
@media(min-width:1600px){.hero h1{font-size:84px}.hero{min-height:850px;column-gap:65px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.hero{column-gap:35px;min-height:760px;padding-top:55px}.hero h1{font-size:clamp(48px,5.5vw,66px)}.portrait{height:500px}.hero-intro{font-size:14px}.site-nav{gap:22px}.site-nav .nav-contact{margin-left:8px}.record{width:145px;left:-48px;bottom:-30px}.record-label{width:76px}.moments-inner{gap:70px}.artist{gap:60px}.artist-photo>img{height:420px}.consult-grid{gap:35px;grid-template-columns:1.6fr 1fr}.wedding-form{padding-inline:28px}.faq{gap:60px}.faq h2{font-size:40px}.proposal-row{gap:30px;grid-template-columns:.65fr 1fr 1fr}}
@media(max-width:850px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 44px)}.header-inner{min-height:82px;flex-wrap:wrap;gap:0}.brand{font-size:23px}.menu-toggle{display:flex}.site-nav{width:100%;flex-wrap:wrap;gap:0 25px;padding-block:12px 22px;border-top:1px solid var(--line);font-size:12px}.site-nav .nav-contact{margin-left:0}.js .site-nav{display:none}.js .site-nav.is-open{display:flex}.hero{grid-template-columns:1.1fr 1fr;column-gap:26px;min-height:660px;padding-top:45px}.hero h1{font-size:clamp(38px,5.4vw,49px);margin-top:25px}.hero-copy{padding-bottom:40px}.hero-intro{font-size:12px;margin-top:25px}.hero .button{font-size:10px;padding:15px 16px;gap:20px;min-height:52px;margin-top:25px}.hero-small{font-size:8px}.hero .eyebrow{font-size:7px;letter-spacing:.08em}.image-note{font-size:6px}.portrait{height:425px}.portrait figcaption{font-size:7px;left:15px;right:15px}.record{width:112px;left:-32px;bottom:-23px}.record-label{width:61px}.record-label>span{font-size:12px}.record-label>small{font-size:3px;margin-top:4px}.art-index{font-size:6px}.hero-bottom{font-size:7px;min-height:57px}.hero-art{margin-bottom:50px}.proposal{padding-block:70px}.section-top{grid-template-columns:.7fr 1.5fr;gap:25px;margin-bottom:40px}h2{font-size:40px}.proposal-row{grid-template-columns:35px 1fr 1.2fr;gap:22px;padding-block:28px}.proposal-row h3{font-size:23px}.proposal-row>p{font-size:12px}.row-number{font-size:14px}.moments-section{padding-block:70px}.moments-inner{gap:40px;grid-template-columns:.9fr 1.1fr}.moments-heading>h2{font-size:36px}.moments-heading>p:last-child{font-size:12px}.moment-tabs>button{font-size:10px;margin-right:15px}.moment-panel>h3{font-size:39px}.moment-panel>p{font-size:12px}.artist{padding-block:75px;gap:40px}.artist-photo>img{height:390px}.artist-copy>h2{font-size:38px}.artist-lead{font-size:14px;margin-top:22px}.artist-copy>p:not(.artist-lead):not(.eyebrow){font-size:12px}.consult-section{padding-block:65px}.consult-heading{gap:35px;margin-bottom:40px}.consult-heading>p{max-width:310px;font-size:12px}.consult-grid{gap:25px;grid-template-columns:1.65fr 1fr}.wedding-form{padding:25px 20px}.steps{gap:10px}.steps li{font-size:6px;letter-spacing:0;gap:5px}.steps span{font-size:13px}.form-step>h3{font-size:17px}.step-actions .button{font-size:9px;gap:12px;padding:13px 14px}.back-button{font-size:8px;gap:6px}.consult-summary h3{font-size:29px}.consult-summary dl>div{grid-template-columns:75px 1fr;gap:10px}.consult-summary dt{font-size:8px}.consult-summary dd{font-size:10px}.summary-top>.eyebrow{font-size:6px}.summary-seal{width:29px;height:29px;font-size:12px}.prepared-consult{padding:26px;gap:30px}.prepared-consult h3{font-size:29px}.faq{gap:40px;padding-block:70px}.faq h2{font-size:35px}.faq summary{font-size:11px;gap:20px;padding-block:20px}.faq details>p{font-size:11px}.contact-inner h2{font-size:46px}.contact-band{padding-block:55px}.site-footer{gap:25px}.site-footer>p{font-size:8px}.site-footer>a:not(.brand){font-size:9px}}
@media(max-width:620px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 36px)}.header-inner{min-height:76px}.brand{font-size:22px}.site-nav{flex-direction:column;align-items:stretch;gap:0;padding-block:12px 18px}.site-nav>a{padding:12px 0}.site-nav .nav-contact{margin-top:5px;width:fit-content}.hero{display:flex;flex-direction:column;padding-top:36px;min-height:0}.hero .eyebrow{font-size:7px;letter-spacing:.07em}.hero h1{font-size:clamp(43px,9.9vw,63px);line-height:1.09;margin-top:23px;white-space:normal;letter-spacing:-.015em}.hero-intro{font-size:13px;line-height:1.7;margin-top:24px}.desktop-break{display:none}.hero-copy{padding-bottom:31px}.hero .button{font-size:11px;gap:25px;min-height:54px;padding:16px 20px;margin-top:24px}.hero-small{font-size:9px;margin-top:11px}.hero-art{width:100%;max-width:none;padding-top:0;margin-bottom:48px}.image-note{font-size:7px;letter-spacing:.08em;margin-bottom:11px}.portrait{height:380px}.portrait>img{object-position:61% 43%}.portrait figcaption{font-size:8px;left:19px;right:19px;bottom:18px}.record{width:115px;bottom:-27px;left:auto;right:22px}.record-label{width:63px}.record-label>span{font-size:12px}.art-index{text-align:left;font-size:7px;margin-top:13px}.hero-bottom{font-size:7px;gap:14px;min-height:59px}.hero-bottom a{gap:12px}.proposal{padding-block:59px 65px}.section-top{display:block;margin-bottom:34px}.eyebrow{font-size:8px;letter-spacing:.12em}.section-top .eyebrow{padding-top:0;margin-bottom:20px}h2{font-size:37px}.proposal-row{grid-template-columns:28px 1fr;gap:20px 15px;padding-block:27px}.row-number{font-size:14px;padding-top:3px}.proposal-row h3{font-size:27px}.proposal-row>p{grid-column:2;font-size:12px;max-width:none;line-height:1.8}.moments-section{padding-block:60px 65px}.moments-inner{grid-template-columns:1fr;gap:37px}.moments-heading>h2{font-size:39px;margin-top:20px}.moments-heading>p:last-child{max-width:360px;font-size:12px;margin-top:22px}.moment-tabs>button{font-size:12px;padding-bottom:16px;margin-right:24px}.moment-panel{padding-top:27px;max-width:none}.moment-caption{font-size:7px}.moment-panel>h3{font-size:45px;margin-top:16px}.moment-panel>p{max-width:350px;font-size:12px}.moment-panel .text-button{font-size:10px;margin-top:23px}.artist{display:flex;flex-direction:column;gap:36px;padding-block:65px}.artist-photo{width:100%}.artist-photo>img{height:300px;object-position:50% 50%}.photo-caption{font-size:6px;margin-top:10px}.artist-copy>h2{font-size:40px;margin-top:20px}.artist-lead{font-size:15px;margin-top:23px}.artist-copy>p:not(.artist-lead):not(.eyebrow){font-size:12px;line-height:1.8}.artist-copy .quiet-link{font-size:10px;margin-top:20px}.consult-section{padding-block:58px 65px}.consult-heading{display:block;margin-bottom:30px}.consult-heading h2{font-size:42px;margin-top:20px}.consult-heading>p{max-width:none;font-size:12px;line-height:1.8;margin-top:22px;padding-bottom:0}.consult-grid{display:flex;flex-direction:column;gap:30px}.wedding-form{width:100%;padding:26px 20px}.steps{margin-bottom:28px;padding-bottom:23px;gap:10px}.steps li{font-size:6px;gap:6px}.steps span{font-size:14px}.form-step>h3{font-size:18px;margin-bottom:25px}.form-field{margin-bottom:23px}.form-field>label,.form-field>legend{font-size:11px}.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{font-size:16px}.form-field input::placeholder,.form-field textarea::placeholder{font-size:11px}.check-simple{font-size:10px;gap:9px;margin-bottom:26px}.field-help{font-size:9px}.choice>span{font-size:10px;padding-left:32px}.moment-checks{gap:14px 19px}.moment-checks .check-row{font-size:10px}.step-actions{gap:12px;padding-top:23px}.step-actions .button{font-size:10px;gap:14px;padding-inline:15px;min-height:50px}.back-button{font-size:9px;gap:7px}.form-privacy{font-size:9px}.consult-summary{position:static;width:100%;padding:7px 2px 0}.summary-top>.eyebrow{font-size:8px}.summary-seal{width:32px;height:32px}.consult-summary h3{font-size:31px;margin-top:16px}.consult-summary dl{margin-top:22px}.consult-summary dl>div{grid-template-columns:100px 1fr;gap:15px;padding-block:12px}.consult-summary dt{font-size:9px}.consult-summary dd{font-size:11px}.summary-note{font-size:10px;margin-top:17px}.prepared-consult{grid-template-columns:1fr;padding:28px 21px;gap:28px;margin-top:30px}.prepared-consult h3{font-size:32px;margin-top:17px}.prepared-consult p{font-size:11px;margin-top:17px}.prepared-consult textarea{font-size:11px;min-height:305px}.prepared-actions{gap:22px;margin-top:22px}.prepared-actions .button{font-size:10px;gap:20px;padding-inline:16px}.faq{display:block;padding-block:62px}.faq h2{font-size:38px;margin-top:20px}.faq-items{margin-top:32px}.faq summary{font-size:11px;gap:20px;padding-block:22px}.faq details>p{font-size:11px;padding-right:15px;line-height:1.85}.contact-band{padding-block:55px 60px}.contact-inner{grid-template-columns:1fr;gap:35px}.contact-inner h2{font-size:46px;margin-top:20px}.contact-inner>div:last-child{padding:0}.contact-inner p{font-size:12px}.contact-inner a:not(.quiet-link){font-size:28px;margin-top:20px}.contact-inner .mail-link{font-size:15px!important}.contact-inner .quiet-link{font-size:10px}.site-footer{grid-template-columns:1fr;gap:25px;padding-block:35px 25px}.site-footer .brand{font-size:24px}.site-footer>p{font-size:9px}.site-footer>a:not(.brand){justify-self:start;font-size:10px}.site-footer small{margin-top:0;padding-top:22px;font-size:7px}}
@media(max-width:360px){.wrap{width:calc(100% - 28px)}.hero h1{font-size:42px}.hero .eyebrow{font-size:6px}.hero-intro{font-size:12px}.portrait{height:340px}.wedding-form{padding-inline:16px}.steps li{font-size:5.6px;gap:4px}.steps span{font-size:12px}.step-actions .button{font-size:9px;gap:10px;padding-inline:12px}.back-button{font-size:8px}.choice-grid{gap:7px}.choice>span{font-size:9px}.moment-checks{gap:13px}.moment-checks .check-row{font-size:9px}.consult-heading h2{font-size:38px}.contact-inner .mail-link{font-size:14px!important}.hero-bottom{font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.can-reveal .reveal:not(.revealed){opacity:1;transform:none}}

/* Consultation accessibility: legible controls and fail-closed no-JS fieldset. */
.wizard-fields{margin:0;padding:0;border:0;min-width:0}
.moments-section :focus-visible,.contact-band :focus-visible{outline-color:var(--paper-light)}
@media(max-width:850px){
 .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 .steps li{display:block;white-space:normal;font-size:12px;line-height:1.4;letter-spacing:0}
 .steps span{display:block;font-size:17px;margin-bottom:6px}
 .form-field>label,.form-field>legend{font-size:14px;line-height:1.5}
 .field-help,.field-error,.check-simple,.moment-checks .check-row,.choice>span,.form-privacy{font-size:12px;line-height:1.65}
 .check-simple{align-items:flex-start}
 .check-row input{margin-top:3px}
 .choice>span{padding-top:12px;padding-bottom:12px}
 .choice>input{top:16px}
 .step-actions .button{font-size:12px;line-height:1.4}
 .back-button{font-size:12px;min-height:44px;line-height:1.4}
 .summary-top>.eyebrow{font-size:10px}
 .consult-summary dt{font-size:12px}
 .consult-summary dd{font-size:13px}
 .summary-note{font-size:12px}
 .copy-status,.prepared-consult .copy-status{font-size:12px}
 .prepared-actions .button,.prepared-actions .text-button{font-size:12px}
 .prepared-consult textarea{font-size:12px}
}
@media(max-width:620px){
 .hero .eyebrow{font-size:9px;line-height:1.8}
 .portrait figcaption,.photo-caption{font-size:10px;line-height:1.5}
 .form-field{margin-bottom:25px}
 .step-actions{flex-wrap:wrap}
 .step-actions .button{max-width:100%}
 .moment-checks{gap:14px 20px}
}

/* Photographs supplied for the wedding page. */
.portrait>img{object-position:70% 50%}
.artist-photo>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 55%}

/* Four wedding moments: a horizontal row on desktop, a readable two-column list below. */
.moment-tabs{gap:0 14px}
.moment-tabs>button{margin-right:0;min-width:0;min-height:44px}
@media(max-width:850px){.moment-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.moment-tabs>button{padding-top:12px;padding-bottom:12px}}
