:root{--paper:#F6F3EA;--forest:#123C2C;--sage:#A8B49A;--ink:#18221E;--lime:#79CE20;--muted:#4d5a51;--line:#cfd3c5;--surface:#eceee3;--white:#fffefb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Manrope,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button,a,input,select,textarea,summary{outline-offset:5px}:focus-visible{outline:3px solid #346d32}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.045em;line-height:1.06}h1{font-size:clamp(46px,4.7vw,64px);max-width:10ch}h2{font-size:clamp(34px,3.4vw,46px)}h3{font-size:21px;line-height:1.3;letter-spacing:-.03em}p{color:var(--muted)}.wrap{width:min(100%,1280px);margin-inline:auto;padding-inline:48px}.section{padding-block:76px}.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.12em;font-weight:700;color:var(--forest);margin-bottom:19px}.devbar{background:var(--forest);color:var(--paper);text-align:center;font-size:12px;padding:7px 16px}.skip-link{position:absolute;top:-80px;left:12px;padding:12px;background:white;z-index:50}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:26px;border-bottom:1px solid var(--line)}.brand{display:block;flex-shrink:0;width:280px}.brand img{display:block;width:100%;height:auto}nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}nav>a:not(.button):hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 23px;background:var(--forest);color:white;font-size:15px;font-weight:700;border-radius:4px;line-height:1.5;min-height:52px;transition:background .18s,transform .18s}.button:hover{background:#21563e;transform:translateY(-1px)}.button>span{font-size:20px}.nav-cta{background:var(--lime);color:var(--ink);font-size:14px;padding:12px 19px;min-height:46px}.nav-cta:hover{background:#8bdb35}.full{width:100%}.hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:44px;padding-top:48px;padding-bottom:42px;align-items:start}.hero-copy .eyebrow{max-width:32ch}.hero-intro{margin-block:23px;max-width:40ch;font-size:17px}.hero-cta{min-width:240px}.reassurance{font-size:13px;margin-top:13px}.benefit{font-size:15px;margin-block:22px 15px;color:var(--forest);font-weight:600}.text-link{font-size:14px;font-weight:600}.hero-visual{min-width:0;padding-top:2px}.compare{position:relative;aspect-ratio:4/3;isolation:isolate;overflow:hidden;background:#E8E8DF;border-radius:6px;--split:50%}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none}.compare .original{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare .line{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);pointer-events:none;filter:drop-shadow(0 1px 2px #0005)}.compare .handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:white;color:var(--forest);font:bold 25px Arial;letter-spacing:2px}.compare .label{position:absolute;top:16px;border-radius:4px;padding:6px 11px;font-size:11px;font-weight:700;letter-spacing:.05em;pointer-events:none;z-index:2}.before{left:16px;background:var(--ink);color:white}.after{right:16px;background:var(--lime);color:var(--ink)}.compare input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:ew-resize;z-index:3;touch-action:pan-y}.compare:focus-within{outline:3px solid var(--forest);outline-offset:4px}.hero-visual figcaption{font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-top:13px;color:var(--muted)}.hero-visual figcaption strong{font-weight:600;color:var(--ink)}.promise{border-block:1px solid var(--line)}.promise>.wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 22px;padding-block:22px;font-size:13px}.promise span:before{content:'\2713 ';color:var(--forest);margin-right:8px}.promise strong{font-size:14px}.results{background:var(--surface)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:35px}.section-head>p,.section-head>div+div{max-width:370px}.section-head p{font-size:15px}.section-head .eyebrow{font-size:12px}.instruction{margin-top:15px;font-weight:700;color:var(--forest)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.gallery article{min-width:0}.card-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:13px}.gallery h3{font-size:17px;font-weight:700}.example-number{font-size:12px;color:var(--muted)}.section-note{font-size:13px;max-width:720px;margin-top:27px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.steps article{border-top:1px solid var(--line);padding-top:20px}.step-number{font:500 35px Fraunces,Georgia,serif;color:var(--forest)}.steps h3{margin:20px 0 12px;font-size:20px}.steps p{font-size:15px}.pricing-section{border-top:1px solid var(--line)}.pricing-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:75px}.pricing-copy>p:not(.eyebrow){margin-top:23px;max-width:36ch}.accuracy{margin-top:35px;padding-top:23px;border-top:1px solid var(--line);max-width:355px}.accuracy>span{font-size:30px;color:var(--forest)}.accuracy h3{font:500 26px/1.15 Fraunces,Georgia,serif;margin:12px 0}.accuracy p{font-size:15px}.pricing-box{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:27px;align-self:start}.tabs{display:flex;gap:4px;padding:5px;background:var(--surface);border-radius:4px}.tabs button{border:0;flex:1;padding:12px 8px;background:transparent;color:var(--forest);font-weight:600;font-size:14px;border-radius:3px}.tabs button[aria-selected=true]{background:var(--forest);color:white}.pricing-box h3{font:500 31px/1.15 Fraunces,Georgia,serif;margin:25px 0 12px}.pricing-box p{font-size:14px}.service-note{border-left:2px solid var(--sage);padding-left:11px;margin-top:14px}.packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px}.package{border:1px solid var(--line);color:var(--ink);background:var(--white);padding:12px 6px;border-radius:4px;min-width:0}.package[aria-pressed=true]{border:2px solid var(--forest);padding:11px 5px;background:#edf5df}.package span,.package strong,.package small{display:block}.package .choice-indicator{font-size:11px;min-height:20px;font-weight:700;color:var(--forest)}.package .quantity{font-size:14px}.package strong{font-size:26px;letter-spacing:-.04em;margin:6px 0}.package small{font-size:11px;white-space:nowrap}.inclusions{list-style:none;padding:0;margin:22px 0;font-size:14px;line-height:1.8}.inclusions li:before{content:'\2713 ';color:var(--forest);margin-right:9px}.total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-block:20px;gap:16px;font-size:14px}.total>span{max-width:70%}.total strong{font-size:27px;white-space:nowrap;color:var(--forest);letter-spacing:-.04em}.fine-print{font-size:12px!important;line-height:1.7;margin-top:15px}.order-section{background:#e7ecdf}.intro{margin-top:18px}.order-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:55px;margin-top:32px}.dropzone{background:var(--white);border:1px dashed #82917b;border-radius:6px;padding:30px 20px;display:flex;align-items:center;flex-direction:column;text-align:center;cursor:pointer}.dropzone.drag{background:#daf2bc}.upload-icon{font-size:35px;color:var(--forest);line-height:1;margin-bottom:17px}.dropzone strong{font-size:19px}.dropzone>span:not(.upload-icon){font-size:14px;margin-top:5px}.dropzone small{font-size:12px;color:var(--muted);margin:14px 0}.dropzone input{max-width:100%;font-size:13px}.dropzone input::file-selector-button{padding:9px 12px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}#upload-status{font-size:14px;margin-block:12px}.previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.preview{background:var(--white);padding:8px;min-width:0;border-radius:4px}.preview img{width:100%;height:95px;object-fit:contain;display:block}.preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;margin-top:5px}.preview button{background:none;border:0;text-decoration:underline;color:var(--forest);font-size:13px;min-height:35px;padding:0 5px}.order-grid label:not(.dropzone):not(.checkbox){display:block;font-size:14px;font-weight:700;margin:20px 0 7px}.optional{float:right;font-weight:400;font-size:13px;color:var(--muted)}input[type=email],select,textarea{width:100%;padding:12px;border:1px solid #aeb8a5;border-radius:4px;background:var(--white);color:var(--ink);font-size:15px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#65715f}.order-summary{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:29px;align-self:start}.order-summary .eyebrow{margin-bottom:14px}.order-summary h3{font:500 29px/1.15 Fraunces,Georgia,serif;margin-bottom:12px}.order-summary>p{font-size:14px}.order-summary .total{margin-top:20px}.checkbox{display:flex;gap:10px;font-size:13px;line-height:1.7;margin-block:23px;cursor:pointer}.checkbox input{flex-shrink:0;width:18px;height:18px;margin:3px 0 0;accent-color:var(--forest)}.order-notice{padding:13px;background:var(--surface);border-left:3px solid var(--sage);font-size:13px;margin-bottom:20px}.error{color:#9b2c20!important;font-size:14px!important}.error:not(:empty){margin-top:14px}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:65px}.faq>div>p:not(.eyebrow){margin-top:20px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;padding:20px 26px 20px 0;font-weight:600;font-size:15px;list-style:none;position:relative}.faq summary:after{content:'+';position:absolute;right:3px;font-size:20px;color:var(--forest)}.faq details[open] summary:after{content:'\2212 '}.faq summary::-webkit-details-marker{display:none}.faq details p{font-size:14px;padding-bottom:23px;max-width:62ch}.site-footer{border-top:1px solid var(--line);padding-block:35px}.site-footer .brand{width:240px}.site-footer p{font-size:14px;margin-top:17px}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.footer-bottom>div{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}.footer-bottom button{border:0;padding:0;background:none;color:var(--forest);font-size:13px;text-decoration:underline;text-underline-offset:4px}.footer-bottom small{font-size:12px;color:var(--muted)}dialog{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:40px;width:min(540px,calc(100% - 32px));max-height:90dvh;color:var(--ink)}dialog::backdrop{background:#10261caa}dialog h2{font-size:36px;margin:16px 0 20px}dialog p{font-size:15px;margin:15px 0}.close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:30px;color:var(--forest);min-width:44px;min-height:44px}.success-mark{font-size:32px;color:var(--forest)}
@media(min-width:1100px){.order-summary{position:sticky;top:24px}}@media(max-width:1050px){.wrap{padding-inline:32px}.hero{gap:28px;grid-template-columns:.85fr 1.15fr}h1{font-size:48px}.brand{width:230px}nav{gap:18px}.nav-cta{font-size:13px;padding-inline:14px}.pricing-layout{gap:40px}.order-grid{gap:35px}.promise>.wrap{justify-content:center}.hero-intro{font-size:16px}}@media(max-width:800px){.site-header{position:relative;padding-block:20px}.menu-toggle{display:flex;gap:14px;align-items:center;background:none;border:1px solid var(--line);padding:9px 13px;border-radius:4px;font-size:14px;color:var(--forest)}nav{display:none;position:absolute;left:24px;right:24px;top:100%;z-index:10;background:var(--paper);padding:18px;border:1px solid var(--line);box-shadow:0 12px 20px #18221e15;align-items:stretch;gap:4px}nav.is-open{display:flex;flex-direction:column}nav>a{padding:12px}.hero{grid-template-columns:1fr;gap:28px;padding-top:35px}.hero-copy{max-width:650px}h1{max-width:15ch;font-size:48px}.hero-intro{max-width:52ch}.benefit br{display:none}.hero-visual{width:100%;max-width:720px}.section{padding-block:56px}.section-head{gap:30px}.section-head>p,.section-head>div+div{max-width:310px}.pricing-layout{grid-template-columns:1fr;gap:30px}.pricing-copy>p:not(.eyebrow){max-width:54ch}.accuracy{max-width:none;margin-top:24px;padding-top:20px}.accuracy>span{display:none}.accuracy h3{font-size:23px}.accuracy h3 br{display:none}.accuracy p{max-width:65ch}.pricing-box{max-width:650px;width:100%;margin-inline:auto}.order-grid{grid-template-columns:1fr;gap:28px}.order-summary{position:static}.faq{grid-template-columns:1fr;gap:30px}.steps{gap:23px}.steps h3{font-size:18px}.gallery{gap:28px 20px}.gallery .compare .label{padding:5px 7px;font-size:10px;top:10px}.gallery .before{left:10px}.gallery .after{right:10px}.gallery .handle{width:40px;height:40px;font-size:21px}}
@media(max-width:560px){.wrap{padding-inline:22px}.brand{width:200px}.devbar{font-size:11px}.site-header{gap:15px}.menu-toggle{font-size:12px;padding:8px 10px;gap:8px}.hero{padding-top:30px;padding-bottom:30px;gap:25px}.hero-copy .eyebrow{font-size:10px;max-width:none;margin-bottom:16px;letter-spacing:.09em}h1{font-size:40px;max-width:15ch}h2{font-size:34px}.hero-intro{font-size:16px;margin-block:18px 22px}.hero-cta{width:100%}.reassurance{font-size:12px}.benefit{font-size:14px;margin-block:18px 12px}.text-link{font-size:13px}.hero-visual figcaption{font-size:11px}.compare .label{top:12px;padding:5px 8px;font-size:10px}.before{left:12px}.after{right:12px}.compare .handle{width:42px;height:42px;font-size:22px}.promise>.wrap{gap:10px 16px;padding-block:20px;justify-content:flex-start;font-size:12px}.promise strong{flex-basis:100%;font-size:14px}.promise span:last-child{flex-basis:100%}.section{padding-block:48px}.section-head{display:block;margin-bottom:27px}.section-head>p,.section-head>div+div{max-width:none;margin-top:20px}.section-head .eyebrow{font-size:11px}.section-head p{font-size:15px}.gallery{grid-template-columns:1fr;gap:28px}.gallery h3{font-size:16px}.steps{grid-template-columns:1fr;gap:25px}.steps article{display:grid;grid-template-columns:42px 1fr;gap:10px 15px}.step-number{grid-row:span 2;font-size:29px}.steps h3{margin:4px 0 0;font-size:19px}.steps p{grid-column:2;font-size:15px}.pricing-box{padding:19px}.pricing-box h3{font-size:29px}.tabs button{font-size:13px;padding:12px 5px}.packages{gap:7px}.package .quantity{font-size:13px}.package strong{font-size:24px}.package small{font-size:10px}.package .choice-indicator{font-size:10px}.total{font-size:13px}.total strong{font-size:25px}.inclusions{font-size:13px}.order-grid{margin-top:25px}.dropzone{padding:25px 13px}.dropzone strong{font-size:18px}.dropzone small{font-size:11px}.order-summary{padding:23px}.previews{grid-template-columns:repeat(2,minmax(0,1fr))}.faq{gap:25px}.faq summary{font-size:14px}.footer-bottom{gap:18px}.site-footer .brand{width:220px}dialog{padding:32px 24px}dialog h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep the proof close to the action on phones: move secondary copy below the slider. */
@media(max-width:560px){.hero{row-gap:0}.hero-copy{display:contents}.hero-copy .eyebrow{order:0}.hero-copy h1{order:1}.hero-intro{order:2}.hero-cta{order:3}.reassurance{order:4}.hero-visual{order:5;margin-top:20px}.benefit{order:6}.text-link{order:7}.hero-copy .benefit{margin-bottom:10px}}
/* Price details remain readable in narrow package cards. */
.package small{font-size:12px;white-space:normal;line-height:1.5}.package small span{display:block}@media(max-width:560px){.package small{font-size:12px}}
/* Horizontal package buttons: quantity left, complete pricing right. */
.packages{grid-template-columns:1fr;gap:10px}
.package,.package[aria-pressed=true]{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;padding:15px 18px;min-height:88px}
.package[aria-pressed=true]{padding:14px 17px}
.package .package-label{display:flex;flex-direction:column;gap:4px}
.package .quantity{font-size:16px;font-weight:600}
.package .choice-indicator{font-size:12px;min-height:0;font-weight:500}
.package .package-pricing{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;text-align:right;gap:4px}
.package .package-pricing strong{font-size:28px;line-height:1.2;margin:0;letter-spacing:-.04em;white-space:nowrap}
.package .package-pricing small{font-size:12px;white-space:nowrap}
@media(max-width:359px){.package,.package[aria-pressed=true]{padding-inline:12px}.package[aria-pressed=true]{padding-inline:11px}.package .quantity{font-size:15px}.package .package-pricing strong{font-size:26px}}
/* Narrow devices: permit grid children and the header logo to shrink. */
.order-grid>div,.order-grid>aside{min-width:0}
@media(max-width:359px){.site-header .brand{width:clamp(145px,52vw,185px)}.site-header{gap:10px}.wrap{padding-inline:16px}.menu-toggle{padding-inline:8px}.dropzone{padding-inline:10px}.order-summary{padding:18px}.package,.package[aria-pressed=true]{gap:8px}.package .package-pricing strong{font-size:24px}.package .package-pricing small{font-size:11px}h1{font-size:36px}.tabs button{font-size:12px}}
/* Gallery frames and form controls must not grow past their grid tracks. */
.compare{min-width:0}.order-grid input,.order-grid textarea,.order-grid select{max-width:100%}
.reference-field{min-width:0;margin:22px 0 0;padding:18px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.reference-field legend{font-size:15px;font-weight:700;padding-inline:6px;color:var(--forest)}
.reference-field legend .optional{float:none;font-size:12px;font-weight:400;margin-left:6px}
.reference-field>p{font-size:14px;line-height:1.65}
.reference-field input[type=file]{width:100%;font-size:13px}
.reference-field input::file-selector-button{padding:9px 12px;border:1px solid var(--line);border-radius:3px;background:var(--surface);font:inherit;color:var(--ink);cursor:pointer}
#reference-preview:not(:empty){display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px 14px;align-items:center;margin-top:18px}
#reference-preview img{width:100px;height:80px;object-fit:contain;grid-row:span 2}
#reference-preview span{font-size:13px;overflow-wrap:anywhere}
#reference-preview button{justify-self:start;background:none;border:0;color:var(--forest);font-size:13px;text-decoration:underline;min-height:36px;padding:3px 0}
#reference-status:not(:empty){margin-top:14px;font-size:13px}
.order-agreements{padding-top:6px;margin-bottom:22px;border-top:1px solid var(--line)}
.order-agreements .checkbox{margin:16px 0 5px}.policy-link{background:none;border:0;color:var(--forest);padding:4px 0;font-size:13px;text-decoration:underline;text-underline-offset:3px;min-height:32px;text-align:left}
.consent-heading{font-weight:700;font-size:14px;margin-top:21px;color:var(--forest)}.consent-heading>span{font-weight:400;font-size:12px;margin-left:6px}.advertising-choice{padding:13px;background:var(--surface);border-radius:4px}.order-agreements .fine-print{margin:11px 0 5px}
.policy-version{font-size:12px!important}dialog h3{font-size:17px;margin:25px 0 10px}.legal-page{max-width:880px;padding-block:45px}.legal-page h2{font-size:44px;margin-block:30px}.legal-page h3{font-size:20px;margin:30px 0 10px}.legal-page p{margin-bottom:15px}.legal-page a{text-decoration:underline}
