*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {

  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {

  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.static {
  position: static;
}
.block {
  display: block;
}
.table {
  display: table;
}
.contents {
  display: contents;
}
.hidden {
  display: none;
}
.border {
  border-width: 1px;
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

@font-face{font-family:Onest;src:url(/build/fonts/onest.70b4fdde.ttf) format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f5f2eb;--ink:#242b24;--muted:#70766b;--line:#dcded2;--olive:#717956;--lime:#e1e7c7;--terra:#a3492f;--white:#fffefa;--serif:Georgia,'Times New Roman',serif;--sans:Onest,'Avenir Next',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled,.is-disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}h1 em,h2 em{font-family:var(--serif);font-weight:400}p{color:var(--muted)}svg{flex-shrink:0}input,textarea,select{min-width:0}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--terra);outline-offset:4px}.container{width:calc(100% - 112px);max-width:1392px;margin-inline:auto}.icon{display:inline-block;vertical-align:middle}.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-link{position:fixed;left:20px;top:-80px;background:var(--ink);color:white;padding:14px;z-index:100}.skip-link:focus{top:12px}.mobile-only{display:none!important}.eyebrow{display:block;font-size:14px;letter-spacing:.16em;font-weight:600;text-transform:uppercase;color:var(--olive)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:500;line-height:1.5}.text-link:hover{color:var(--terra)}.text-link .icon{width:18px}.button{display:inline-flex;justify-content:center;align-items:center;gap:26px;min-height:55px;padding:15px 25px;border:1px solid transparent;font-size:14px;font-weight:500;line-height:1.4;transition:background .2s,color .2s,transform .2s;text-align:center}.button .icon{width:18px}.button-primary{background:var(--terra);color:var(--white)}.button-primary:hover:not(:disabled){background:#893c27}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover:not(:disabled){background:#414b38}.button-outline{border-color:var(--ink);background:transparent}.button-outline:hover{background:var(--ink);color:var(--white)}.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent}.small-note{font-size:14px;line-height:1.65;color:var(--muted)}.status-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--olive);flex-shrink:0}.topline{background:var(--ink);color:#f0f0df;font-size:14px;letter-spacing:.035em}.topline-inner{height:36px;display:flex;align-items:center;justify-content:space-between}.topline a{display:flex;align-items:center;gap:14px}.topline .icon{width:13px;height:13px}.site-header{position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:46px;height:46px;-o-object-fit:contain;object-fit:contain;mix-blend-mode:multiply}.brand strong{font-weight:650;letter-spacing:.045em;line-height:1.5;font-size:18px;display:block;white-space:nowrap}.brand small{font-size:7px;letter-spacing:.17em;display:block;color:var(--muted)}.main-nav{display:flex;gap:30px;font-size:16px}.main-nav a{position:relative;padding:6px 0;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current]{color:var(--terra)}.main-nav a[aria-current]:after{content:'';height:1px;background:currentColor;position:absolute;left:0;right:0;bottom:0}.header-actions{display:flex;align-items:center;gap:12px}.draft-link{display:flex;gap:9px;align-items:center;font-size:16px}.draft-count{background:var(--terra);color:white;min-width:18px;height:18px;line-height:18px;border-radius:50%;font-size:14px;text-align:center}.menu-toggle{display:none}.hero{max-width:1680px;margin:0 auto;display:grid;grid-template-columns:48% 52%;min-height:600px}.hero-copy{padding:68px 36px 35px max(56px,calc((100vw - 1392px)/2))}.hero .eyebrow{font-size:14px;display:flex;align-items:center;gap:12px;letter-spacing:.16em}.tiny-star{font-size:24px;line-height:1}.hero h1{font-size:clamp(70px,7.2vw,111px);line-height:1.01;letter-spacing:-.065em;margin-top:35px;margin-bottom:25px;font-weight:450}.hero h1 em{letter-spacing:-.06em;color:var(--olive)}.hero-copy>p{font-size:14px;line-height:1.8}.hero-actions{display:flex;gap:27px;align-items:center;margin-top:32px}.hero-secondary{font-size:14px;display:flex;gap:12px;align-items:center}.hero-secondary .icon{width:15px}.hero-bottom{display:flex;gap:14px;align-items:center;font-size:14px;color:var(--muted);line-height:1.6;margin-top:53px}.hero-seal{display:flex;align-items:center;justify-content:center;border:1px solid #b0b79d;border-radius:50%;width:34px;height:34px;color:var(--olive);font:italic 19px var(--serif)}.hero-visual{position:relative;min-height:600px;overflow:hidden;background:#3d352b;color:var(--white)}.hero-photo{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.hero-visual:after{position:absolute;content:'';inset:0;background:linear-gradient(180deg,rgba(0,0,0,.16),transparent 30%,transparent 60%,rgba(0,0,0,.38));pointer-events:none}.hero-image-label{position:absolute;z-index:2;left:32px;right:32px;top:26px;display:flex;justify-content:space-between;font-size:14px;letter-spacing:.08em}.hero-photo-caption{position:absolute;left:35px;bottom:33px;z-index:2;font:italic 31px/1.2 var(--serif);letter-spacing:-.02em}.hero-round-link{position:absolute;right:32px;bottom:34px;z-index:3;border:1px solid #ffffff70;border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;transition:background .2s}.hero-round-link:hover{background:#ffffff25}.hero-round-link svg{transform:rotate(-45deg);width:24px;height:24px}.values-strip{border-block:1px solid var(--line);background:#eeede4}.values-strip>.container{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:73px}.values-strip span{display:flex;align-items:center;gap:15px;font-size:14px;letter-spacing:.015em}.values-strip svg{color:var(--olive);width:22px;height:22px}.section{padding-top:94px;padding-bottom:94px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:19px}.section-heading h2{font-size:42px;letter-spacing:-.055em}.section-heading>.text-link{margin-bottom:6px;white-space:nowrap}.heading-copy{font-size:14px;line-height:1.8}.collection-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:29px}.pill{border:1px solid var(--line);background:transparent;padding:8px 18px;border-radius:30px;font-size:14px;transition:background .15s}.pill.active,.pill:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.product-card{min-width:0}.product-image{display:block;position:relative;background:#e8e7dd;aspect-ratio:1.09;overflow:hidden}.product-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .55s}.product-card:hover .product-image img{transform:scale(1.035)}.product-tag{position:absolute;left:14px;top:14px;background:#f8f7f0eb;padding:5px 10px;color:#3e4638;font-size:14px;font-weight:500}.product-image-arrow{position:absolute;right:13px;bottom:13px;border-radius:50%;display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:var(--paper)}.product-image-arrow .icon{width:17px;height:17px;transform:rotate(-45deg)}.product-info{padding:16px 0 8px}.product-meta{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:var(--olive);letter-spacing:.03em;margin-bottom:9px}.product-meta>span{color:#8e9385}.product-info h3{font-size:19px;letter-spacing:-.035em;line-height:1.25;margin-bottom:8px}.product-info>p{font-size:14px;line-height:1.65;min-height:36px}.product-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:15px;margin-top:17px}.product-price{font-size:14px;font-weight:600}.product-bottom .text-link{font-size:14px;gap:8px}.demo-note{font-size:14px;line-height:1.5;color:#848974;display:flex;align-items:center;gap:8px;margin-top:28px}.demo-note .status-dot{width:4px;height:4px;opacity:.6}.builder-promo{display:grid;grid-template-columns:1fr 1fr;min-height:540px;background:#e7e9da}.builder-promo-image{position:relative;min-height:540px;overflow:hidden}.builder-promo-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;inset:0}.image-note{position:absolute;left:28px;bottom:25px;color:#fffdfa;font:italic 25px/1.2 var(--serif);text-shadow:0 1px 12px #0007}.builder-promo-copy{padding:53px 62px}.builder-promo-copy h2{font-size:51px;letter-spacing:-.055em;margin:24px 0 22px}.builder-promo-copy h2 em{color:var(--olive)}.builder-promo-copy>p{font-size:14px;line-height:1.85;max-width:350px}.simple-steps{list-style:none;padding:0;margin:27px 0}.simple-steps li{font-size:14px;display:flex;gap:16px;align-items:center;margin:12px 0}.simple-steps li span{font-size:14px;color:var(--olive);border:1px solid #bfc4ac;display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%}.builder-promo-copy>.small-note{display:block;max-width:270px;margin-top:13px;font-size:14px}.occasion-section .section-heading{margin-bottom:40px}.occasion-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.occasion-card{position:relative;display:block;border:1px solid var(--line);padding:33px 38px;min-height:310px;overflow:hidden}.occasion-number{display:block;font-size:14px;color:var(--olive);margin-bottom:30px}.occasion-card h3{font-size:36px;letter-spacing:-.04em;margin-bottom:18px}.occasion-card p{font-size:14px;line-height:1.7}.occasion-card .text-link{margin-top:29px;font-size:14px}.business-card{background:var(--ink);color:var(--white);border-color:var(--ink)}.business-card .occasion-number,.business-card p{color:#b8c0a5}.occasion-decoration{position:absolute;width:215px;height:215px;right:-20px;top:90px;color:#929e6570;stroke-width:.3;transform:rotate(10deg);pointer-events:none}.occasion-card:hover .text-link{gap:24px}.how-section{padding:64px 0;background:#e9eade}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:64px;margin-top:44px}.step-number{font:italic 39px var(--serif);color:var(--olive);display:block;margin-bottom:25px}.how-grid h3{font-size:18px;letter-spacing:-.035em;margin-bottom:15px}.how-grid p{font-size:14px;line-height:1.85;max-width:300px}.faq-section{display:grid;grid-template-columns:1fr 1.4fr;gap:75px}.faq-section h2{font-size:43px;margin:24px 0}.faq-section>.text-link{margin-top:20px}.faq-list details{border-top:1px solid var(--line);padding:21px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:23px;font-weight:300;color:var(--olive)}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list p{font-size:14px;line-height:1.9;padding-top:17px;padding-right:30px}.site-footer{background:var(--ink);color:#f3f2e8;padding:57px 0 22px}.footer-top{display:grid;grid-template-columns:1.3fr 1.25fr 1fr 1fr;gap:40px;padding-bottom:48px}.brand-footer{align-self:start}.brand-footer img{filter:invert(1);mix-blend-mode:screen;opacity:.9}.brand-footer strong{font-size:17px}.brand-footer small{font-size:6px;color:#aab39b}.footer-top>p{font:italic 26px/1.25 var(--serif);color:#d8ddca}.footer-nav{display:flex;flex-direction:column;gap:13px;font-size:14px;color:#c4cbb8}.footer-nav a:hover{color:var(--white)}.footer-bottom{border-top:1px solid #ffffff1f;display:flex;justify-content:space-between;gap:22px;padding-top:23px;font-size:14px;color:#98a18c}.toast{position:fixed;z-index:100;left:50%;bottom:26px;transform:translateX(-50%);background:var(--ink);color:white;box-shadow:0 8px 40px #0003;padding:17px 25px;font-size:14px;max-width:540px;width:-moz-max-content;width:max-content;max-width:calc(100vw - 40px)}

.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:11px;font-size:14px;color:var(--muted);padding:30px 0}.breadcrumbs a:hover{color:var(--terra)}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin:18px 0 38px}.page-heading h1{font-size:53px;margin-top:19px;letter-spacing:-.055em;max-width:850px}.page-heading h1 em{color:var(--olive)}.page-heading>p{font-size:14px;line-height:1.85;min-width:220px}.catalog-filters{display:grid;grid-template-columns:1.9fr .9fr 1fr auto;gap:0;border:1px solid var(--line);padding:12px;margin-top:32px;background:#f9f7f1}.search-field{display:flex;gap:13px;align-items:center;padding:0 16px}.search-field .icon{color:var(--olive);width:17px}.search-field input{width:100%;border:none;background:transparent;font-size:14px;min-height:40px;outline-offset:0}.filter-field{display:flex;flex-direction:column;border-left:1px solid var(--line);padding:2px 16px;justify-content:center}.filter-field>span{font-size:14px;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.filter-field select{background:transparent;border:0;font-size:14px;width:100%;padding:3px 15px 3px 0}.filter-submit{min-height:43px;padding:10px 17px;font-size:14px;gap:12px}.catalog-results-info{display:flex;justify-content:space-between;align-items:center;margin:22px 0;font-size:14px;color:var(--muted)}.catalog-results-info .text-link{font-size:14px}.catalog-results-info+.product-grid{row-gap:38px}.empty-state{grid-column:1/-1;text-align:center;padding:65px 20px 90px}.empty-state h2{font-size:37px;margin:23px 0 16px}.empty-state p{font-size:14px}.empty-state .button{margin-top:28px}.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:43px}.pagination a{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:14px}.pagination a[aria-current],.pagination a:hover{background:var(--ink);color:white;border-color:var(--ink)}.catalog-callout{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#e5e8d6;padding:32px 38px;margin:70px 0}.catalog-callout h2{font-size:28px;margin-bottom:10px}.catalog-callout p{font-size:14px}.product-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;margin:8px 0 40px;align-items:start}.product-main-image{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;width:100%;background:#e8e6db}.product-gallery{position:sticky;top:24px}.gallery-thumbs{display:flex;gap:12px;margin-top:12px;overflow-x:auto}.gallery-thumb{border:1px solid var(--line);padding:0;background:transparent;width:80px;height:80px;flex-shrink:0}.gallery-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.product-detail-copy{padding-top:10px}.product-detail-copy h1{font-size:43px;margin:22px 0 18px}.product-intro{font-size:14px;line-height:1.9}.availability{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--olive);margin-top:24px}.availability>span:last-child{margin-left:auto;color:var(--muted)}.detail-price{font-size:28px;letter-spacing:-.045em;margin:30px 0 21px;font-weight:500}.product-order-row{display:flex;gap:12px}.product-order-row>.button{flex:1}.quantity-input{border:1px solid var(--line);display:flex;width:74px;flex-shrink:0}.quantity-input input{width:100%;border:0;background:transparent;text-align:center;font-size:16px}.continue-request{margin-top:15px;color:var(--terra)}.product-detail-copy>.small-note{margin-top:16px}.product-description{border-top:1px solid var(--line);padding-top:26px;margin-top:29px}.product-description h2{font-size:18px;margin-bottom:18px}.product-description>p{font-size:14px;line-height:1.9}.spec-list{margin:0;font-size:14px}.spec-list>div{display:flex;justify-content:space-between;align-items:start;gap:25px;border-bottom:1px solid var(--line);padding:12px 0}.spec-list>div:last-child{border:0}.spec-list dt{color:var(--muted)}.spec-list dd{margin:0;text-align:right;max-width:55%}

.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:32px;margin-bottom:90px}.builder-products{min-width:0}.builder-topbar{display:flex;gap:20px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:21px}.builder-active-note{font-size:14px;color:var(--muted)}.builder-active-note strong{color:var(--ink);font-weight:600}.builder-search{width:220px;border:1px solid var(--line);padding:0 11px}.builder-search input{font-size:14px;min-height:36px}.builder-search svg{width:15px}.builder-tabs{gap:7px;margin-bottom:23px}.builder-tabs .pill{font-size:14px;padding:7px 14px}.builder-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.builder-item-image{aspect-ratio:1.05;background:#e6e5d9;position:relative;overflow:hidden}.builder-item-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.builder-item-image .product-tag{left:9px;top:9px;font-size:14px;padding:4px 7px}.builder-item-copy{padding:13px 0}.builder-item-copy h2{font-size:14px;line-height:1.3;letter-spacing:-.025em;margin-bottom:7px}.builder-item-copy p{font-size:14px;line-height:1.65;min-height:34px}.builder-item-footer{display:flex;align-items:center;gap:7px;justify-content:space-between;border-top:1px solid var(--line);margin-top:11px;padding-top:12px}.builder-item-footer>span{font-size:14px;font-weight:600}.add-item-button{display:flex;align-items:center;gap:5px;background:transparent;border:0;padding:0;color:var(--olive);font-size:14px}.add-item-button .icon{width:15px;height:15px}.add-item-button:hover{color:var(--terra)}.builder-summary{position:sticky;top:20px;padding:25px;background:#e9ecdd;border:1px solid #d7ddc6}.builder-panel-top{display:flex;justify-content:space-between;align-items:center}.builder-panel-top .eyebrow{font-size:14px}.builder-summary>h2{font-size:27px;margin:14px 0 20px}.builder-group-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.builder-group-tab{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid #c5cdb4;padding:7px 9px;font-size:14px;max-width:100%;text-align:left;word-break:break-word}.builder-group-tab>span{font-size:14px;opacity:.6}.builder-group-tab.active{background:var(--ink);border-color:var(--ink);color:var(--white)}.group-name-label{display:block;font-size:14px;color:var(--muted)}.group-name-label input{display:block;margin-top:6px;border:0;border-bottom:1px solid #bbc4a7;background:transparent;font-size:15px;color:var(--ink);width:100%;padding:5px 0 8px}.group-actions{display:flex;gap:17px;justify-content:flex-end;margin:10px 0 20px}.group-actions button{font-size:14px;color:var(--muted);border:none;background:transparent;padding:0}.group-actions button:hover{color:var(--terra)}.set-items-title{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:14px;font-weight:500;border-bottom:1px solid #cbd3ba;padding-bottom:11px}.set-items-title>span{color:var(--muted);font-weight:400}.set-item{display:flex;gap:10px;align-items:center;border-bottom:1px solid #d2d8c4;padding:13px 0}.set-item>img,.missing-product{width:43px;height:48px;-o-object-fit:cover;object-fit:cover;background:#d8dccb;flex-shrink:0}.set-item-main{flex:1;min-width:0}.set-item-main strong{display:block;font-size:14px;line-height:1.45;font-weight:500;margin-bottom:7px}.stepper{display:flex;align-items:center;justify-content:space-between;border:1px solid #bdc7a6;height:37px;background:#f4f5ea;width:120px}.stepper button{border:0;background:transparent;font-size:16px;width:34px;height:35px;flex-shrink:0}.stepper input{width:44px;border:0;background:transparent;text-align:center;font-size:14px}.stepper-small{width:91px;height:27px}.stepper-small button{width:27px;height:25px;font-size:14px}.stepper-small input{width:34px;font-size:14px}.remove-item{background:transparent;border:0;color:var(--muted);font-size:19px;padding:5px}.remove-item:hover{color:var(--terra)}.set-quantity{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:22px 0 14px}.set-quantity>label{font-size:14px;max-width:130px}.set-subtotal{display:flex;gap:15px;align-items:center;justify-content:space-between;font-size:14px;margin-bottom:24px}.set-subtotal>span{color:var(--muted)}.set-subtotal strong{font-weight:500}.empty-set{text-align:center;padding:28px 10px 23px}.empty-set>span{display:inline-flex;align-items:center;justify-content:center;border:1px dashed #aab894;width:40px;height:40px;border-radius:50%;font-size:23px;color:var(--olive);margin-bottom:12px}.empty-set p{font-size:14px;line-height:1.7}.new-group-button{display:flex;align-items:center;justify-content:center;width:100%;gap:10px;font-size:14px;border:1px dashed #a3af8a;padding:12px 10px;background:transparent}.new-group-button .icon{width:15px}.builder-summary-footer{padding-top:23px;margin-top:24px;border-top:1px solid #c6cfb4}.builder-total{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;margin-bottom:18px}.builder-total strong{font-size:15px;font-weight:500}.builder-summary-footer>.button{width:100%;font-size:14px;gap:20px;min-height:50px}.builder-summary-footer .small-note{font-size:14px;line-height:1.65;margin-top:12px}.builder-mobile-trigger{display:none}.empty-search{font-size:14px;padding:30px 0}.panel-backdrop{display:none}.checkout-container{padding-bottom:90px}.checkout-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:start;margin-top:55px}.checkout-form-section>h2,.checkout-summary-title h2{font-size:25px;margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-field{display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.5}.form-field input,.form-field textarea{border:1px solid #cfd3c3;background:#fcfaf4;padding:13px 14px;min-height:47px;font-size:14px;color:var(--ink);border-radius:0;width:100%}.form-field textarea{resize:vertical}.form-field input::-moz-placeholder, .form-field textarea::-moz-placeholder{color:#989c8f}.form-field input::placeholder,.form-field textarea::placeholder{color:#989c8f}.form-field input:focus,.form-field textarea:focus{border-color:var(--olive);outline:1px solid var(--olive);outline-offset:0}.full-width{grid-column:1/-1}.checkout-form-section form>.small-note{margin-top:12px}.checkout-form-section form>#email-note{margin-top:5px}.corporate-fields{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0;padding:17px 0}.corporate-fields summary{display:flex;gap:15px;align-items:center;justify-content:space-between;cursor:pointer;font-size:14px;list-style:none}.corporate-fields summary::-webkit-details-marker{display:none}.corporate-fields summary>span{font-size:20px;color:var(--olive)}.corporate-fields[open] summary{margin-bottom:23px}.corporate-fields[open] summary>span{transform:rotate(45deg)}.consent-field{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.7;color:var(--muted);margin-top:24px;margin-bottom:25px}.consent-field input{accent-color:var(--olive);margin-top:3px;width:15px;height:15px;flex-shrink:0}.consent-field a{text-decoration:underline;text-underline-offset:3px}.form-message{padding:15px;font-size:14px;margin:15px 0}.form-message.error{background:#f1ded3;color:#8e3722;border-left:3px solid var(--terra)}.checkout-form-section form>.button{width:100%}.checkout-summary{background:#e9ecdd;padding:32px;position:sticky;top:25px}.checkout-summary-title{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #cbd3ba;padding-bottom:22px;margin-bottom:0}.checkout-summary-title h2{font-size:24px;margin-bottom:0}.checkout-summary-title .text-link{font-size:14px}.checkout-group{padding:24px 0;border-bottom:1px solid #cbd3ba}.checkout-group-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.checkout-group-heading h3{font-size:16px;letter-spacing:-.025em;line-height:1.35}.checkout-group-heading>span{font-size:14px;white-space:nowrap}.checkout-group>.small-note{font-size:14px;margin-bottom:12px}.checkout-group ul{list-style:none;padding:0;margin:0}.checkout-group li{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:11px 0;font-size:14px;color:var(--muted)}.checkout-group li strong{color:var(--ink);font-size:14px;white-space:nowrap;font-weight:500}.checkout-group-cost{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:14px;margin-top:19px}.checkout-group-cost strong{font-weight:500}.checkout-group-cost span{color:var(--muted)}.checkout-total{display:flex;flex-direction:column;gap:10px;margin:25px 0 17px}.checkout-total>span{font-size:14px;color:var(--muted)}.checkout-total>strong{font-weight:500;font-size:29px;letter-spacing:-.05em}.checkout-summary>.small-note{font-size:14px}.request-success{max-width:720px;padding:60px 0 85px;outline:none}.request-success h2{font-size:49px;margin:24px 0}.request-success>p{font-size:14px;line-height:1.8;margin-bottom:12px;max-width:600px}.request-success .button{margin-top:23px}.success-actions{display:flex;gap:14px}.success-number{font-weight:600;color:var(--ink);letter-spacing:.06em;font-size:17px!important}.success-mark{display:flex;align-items:center;justify-content:center;width:60px;height:60px;font-size:26px;background:#e2e8cd;color:var(--olive);border-radius:50%;margin-bottom:28px}.private-request{max-width:950px;padding-block:65px 90px}.private-request h1{font-size:43px;margin:25px 0 22px}.request-status{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:22px;font-size:14px;color:var(--muted)}.status-pill{display:inline-flex;align-items:center;gap:8px;background:#e4e9d2;padding:7px 12px;color:var(--olive)}.lead-copy{font-size:14px;line-height:1.85;max-width:680px}.public-request-groups{display:grid;gap:20px;margin-top:35px}.public-request-group{padding:25px 30px;border:1px solid var(--line);background:#fbf9f3}.request-group-title{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-bottom:20px}.request-group-title h2{font-size:22px}.request-group-title>strong{font-size:14px;font-weight:500}.request-group-price{text-align:right;font-size:14px;margin-top:20px}.request-grand-total{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#e6ead6;padding:25px 30px;margin-top:20px}.request-grand-total>span{font-size:14px}.request-grand-total>strong{font-size:25px;font-weight:500;letter-spacing:-.04em}.private-contact{margin:40px 0}.private-contact>p{margin-bottom:20px;font-size:14px}.corporate-hero{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:65px;padding-bottom:35px}.corporate-hero h1{font-size:63px;line-height:1.09;letter-spacing:-.055em;margin:27px 0}.corporate-hero h1 em{color:var(--olive)}.corporate-hero p{font-size:14px;line-height:1.9;max-width:430px;margin-bottom:30px}.corporate-hero>img{width:100%;aspect-ratio:1;-o-object-fit:cover;object-fit:cover}.corporate-examples{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:25px}.corporate-examples>article{background:#e8ebdb;padding:29px}.corporate-examples>article .eyebrow{font-size:14px}.corporate-examples h3{font-size:27px;margin:22px 0}.corporate-examples ul{padding:0;list-style:none;color:var(--muted);font-size:14px;line-height:1.9;min-height:80px}.corporate-examples article>strong{display:block;border-top:1px solid #c6cfb3;padding-top:18px;font-size:14px;font-weight:500}.corporate-example-note{padding:23px 28px;display:flex;flex-direction:column;justify-content:center}.corporate-example-note>.icon{width:42px;height:42px;color:var(--olive);margin-bottom:25px}.corporate-example-note p{font-size:17px;line-height:1.7;letter-spacing:-.015em}.corporate-example-note p strong{color:var(--ink);font-weight:500}.corporate-example-note .text-link{font-size:14px;margin-top:25px}.corporate-cta{text-align:center}.corporate-cta h2{font-size:45px;margin:26px 0 35px}.corporate-cta>.text-link{margin-left:30px}.info-page{max-width:1040px;padding-bottom:95px}.info-page>.eyebrow{margin-top:30px}.info-page h1{font-size:60px;line-height:1.1;margin:26px 0}.info-page h1 em{color:var(--olive)}.prose{max-width:720px;margin:40px 0}.prose h2{font-size:25px;margin:35px 0 17px}.prose p{font-size:14px;line-height:1.9;white-space:normal}.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:40px 0}.contact-cards>a{padding:30px;background:#e7ebd8;border:1px solid #d4dcc2;position:relative}.contact-cards strong{display:block;font-size:23px;letter-spacing:-.03em;margin-top:20px;font-weight:500;overflow-wrap:anywhere}.contact-cards .icon{position:absolute;right:25px;top:26px}.contact-cards>a:hover{background:#dce3c8}

@media(min-width:1680px){.hero-copy{padding-left:144px}}
@media(max-width:1200px){.container{width:calc(100% - 72px)}.main-nav{gap:18px;font-size:15px}.header-inner{gap:20px}.draft-label{display:none}.hero-copy{padding:55px 25px 30px 36px}.hero h1{font-size:88px}.hero,.hero-visual{min-height:555px}.hero-actions{gap:18px}.hero-actions .button{padding:14px 19px;gap:18px;font-size:14px}.hero-secondary{font-size:14px}.hero-bottom{margin-top:40px}.builder-promo-copy{padding:45px}.builder-promo-copy h2{font-size:46px}.section-heading h2{font-size:38px}.footer-top{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:25px}.brand-footer strong{font-size:15px}.footer-top>p{font-size:23px}.builder-layout{grid-template-columns:minmax(0,1fr) 320px;gap:24px}.builder-summary{padding:20px}.builder-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-topbar{flex-direction:column;align-items:flex-start;gap:12px}.builder-search{width:100%}.page-heading h1{font-size:46px}.page-heading>p{font-size:14px}.product-detail{gap:45px}.product-detail-copy h1{font-size:36px}.checkout-layout{gap:55px}.corporate-hero{gap:45px}.corporate-hero h1{font-size:54px}.catalog-filters{grid-template-columns:1.5fr .9fr 1fr auto}.search-field{padding:0 10px}.filter-field{padding-inline:10px}.search-field input{font-size:14px}}
@media(max-width:960px){.header-inner{height:84px}.brand strong{font-size:16px}.brand img{width:40px;height:40px}.brand small{font-size:6px}.main-nav{gap:15px;font-size:14px}.hero h1{font-size:76px}.hero-copy{padding-top:47px}.hero .eyebrow{font-size:14px}.hero-copy>p{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-secondary{padding:0 3px}.hero,.hero-visual{min-height:565px}.hero-bottom{margin-top:31px;font-size:14px}.hero-image-label{left:23px;right:23px;font-size:14px;gap:20px}.hero-image-label>span:last-child{display:none}.hero-photo-caption{font-size:27px;left:24px}.hero-round-link{right:23px;width:43px;height:43px}.values-strip>.container{gap:20px}.values-strip span{font-size:14px;gap:10px}.values-strip svg{width:18px}.section{padding-block:72px}.section-heading h2{font-size:34px}.product-grid{gap:20px}.product-tag{font-size:14px;left:10px;top:10px;padding:4px 7px}.product-info h3{font-size:17px}.product-bottom{align-items:flex-start;flex-direction:column;gap:10px}.product-price{font-size:14px}.builder-promo-copy{padding:37px}.builder-promo-copy h2{font-size:39px}.builder-promo-copy>p{font-size:14px}.simple-steps li{font-size:14px}.builder-promo-copy>.button{min-height:49px;font-size:14px;padding:13px 18px}.builder-promo,.builder-promo-image{min-height:500px}.occasion-card{padding:27px}.occasion-card h3{font-size:32px}.occasion-decoration{right:-55px;width:200px;height:200px}.how-grid{gap:32px}.how-grid h3{font-size:16px}.how-grid p{font-size:14px}.faq-section{gap:40px}.faq-section h2{font-size:37px}.faq-list summary{font-size:14px}.footer-top{grid-template-columns:1.3fr 1fr;gap:35px 70px}.footer-top>p{text-align:right}.footer-nav{font-size:14px}.footer-bottom{font-size:14px}.catalog-filters{grid-template-columns:1fr 1fr;padding:14px;gap:16px}.catalog-filters>.search-field{grid-column:1/-1;border-bottom:1px solid var(--line)}.filter-field{border-left:0;padding-left:0}.filter-submit{grid-column:1/-1;grid-row:auto}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}.page-heading h1{font-size:44px}.page-heading>p{font-size:14px}.builder-layout{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.builder-item-footer{align-items:flex-start;flex-direction:column;gap:10px}.builder-item-copy h2{font-size:14px}.builder-item-copy p{font-size:14px}.builder-tabs .pill{padding:6px 11px;font-size:14px}.product-detail{gap:30px}.product-detail-copy h1{font-size:31px}.product-order-row{flex-wrap:wrap}.product-order-row>.button{font-size:14px;padding:15px 10px;gap:8px}.product-detail-copy .product-intro{font-size:14px}.product-description>p{font-size:14px}.product-description h2{font-size:17px}.detail-price{font-size:25px}.checkout-layout{gap:32px;grid-template-columns:1.1fr 1fr}.checkout-summary{padding:24px}.form-grid{gap:18px;grid-template-columns:1fr}.full-width{grid-column:auto}.checkout-summary-title h2{font-size:21px}.corporate-hero{gap:35px}.corporate-hero h1{font-size:47px}.corporate-examples{gap:18px}.corporate-examples>article{padding:23px}.corporate-example-note{padding:15px}.corporate-example-note p{font-size:14px}.corporate-examples .eyebrow{line-height:1.6}.info-page h1{font-size:48px}}
@media(max-width:700px){.container{width:calc(100% - 40px)}.mobile-only{display:initial!important}.desktop-only{display:none!important}.topline-inner{height:32px;font-size:14px;justify-content:center}.topline-inner>a{display:none}.header-inner{height:76px;gap:15px}.brand{gap:7px}.brand img{width:38px;height:38px}.brand strong{font-size:16px}.brand small{font-size:6px;letter-spacing:.135em}.header-actions{gap:7px}.menu-toggle{display:inline-flex}.draft-link>.icon{width:20px}.draft-count{min-width:16px;height:16px;line-height:16px;font-size:14px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 20px #242b2410;flex-direction:column;gap:0;font-size:16px}.main-nav.is-open{display:flex}.main-nav>a{padding:12px 0}.main-nav a[aria-current]:after{display:none}.hero{display:flex;flex-direction:column;min-height:auto}.hero-copy{padding:35px 20px 29px}.hero .eyebrow{font-size:14px;letter-spacing:.13em;gap:9px}.tiny-star{font-size:20px}.hero h1{font-size:clamp(46px,16vw,68px);margin:27px 0 22px;line-height:.99;letter-spacing:-.06em}.hero-copy>p{font-size:14px;line-height:1.75;max-width:330px}.hero-actions{flex-direction:row;align-items:center;gap:23px;margin-top:25px}.hero-actions .button{min-height:50px;font-size:14px;padding:14px 17px;gap:17px}.hero-secondary{font-size:14px;gap:8px}.hero-bottom{display:none}.hero-visual{min-height:335px;width:100%}.hero-photo{-o-object-position:50% 55%;object-position:50% 55%}.hero-image-label{left:20px;top:20px;font-size:14px}.hero-image-label>span:last-child{display:block}.hero-photo-caption{font-size:27px;left:22px;bottom:24px}.hero-round-link{width:45px;height:45px;bottom:24px;right:21px}.values-strip>.container{min-height:85px;gap:14px;align-items:flex-start;padding:18px 0}.values-strip span{font-size:14px;line-height:1.6;gap:8px;flex:1;flex-direction:column}.values-strip svg{width:18px;height:18px}.section{padding-block:56px}.section-heading{align-items:flex-start;gap:22px;flex-wrap:wrap;margin-bottom:25px}.section-heading .eyebrow{font-size:14px;margin-bottom:15px}.section-heading h2{font-size:33px;line-height:1.15;letter-spacing:-.055em}.section-heading>.text-link{font-size:14px;margin-top:0;margin-bottom:0;gap:10px}.section-heading>.text-link .icon{width:16px}.collection-tabs{gap:6px;margin-bottom:22px;flex-wrap:wrap}.pill{font-size:14px;padding:7px 13px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-product-grid>.product-card:last-child{display:none}.product-image{aspect-ratio:.86}.product-tag{left:7px;top:7px;padding:4px 6px;font-size:14px;max-width:calc(100% - 14px)}.product-image-arrow{width:27px;height:27px;right:8px;bottom:8px}.product-image-arrow .icon{width:14px;height:14px}.product-info{padding-top:12px}.product-meta{font-size:14px;gap:5px}.product-meta>span{display:none}.product-info h3{font-size:15px;line-height:1.35;letter-spacing:-.03em;margin-bottom:7px}.product-info>p{font-size:14px;line-height:1.6;min-height:43px}.product-bottom{padding-top:11px;margin-top:11px;gap:7px}.product-price{font-size:14px}.product-bottom .text-link{font-size:14px;gap:6px}.demo-note{font-size:14px;margin-top:22px;align-items:flex-start;line-height:1.7}.demo-note>.status-dot{margin-top:5px}.builder-promo{display:flex;flex-direction:column;width:100%;min-height:0}.builder-promo-image{min-height:310px;order:2}.builder-promo-copy{padding:36px 24px 38px;order:1}.builder-promo-copy .eyebrow{font-size:14px}.builder-promo-copy h2{font-size:43px;line-height:1.1;margin:24px 0 19px}.builder-promo-copy h2 br:last-child{display:none}.builder-promo-copy>p{font-size:14px;max-width:390px}.simple-steps{margin:24px 0}.simple-steps li{font-size:14px}.builder-promo-copy>.button{font-size:14px;min-height:50px;padding-inline:22px}.builder-promo-copy>.small-note{font-size:14px;max-width:290px}.image-note{left:22px;bottom:23px;font-size:26px}.heading-copy{font-size:14px;line-height:1.8}.occasion-section .section-heading{margin-bottom:28px;gap:18px}.occasion-grid{grid-template-columns:1fr;gap:16px}.occasion-card{padding:25px 26px;min-height:270px}.occasion-number{margin-bottom:20px;font-size:14px}.occasion-card h3{font-size:34px;margin-bottom:14px}.occasion-card p{font-size:14px}.occasion-card .text-link{font-size:14px;margin-top:23px}.occasion-decoration{width:220px;height:220px;top:55px;right:-10px}.how-section{padding:45px 0}.how-section .section-heading{margin-bottom:26px}.how-section .section-heading h2{font-size:31px}.how-grid{grid-template-columns:1fr;gap:26px;margin-top:28px}.how-grid article{display:grid;grid-template-columns:40px 1fr;-moz-column-gap:16px;column-gap:16px;align-items:start}.step-number{grid-row:1/3;font-size:30px;margin-bottom:0;line-height:1}.how-grid h3{font-size:16px;margin:0 0 10px}.how-grid p{font-size:14px;max-width:none;grid-column:2}.faq-section{grid-template-columns:1fr;gap:30px}.faq-section .eyebrow{font-size:14px}.faq-section h2{font-size:35px;margin:18px 0}.faq-section h2 br{display:none}.faq-section .text-link{font-size:14px}.faq-list details{padding:17px 0}.faq-list summary{font-size:14px;line-height:1.55}.faq-list p{font-size:14px;line-height:1.85}.site-footer{padding:37px 0 24px}.footer-top{grid-template-columns:1fr 1fr;gap:29px 18px;padding-bottom:32px}.brand-footer{grid-column:1/-1}.brand-footer img{width:42px;height:42px}.brand-footer strong{font-size:17px}.brand-footer small{font-size:6px}.footer-top>p{display:none}.footer-nav{font-size:14px;gap:13px}.footer-bottom{flex-wrap:wrap;gap:13px 20px;font-size:14px;justify-content:space-between}.footer-bottom>a{width:100%;margin-top:2px}.toast{bottom:20px;padding:13px 17px;font-size:14px;line-height:1.6;max-width:calc(100vw - 32px);width:calc(100vw - 32px)}.breadcrumbs{padding:23px 0;font-size:14px;gap:8px}.page-heading{margin:16px 0 29px;gap:19px}.page-heading h1{font-size:38px;line-height:1.15;margin-top:18px}.page-heading .eyebrow{font-size:14px}.page-heading>p{font-size:14px;line-height:1.8}.catalog-filters{padding:11px;gap:13px;grid-template-columns:.9fr 1.1fr;margin-top:25px}.catalog-filters>.search-field{grid-column:1/-1;padding:0 4px;grid-row:1}.catalog-filters>.filter-field{grid-column:auto;padding:0}.filter-submit{grid-row:auto;grid-column:1/-1;min-height:36px;padding:8px 12px;font-size:14px}.filter-field>span{font-size:14px}.filter-field select{font-size:14px}.catalog-results-info{font-size:14px;margin:19px 0}.catalog-results-info .text-link{font-size:14px}.catalog-callout{padding:26px 24px;margin:45px 0;flex-direction:column;align-items:flex-start;gap:22px}.catalog-callout h2{font-size:26px}.catalog-callout p{font-size:14px}.catalog-callout .button{font-size:14px;min-height:48px}.pagination{gap:6px;margin-top:29px}.pagination a{width:36px;height:36px;font-size:14px}.empty-state{padding:40px 12px 50px}.empty-state h2{font-size:29px}.empty-state p{font-size:14px}.product-detail{grid-template-columns:1fr;gap:28px;margin-top:0}.product-gallery{position:static}.product-main-image{aspect-ratio:1.03}.gallery-thumb{width:66px;height:66px}.product-detail-copy{padding:0}.product-detail-copy h1{font-size:36px;margin-top:17px}.product-detail-copy>.eyebrow{font-size:14px}.product-detail-copy .product-intro{font-size:14px}.availability{font-size:14px;margin-top:20px}.detail-price{font-size:27px;margin:26px 0 20px}.product-order-row>.button{font-size:14px;padding:15px 19px;gap:25px}.quantity-input{width:66px}.product-description{padding-top:23px;margin-top:24px}.product-description h2{font-size:18px}.product-description>p{font-size:14px}.spec-list{font-size:14px}.builder-layout{display:block;margin-bottom:55px;padding-bottom:42px}.builder-topbar{margin-top:2px}.builder-active-note{font-size:14px}.builder-search input{font-size:14px;min-height:39px}.builder-tabs .pill{font-size:14px;padding:7px 12px}.builder-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 15px}.builder-item-image{aspect-ratio:.95}.builder-item-copy h2{font-size:14px}.builder-item-copy p{font-size:14px}.builder-item-footer{gap:10px;flex-direction:row;flex-wrap:wrap;align-items:center}.builder-item-footer>span{font-size:14px}.add-item-button{font-size:14px;gap:4px}.builder-item-image .product-tag{font-size:14px;left:7px;top:7px}.builder-summary{display:none;position:fixed;left:0;right:0;bottom:0;top:auto;z-index:80;max-height:88dvh;overflow-y:auto;padding:24px;border:0;box-shadow:0 -10px 60px #0002}.builder-summary.is-open{display:block}.builder-panel-top .mobile-only{display:inline-flex!important}.builder-panel-top>.eyebrow{font-size:14px}.builder-panel-top .icon-button{margin:-10px -10px -10px 0}.builder-summary>h2{font-size:30px;margin-top:11px}.builder-group-tab{font-size:14px;padding:9px 12px}.builder-group-tabs{gap:8px}.group-name-label{font-size:14px}.group-name-label input{font-size:17px}.group-actions button{font-size:14px;min-height:25px}.set-items-title{font-size:14px}.set-item{padding:15px 0}.set-item-main strong{font-size:14px}.set-item>img{width:50px;height:55px}.stepper-small{height:33px;width:108px}.stepper-small input{font-size:14px;width:40px}.stepper-small button{height:31px;width:32px;font-size:17px}.remove-item{padding:8px 12px}.set-quantity>label{font-size:14px;max-width:none}.set-subtotal{font-size:14px}.new-group-button{font-size:14px;padding:14px}.builder-summary-footer{margin-top:24px}.builder-total{font-size:14px}.builder-total>strong{font-size:17px}.builder-summary-footer .small-note{font-size:14px}.builder-mobile-trigger{display:flex;position:fixed;bottom:17px;left:20px;right:20px;z-index:45;box-shadow:0 5px 25px #0003;justify-content:flex-start;gap:14px;padding:14px 21px;min-height:51px}.builder-mobile-trigger>span{margin-left:auto;background:#ffffff26;border-radius:50%;font-size:14px;width:23px;height:23px;display:flex;align-items:center;justify-content:center}.panel-backdrop{display:block;position:fixed;inset:0;background:#12171178;z-index:70}.panel-open{overflow:hidden}.builder-products>.demo-note{margin-top:27px}.checkout-container{padding-bottom:55px}.checkout-layout{grid-template-columns:1fr;gap:36px;margin-top:35px}.checkout-summary{position:static;grid-row:1;padding:24px}.checkout-summary-title h2{font-size:23px}.checkout-total>strong{font-size:27px}.checkout-group-heading h3{font-size:16px}.checkout-form-section>h2{font-size:25px;margin-bottom:25px}.form-grid{grid-template-columns:1fr;gap:19px}.form-field{font-size:14px}.form-field input,.form-field textarea{font-size:14px;padding:13px;min-height:49px}.checkout-form-section .small-note{font-size:14px}.consent-field{font-size:14px;gap:10px;line-height:1.8}.corporate-fields summary{font-size:14px;line-height:1.7;gap:20px}.checkout-form-section form>.button{font-size:14px;min-height:53px}.request-success{padding:30px 0 45px}.request-success h2{font-size:39px;line-height:1.13;margin:23px 0}.request-success>.eyebrow{font-size:14px}.request-success>p{font-size:14px}.success-actions{flex-direction:column;gap:0;align-items:stretch}.success-actions .button{margin-top:15px}.private-request{padding-block:40px 55px}.private-request>.eyebrow{font-size:14px}.private-request h1{font-size:34px;margin:22px 0}.request-status{font-size:14px;gap:14px}.lead-copy{font-size:14px}.public-request-group{padding:21px}.request-group-title{align-items:flex-start}.request-group-title h2{font-size:21px;line-height:1.25}.request-group-title>strong{font-size:14px;white-space:nowrap}.request-group-price{font-size:14px}.request-grand-total{padding:22px;flex-direction:column;align-items:flex-start;gap:8px}.request-grand-total>span{font-size:14px}.request-grand-total>strong{font-size:26px}.private-contact{margin:30px 0}.private-contact>p{font-size:14px}.private-contact .button{font-size:14px}.corporate-hero{grid-template-columns:1fr;gap:34px;padding-top:36px;padding-bottom:0}.corporate-hero>.eyebrow,.corporate-hero div>.eyebrow{font-size:14px}.corporate-hero h1{font-size:49px;margin:24px 0}.corporate-hero p{font-size:14px;line-height:1.85;margin-bottom:25px}.corporate-hero .button{font-size:14px}.corporate-hero>img{aspect-ratio:1.1}.corporate-examples{grid-template-columns:1fr;gap:17px}.corporate-examples>article{padding:25px}.corporate-examples h3{font-size:30px;margin:18px 0}.corporate-examples ul{min-height:0;margin-bottom:20px}.corporate-example-note{padding:20px 10px 0}.corporate-example-note>.icon{width:33px;height:33px;margin-bottom:18px}.corporate-example-note p{font-size:16px}.corporate-example-note p br{display:none}.corporate-cta>.eyebrow{font-size:14px;line-height:1.8}.corporate-cta h2{font-size:34px;line-height:1.17;margin:23px 0 27px}.corporate-cta>.text-link{display:flex;justify-content:center;margin:22px 0 0;font-size:14px}.corporate-cta>.button{font-size:14px}.info-page{padding-bottom:55px}.info-page>.eyebrow{margin-top:16px;font-size:14px}.info-page h1{font-size:41px;margin:22px 0;overflow-wrap:anywhere}.prose{margin:30px 0}.prose h2{font-size:23px;margin:27px 0 14px}.prose p{font-size:14px}.contact-cards{grid-template-columns:1fr;margin:28px 0}.contact-cards>a{padding:25px}.contact-cards strong{font-size:23px;margin-top:16px}.info-page>.button{font-size:14px;padding-inline:17px;gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.catalog-group-note{font-size:14px;line-height:1.7;margin-bottom:18px;color:var(--muted)}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* Align the visible letter edges of the differently sized brand lines. */
.site-header .brand small{padding-inline-start:.8px}
.page-heading>p{max-width:360px}

:root {
    --header-height: 96px;
    --content-width: 1392px;
}

.container {
    width: calc(100% - 112px);
    max-width: var(--content-width);
}

.info-page {
    max-width: var(--content-width);
}

html {
    scroll-padding-top: calc(var(--header-height) + 20px);
}

body {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

body > .topline,
.site-header,
.site-footer {
    flex-shrink: 0;
}

body > main {
    flex: 1 0 auto;
    min-width: 0;
}

.site-header {
    position: sticky;
    top: 0;
    box-shadow: 0 3px 16px #242b2408;
}

.draft-link {
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 4px;
    white-space: nowrap;
}

.draft-link.has-items {
    background: var(--terra);
    border-color: var(--terra);
    color: var(--white);
}

.draft-link.has-items .draft-count {
    background: var(--white);
    color: var(--terra);
}

.collection-tabs .pill,
.builder-tabs .pill {
    font-size: 14px;
    padding: 10px 18px;
}

.catalog-filters .search-field input {
    font-size: 16px;
    min-height: 48px;
}

.catalog-filters .search-field .icon {
    width: 21px;
    height: 21px;
}

.catalog-filters .filter-field > span {
    font-size: 14px;
    line-height: 1.5;
}

.catalog-filters .filter-field select {
    font-size: 16px;
    min-height: 36px;
    padding-block: 6px;
}

.catalog-filters .filter-submit {
    font-size: 16px;
    min-height: 52px;
    padding: 12px 20px;
}

.catalog-results-info,
.catalog-results-info .text-link {
    font-size: 14px;
}

.footer-price-notice {
    max-width: 1000px;
    margin: 0 0 24px;
    color: #c4cbb8;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
}

@media (min-width: 701px) {
    .builder-summary,
    .checkout-summary,
    .product-gallery {
        top: calc(var(--header-height) + 24px);
    }
}

@media (max-width: 1200px) {
    .container {
        width: calc(100% - 72px);
    }
}

@media (max-width: 960px) {
    :root {
        --header-height: 84px;
    }
}

@media (max-width: 700px) {
    :root {
        --header-height: 76px;
    }

    .container {
        width: calc(100% - 40px);
    }

    .draft-link {
        min-width: 40px;
        min-height: 40px;
        padding: 8px;
        gap: 6px;
    }

    .main-nav {
        max-height: calc(100dvh - var(--header-height));
        overflow-y: auto;
    }

    .collection-tabs .pill,
    .builder-tabs .pill {
        font-size: 14px;
        padding: 9px 14px;
    }

    .catalog-filters {
        padding: 14px;
        gap: 18px 12px;
    }

    .catalog-filters .filter-submit {
        padding-inline: 14px;
    }

    .footer-bottom {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
        gap: 10px;
        text-align: left;
    }

    .footer-bottom > a {
        width: auto;
        margin-top: 0;
    }
}

:root {
    --muted: #596153;
}

body {
    font-size: 17px;
}

.button,
.text-link,
.main-nav,
.draft-link,
.footer-nav,
.hero-secondary,
.product-bottom .text-link,
.product-order-row > .button,
.builder-summary-footer > .button,
.checkout-form-section form > .button {
    font-size: 16px;
}

.hero-copy > p,
.product-info > p,
.builder-promo-copy > p,
.heading-copy,
.occasion-card p,
.how-grid p,
.faq-list summary,
.faq-list p,
.page-heading > p,
.product-intro,
.product-detail-copy .product-intro,
.product-description > p,
.builder-item-copy p,
.catalog-callout p,
.catalog-group-note,
.lead-copy,
.prose p,
.corporate-hero p,
.request-success > p {
    font-size: 16px;
    line-height: 1.65;
}

.simple-steps li,
.spec-list,
.group-actions button,
.set-items-title,
.set-item-main strong,
.set-quantity > label,
.set-subtotal,
.builder-total,
.new-group-button,
.checkout-group ul,
.form-field,
.form-field input,
.form-field textarea,
.corporate-fields summary {
    font-size: 16px;
}

.product-info h3,
.builder-item-copy h2 {
    font-size: 20px;
    line-height: 1.3;
}

.product-price,
.builder-item-footer > span,
.builder-active-note,
.builder-search input,
.group-name-label input,
.builder-group-tab {
    font-size: 18px;
}

.product-tag,
.builder-item-image .product-tag {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    padding: 7px 10px;
    background: var(--paper);
    color: var(--ink);
}

.builder-summary > h2 {
    font-size: 32px;
}

.builder-total > strong {
    font-size: 26px;
}

.group-name-label input {
    min-height: 48px;
    font-size: 22px;
}

.group-actions button {
    min-height: 40px;
}

.builder-search input,
.form-field input,
.form-field textarea,
.new-group-button {
    min-height: 48px;
}

.builder-item-footer {
    flex-wrap: wrap;
    gap: 14px;
}

.hero-actions,
.hero-image-label,
.product-meta,
.product-bottom,
.builder-total,
.set-subtotal {
    flex-wrap: wrap;
}

.hero-image-label {
    gap: 12px 20px;
}

.product-meta {
    row-gap: 4px;
}

.catalog-filters > * {
    min-width: 0;
}

.builder-group-tabs {
    gap: 8px;
}

.builder-group-tab {
    padding: 10px 14px;
}

.set-quantity {
    flex-wrap: wrap;
}

.set-quantity > label {
    max-width: none;
}

.stepper,
.stepper-small {
    width: 134px;
    height: 46px;
    flex-shrink: 0;
}

.stepper button,
.stepper-small button {
    width: 42px;
    height: 44px;
    font-size: 22px;
}

.stepper input,
.stepper-small input {
    width: 46px;
    font-size: 18px;
}

.brand small,
.brand-footer small {
    font-size: 11px;
    letter-spacing: .1em;
}

.site-header .brand small {
    padding-inline-start: .4px;
}

:focus-visible {
    outline: 2px solid var(--olive);
    outline-offset: 3px;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: none;
    border-color: var(--olive);
    box-shadow: inset 0 -2px 0 var(--olive);
}

.search-field:focus-within {
    border-color: var(--olive);
    box-shadow: 0 0 0 2px #71795630;
    background: var(--white);
}

.search-field input:focus-visible {
    box-shadow: none;
}

@media (max-width: 960px) {
    .footer-top {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .brand-footer {
        grid-column: 1 / -1;
    }

    .footer-top > p {
        display: none;
    }

    .menu-toggle {
        display: inline-flex;
    }

    .main-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        padding: 16px 36px;
        background: var(--paper);
        border-bottom: 1px solid var(--line);
        box-shadow: 0 12px 20px #242b2410;
        flex-direction: column;
        gap: 0;
        font-size: 18px;
        max-height: calc(100dvh - var(--header-height));
        overflow-y: auto;
    }

    .main-nav.is-open {
        display: flex;
    }

    .main-nav > a {
        padding: 12px 0;
    }

    .main-nav a[aria-current]::after {
        display: none;
    }
}

@media (max-width: 700px) {
    .brand small,
    .brand-footer small {
        font-size: 9px;
        letter-spacing: .08em;
    }

    .site-header .brand small {
        padding-inline-start: .45px;
    }

    .main-nav {
        padding-inline: 20px;
    }

    .product-bottom {
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .product-info h3,
    .builder-item-copy h2 {
        font-size: 18px;
    }

    .builder-item-copy p,
    .product-info > p {
        font-size: 15px;
    }

    .product-tag,
    .builder-item-image .product-tag {
        font-size: 14px;
        padding: 5px 7px;
    }

    .footer-top {
        -moz-column-gap: 24px;
             column-gap: 24px;
    }

    .footer-nav {
        line-height: 1.55;
    }
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: -moz-max-content;
    width: max-content;
}

.brand img {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
}

.brand-wordmark {
    position: relative;
    display: block;
    width: -moz-max-content;
    width: max-content;
    padding-bottom: 18px;
}

.brand strong {
    font-size: 22px;
    line-height: 1.12;
    letter-spacing: .02em;
    transform: translateY(2px);
}

/* The title sets the width. Onest's sidebearings are offset so the visible
   edges of Ш/И and М/Я align, rather than only the two text boxes. */
.brand-collection {
    position: absolute;
    transform: translateY(2px);
    bottom: 0;
    left: .476px;
    display: block;
    width: calc(100% - 1.392px);
    height: 18px;
    overflow: visible;
    fill: var(--muted);
    font-family: var(--sans);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0;
    word-spacing: .18em;
}

.brand-footer .brand-collection {
    fill: #bbc3ae;
}

@media (max-width: 700px) {
    .brand {
        gap: 5px;
    }

    .brand img {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
    }

    .brand-wordmark {
        padding-bottom: 15px;
    }

    .brand strong {
        font-size: 16px;
    }

    .brand-collection {
        left: .275px;
        width: calc(100% - .87px);
        height: 15px;
        font-size: 12px;
    }
}

.hero.container {
    max-width: var(--content-width);
}

.hero-copy {
    min-width: 0;
    padding: 64px 36px 40px 0;
}

.hero.container h1 {
    font-size: clamp(70px, 6.3vw, 104px);
}

.hero-actions {
    gap: 14px;
    align-items: stretch;
}

.hero-actions > .button {
    min-height: 56px;
    padding: 16px 24px;
    font-size: 16px;
}

.hero-actions > .button .icon {
    width: 20px;
}

.hero-bottom {
    font-size: 16px;
    gap: 18px;
}

@media (max-width: 420px) {
    .hero-actions {
        flex-direction: column;
    }
}

.values-strip {
    margin-top: 28px;
    border: 0;
    background: transparent;
}

.values-strip > .container {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
    min-height: 0;
    padding-block: 0;
}

.values-strip span {
    min-width: 0;
    min-height: 104px;
    padding: 24px;
    gap: 18px;
    flex-direction: row;
    align-items: center;
    border: 1px solid var(--line);
    background: #eeede4;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0;
}

.values-strip svg {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
}

@media (min-width: 701px) and (max-width: 960px) {
    .hero-copy {
        padding: 40px 24px 32px 0;
    }

    .hero.container h1 {
        font-size: clamp(46px, 7vw, 70px);
    }
}

@media (max-width: 700px) {
    .hero-copy {
        padding: 32px 0;
    }

    .hero.container h1 {
        font-size: clamp(46px, 16vw, 68px);
    }

    .values-strip {
        margin-top: 20px;
    }

    .values-strip > .container {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .values-strip span {
        min-height: 76px;
        padding: 18px 20px;
        gap: 16px;
    }
}

.catalog-entry {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 34px;
}

.catalog-entry__option {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 22px 26px 12px;
    border: 1px solid var(--line);
    transition: border-color .2s, background-color .2s;
}

.catalog-entry__option--ready {
    background: #edf0e3;
    border-color: #c9cfb8;
}

.catalog-entry__option--builder {
    background: var(--white);
    border-color: var(--terra);
}

.catalog-entry__option--ready:hover {
    background: #e6ebd9;
    border-color: var(--olive);
}

.catalog-entry__option--builder:hover {
    background: #f4eae1;
}

.catalog-entry__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 24px;
    margin-bottom: 12px;
    color: var(--olive);
}

.catalog-entry__label {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.catalog-entry__current {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    white-space: nowrap;
}

.catalog-entry__current .icon {
    width: 17px;
    height: 17px;
}

.catalog-entry__option--builder .catalog-entry__top,
.catalog-entry__option--builder .catalog-entry__action {
    color: var(--terra);
}

.catalog-entry__plus {
    width: 24px;
    height: 24px;
}

.catalog-entry__title {
    margin-bottom: 10px;
    font-size: 28px;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.catalog-entry__description {
    max-width: 36em;
    margin-bottom: 8px;
    color: #565e50;
    font-size: 16px;
    line-height: 1.55;
}

.catalog-entry__action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 48px;
    margin-top: auto;
    font-size: 16px;
    font-weight: 600;
}

.catalog-entry__option--ready .catalog-entry__action .icon {
    transform: rotate(90deg);
}

@media (max-width: 700px) {
    .catalog-entry {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        margin-bottom: 28px;
    }

    .catalog-entry__option {
        padding: 18px 20px 8px;
    }

    .catalog-entry__title {
        font-size: 24px;
    }
}

.product-card {
    display: flex;
    flex-direction: column;
}

.product-card > .product-info {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.product-card .product-bottom {
    margin-top: auto;
    padding-top: 12px;
    border-top: 0;
}

.product-card .product-info h3 {
    margin-bottom: 0;
}

.product-card .product-price {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}

.catalog-request-control {
    width: 160px;
    max-width: 100%;
    margin-top: 10px;
}

.catalog-add-button {
    width: 100%;
    min-height: 40px;
    padding: 9px 14px;
    font-size: 14px;
    line-height: 1.4;
}

.catalog-add-button:disabled {
    background: #e4e5dc;
    border-color: var(--line);
    color: var(--muted);
    opacity: 1;
}

.catalog-quantity-control {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    min-height: 40px;
    background: #e9ebdf;
    color: var(--ink);
}

.catalog-quantity-control button {
    display: grid;
    place-items: center;
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 22px;
    line-height: 1;
}

.catalog-quantity-control button:hover:not(:disabled) {
    background: #dce1ce;
}

.catalog-quantity-control output {
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 700px) {
    .product-card .product-price {
        font-size: 14px;
    }

    .catalog-request-control {
        width: 100%;
    }
}

.checkout-group-heading {
    align-items: flex-start;
    gap: 16px;
}

.checkout-group-heading h3 {
    min-width: 0;
    overflow-wrap: anywhere;
}

.checkout-remove {
    flex-shrink: 0;
    border: 0;
    background: transparent;
    padding: 4px 0 4px 8px;
    color: var(--muted);
    font-size: 16px;
    line-height: 1.5;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.checkout-remove:hover:not(:disabled) {
    color: var(--ink);
}

.checkout-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
    font-size: 16px;
}

.checkout-stepper {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
}

.checkout-stepper button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: var(--white);
    color: var(--ink);
    font-size: 22px;
    line-height: 1;
}

.checkout-stepper button:hover:not(:disabled) {
    background: var(--lime);
    border-color: var(--olive);
}

.checkout-stepper input {
    width: 50px;
    height: 34px;
    padding: 4px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ink);
    text-align: center;
    font-size: 18px;
    font-weight: 500;
}

.checkout-group-cost {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
    margin-top: 16px;
    font-size: 16px;
}

.checkout-total {
    flex-wrap: wrap;
    gap: 12px;
}

.checkout-total > .checkout-total-pending {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
}

.checkout-form-section form > #request-terms {
    margin: 16px 0;
}

@media (max-width: 700px) {
    .checkout-stepper button {
        width: 40px;
        height: 40px;
    }

    .checkout-stepper input {
        height: 40px;
    }
}

.builder-mobile-actions{display:none}
.builder-summary{display:flex;flex-direction:column;max-height:none}
.builder-panel-top,.builder-summary>h2,.builder-summary-footer{flex-shrink:0}
.builder-summary-scroll{min-height:0;flex:1;overflow:visible;padding-right:0}
.builder-summary-footer{margin-top:20px}
.builder-summary .stepper{display:inline-grid;grid-template-columns:34px 50px 34px;align-items:center;gap:4px;width:auto;height:36px;border:0;background:none;padding:0}
.builder-summary .stepper button{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid #b5bea5;border-radius:50%;background:var(--paper);font-size:22px;line-height:1}
.builder-summary .stepper button:hover:not(:disabled){background:#dde3cf}
.builder-summary .stepper input{width:50px;min-height:34px;height:34px;padding:0;border:0;background:transparent;text-align:center;font-size:18px;font-variant-numeric:tabular-nums}
.builder-summary .stepper input:focus-visible{box-shadow:inset 0 -2px 0 var(--olive)}
.builder-product-details-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer}
.builder-product-title-button{padding:0;border:0;background:transparent;text-align:left;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit}
.builder-product-title-button:hover{color:var(--terra)}
.builder-item-image .add-item-button{position:absolute;right:12px;top:12px;display:flex;align-items:center;justify-content:center;width:56px;height:56px;min-height:56px;padding:0;border:0;border-radius:50%;background:var(--terra);color:white;box-shadow:0 3px 12px #0002}
.builder-item-image .add-item-button:hover:not(:disabled){background:#893c27;color:white}
.builder-item-image .add-item-button .icon{width:28px;height:28px;stroke-width:1.75}
.builder-item-image>.product-tag{max-width:calc(100% - 88px);line-height:1.35;overflow-wrap:anywhere}
.builder-selected-count{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:6px 10px;background:var(--ink);color:white;font-size:14px;line-height:1.4;box-shadow:0 2px 8px #0002}
@media(min-width:701px){
    .builder-summary{position:static}
}
@media(min-width:1100px){
    .builder-layout{grid-template-columns:minmax(0,1fr) 400px}
}
@media(min-width:1400px){
    .builder-layout{grid-template-columns:minmax(0,1fr) 440px;gap:32px}
}
@media(max-width:700px){
    .builder-summary{display:none;max-height:88dvh}
    .builder-summary.is-open{display:block}
    .builder-summary-scroll{min-height:auto;overflow:visible;padding-right:0;flex:none}
    .builder-item-image .add-item-button{right:8px;top:8px;width:48px;height:48px;min-height:48px}
    .builder-item-image>.product-tag{max-width:calc(100% - 70px)}
    .builder-selected-count{left:8px;bottom:8px;max-width:calc(100% - 16px);padding:5px 8px}
    .builder-mobile-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:45;padding:6px;background:var(--paper);box-shadow:0 4px 25px #0002}
    .builder-mobile-actions .builder-mobile-trigger{position:static;display:flex;justify-content:center;min-width:0;min-height:48px;margin:0;padding:12px 8px;gap:6px;font-size:16px;line-height:1.25;white-space:nowrap;box-shadow:none}
    .builder-mobile-actions .builder-mobile-trigger>span{margin-left:0;width:20px;height:20px;flex-shrink:0;font-size:14px}
    .builder-mobile-actions .builder-mobile-checkout{min-width:106px;min-height:48px;padding:12px 10px;font-size:16px;line-height:1.25}
    .builder-mobile-checkout.is-disabled{pointer-events:none}
    .builder-layout{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
    body:has(.builder-mobile-actions) .site-footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
    body:has(.builder-mobile-actions) .toast{bottom:calc(90px + env(safe-area-inset-bottom))}
    body.panel-open:has(.builder-mobile-actions) .toast{bottom:auto;top:calc(12px + env(safe-area-inset-top))}
    .builder-summary.is-open{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
    .builder-summary .stepper{grid-template-columns:40px 50px 40px;height:40px}
    .builder-summary .stepper button{width:40px;height:40px}
}
@media(max-width:400px){
    .builder-product-grid{grid-template-columns:minmax(0,1fr)}
    .builder-item-image>.product-tag{overflow-wrap:normal;word-break:normal}
}

body.product-details-open {
    overflow: hidden;
}

.product-details {
    width: min(1080px, calc(100vw - 48px));
    max-width: none;
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    margin: auto;
    padding: 0;
    overflow: auto;
    overscroll-behavior: contain;
    color: var(--ink, #202820);
    background: var(--paper, #f5f2eb);
    border: 1px solid #ffffff40;
    border-radius: 18px;
    box-shadow: 0 30px 120px #10181066;
    text-align: left;
}

.product-details::backdrop {
    background: #152018b3;
    backdrop-filter: blur(5px);
}

.product-details-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: start;
}

.product-details-close {
    position: sticky;
    top: 16px;
    right: 16px;
    z-index: 2;
    float: right;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 16px 16px -64px -64px;
    padding: 0;
    border: 1px solid #20282026;
    border-radius: 50%;
    background: #fdfcf8f5;
    color: #202820;
    line-height: 1;
    cursor: pointer;
}

.product-details-close .icon {
    display: block;
    width: 22px;
    height: 22px;
    stroke-width: 1.8;
    pointer-events: none;
}

.product-details-close:hover { background: #ece7dc; }
.product-details-close:focus-visible,
.product-details-add:focus-visible { outline: 2px solid var(--olive); outline-offset: 3px; }
.product-details h2:focus { outline: none; }

.product-details-photo {
    position: sticky;
    top: 0;
    overflow: hidden;
    align-self: start;
    aspect-ratio: 1;
    background: var(--paper, #f5f2eb);
    border-radius: 17px 0 0 0;
}

.product-details-photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    -o-object-fit: contain;
       object-fit: contain;
}

.product-details-content {
    min-width: 0;
    padding: 44px 40px 36px;
}

.product-details .product-details-category {
    margin: 0 40px 18px 0;
    color: #68705f;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.12em;
    line-height: 1.6;
    text-transform: uppercase;
}

.product-details h2 {
    margin: 0 28px 20px 0;
    font-size: clamp(30px, 3.2vw, 42px);
    line-height: 1.15;
    letter-spacing: -0.045em;
    overflow-wrap: anywhere;
}

.product-details-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-bottom: 24px;
    color: #68705f;
    font-size: 14px;
    line-height: 1.6;
}

.product-details-availability { display: inline-flex; align-items: center; gap: 8px; }
.product-details-availability.is-unavailable .status-dot { background: #827d75; }

.product-details .product-details-intro,
.product-details-description {
    margin: 0 0 20px;
    font-size: 17px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.product-details .product-details-intro { font-weight: 500; }
.product-details-description { color: #566050; }
.product-details-specifications { margin-top: 26px; }
.product-details-specifications h3 { margin: 0 0 15px; font-size: 22px; line-height: 1.35; }
.product-details-specifications dl { margin: 0; font-size: 16px; line-height: 1.6; }
.product-details-specifications dl > div { display: flex; justify-content: space-between; gap: 20px; padding: 13px 0; border-bottom: 1px solid #2734261c; }
.product-details-specifications dt { color: #68705f; }
.product-details-specifications dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.product-details-order { margin: 0 0 26px; padding: 0 0 26px; border-bottom: 1px solid #27342626; }
.product-details .product-details-price { margin: 0 0 18px; font-size: 27px; line-height: 1.3; font-weight: 600; letter-spacing: -0.025em; }
.product-details .product-details-add { width: 100%; min-height: 56px; padding: 16px 22px; justify-content: space-between; gap: 16px; font-size: 17px; line-height: 1.4; }
.product-details .product-details-add:disabled { cursor: not-allowed; opacity: 0.5; }
.product-details .product-details-hint { margin: 15px 0 0; font-size: 14px; line-height: 1.7; color: #68705f; }
.product-details .product-details-feedback { margin: 16px 0 0; padding: 14px 16px; border: 1px solid #c6d0bc; border-radius: 8px; background: #e7ecdf; color: #33452f; font-size: 15px; line-height: 1.65; }

@media (max-width: 720px) {
    .product-details { width: calc(100vw - 24px); max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); border-radius: 14px; }
    .product-details-layout { grid-template-columns: minmax(0, 1fr); }
    .product-details-photo { position: static; aspect-ratio: auto; border-radius: 13px 13px 0 0; }
    .product-details-photo img { width: 100%; height: 160px; min-height: 0; max-height: 160px; aspect-ratio: auto; -o-object-fit: contain; object-fit: contain; }
    .product-details-close { top: 12px; margin: 12px 12px -60px -60px; }
    .product-details-content { padding: 20px 24px 28px; }
    .product-details .product-details-category { margin: 0 0 12px; font-size: 14px; }
    .product-details h2 { margin: 0 0 16px; font-size: 32px; }
    .product-details-meta { margin-bottom: 16px; font-size: 14px; }
    .product-details .product-details-intro,
    .product-details-description { font-size: 17px; }
    .product-details-specifications dl { font-size: 16px; }
    .product-details-specifications dl > div { gap: 14px; }
    .product-details-specifications dd { max-width: 58%; }
    .product-details .product-details-price { font-size: 25px; }
    .product-details .product-details-add { font-size: 17px; }
}

.product-main-photo {
    aspect-ratio: 1;
    overflow: hidden;
    background: var(--paper);
}

.product-main-photo .product-main-image {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background: var(--paper);
}

.product-gallery {
    top: calc(var(--header-height, 96px) + 24px);
}

.product-detail-copy > .product-sku,
.product-details-content > .product-sku {
    margin: -10px 0 20px;
    font-size: 14px;
    line-height: 1.5;
    color: var(--muted);
    overflow-wrap: anywhere;
}

.product-detail-copy .availability > .status-dot {
    margin: 0;
}

.product-purchase .product-order-row {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 12px;
}

.product-purchase .quantity-input {
    width: 100%;
}

.product-purchase .product-order-row > .button {
    padding-inline: 20px;
    gap: 14px;
    font-size: 17px;
}

.product-builder-secondary {
    width: 100%;
    margin-top: 12px;
    font-size: 17px;
}

.product-purchase-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
}

.product-builder-status {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.6;
}

.product-related .product-info > p {
    overflow-wrap: anywhere;
    hyphens: auto;
}

.product-details-page-link {
    margin-top: 18px;
    color: var(--terra);
    text-decoration: underline;
    text-underline-offset: 4px;
    font-size: 16px;
}

.product-rich-text {
    color: var(--muted);
    font-size: 16px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.product-rich-text p,
.product-rich-text ul,
.product-rich-text ol,
.product-rich-text blockquote,
.product-rich-text pre {
    margin: 0 0 0.85em;
}

.product-rich-text ul,
.product-rich-text ol {
    padding-left: 1.5em;
}

.product-rich-text ul { list-style-type: disc; }
.product-rich-text ol { list-style-type: decimal; }

.product-rich-text a {
    color: var(--terra);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.product-rich-text blockquote {
    margin-left: 0;
    padding-left: 1em;
    border-left: 3px solid var(--line);
}

.product-rich-text pre {
    padding: 12px;
    overflow-x: auto;
    background: var(--line);
}

.product-rich-text :is(h1, h2, h3, h4, h5, h6) {
    margin: 1em 0 0.5em;
    color: var(--ink);
    font-size: 22px;
    line-height: 1.35;
}

.product-rich-text > :first-child { margin-top: 0; }
.product-rich-text > :last-child { margin-bottom: 0; }

@media (max-width: 700px) {
    .product-purchase .product-order-row {
        grid-template-columns: 56px minmax(0, 1fr);
        gap: 10px;
    }

    .product-purchase .product-order-row > .button {
        padding-inline: 12px;
        gap: 8px;
        font-size: 16px;
    }

    .product-builder-secondary {
        font-size: 16px;
    }

    .product-detail .availability {
        flex-wrap: wrap;
    }

}

.private-request { max-width: var(--content-width); padding-block: 64px 88px; }
.private-request > .eyebrow { font-size: 14px; line-height: 1.6; }
.private-request > h1 { margin: 24px 0; font-size: clamp(30px, 3.5vw, 48px); line-height: 1.2; overflow-wrap: anywhere; }
.private-request .request-status { gap: 16px 24px; font-size: 16px; line-height: 1.7; }
.private-request .status-pill { padding: 9px 15px; font-size: 16px; }
.private-request .request-status-badge {
    --status-background: #ecebe5;
    --status-color: #596159;
    padding: 6px 18px;
    border-radius: 999px;
    background: var(--status-background);
    color: var(--status-color);
    line-height: 1.5;
}
.private-request .request-status-badge .status-dot { background: currentColor; }
.private-request .request-status-badge--new { --status-background: #e6eff7; --status-color: #25537b; }
.private-request .request-status-badge--processing { --status-background: #fbf0d9; --status-color: #795117; }
.private-request .request-status-badge--approved { --status-background: #e3f0ec; --status-color: #25635b; }
.private-request .request-status-badge--completed { --status-background: #e7eedb; --status-color: #3f602d; }
.private-request .request-status-badge--cancelled { --status-background: #f7e7e2; --status-color: #913f35; }
.private-request .lead-copy { max-width: 780px; margin: 26px 0 34px; font-size: 18px; line-height: 1.75; }
.private-request .public-request-groups { display: grid; gap: 24px; }
.private-request .public-request-group { margin: 0; padding: 30px; border-radius: 12px; }
.private-request .request-group-title { display: flex; align-items: center; gap: 20px; }
.private-request .request-group-heading { min-width: 0; flex: 1; }
.private-request .request-group-kind { display: block; margin-bottom: 7px; color: var(--muted, #68705f); font-size: 14px; line-height: 1.5; }
.private-request .request-group-title h2 { margin: 0; font-size: 26px; line-height: 1.3; overflow-wrap: anywhere; }
.private-request .request-group-count { flex-shrink: 0; display: flex; flex-direction: column; gap: 6px; text-align: right; }
.private-request .request-group-count > span { font-size: 14px; line-height: 1.5; color: var(--muted, #68705f); }
.private-request .request-group-count > strong { font-size: 28px; line-height: 1.2; }
.private-request .request-composition-title { margin: 30px 0 12px; font-size: 24px; line-height: 1.5; }
.private-request .request-product-list { list-style: none; margin: 0; padding: 0; }
.private-request .request-product-row { display: flex; align-items: center; gap: 18px; padding: 20px 0; border-bottom: 1px solid #2734261c; }
.private-request .request-product-row:last-child { border-bottom: 0; }
.private-request .request-product-thumbnail { display: block; flex-shrink: 0; width: 72px; height: 72px; padding: 0; border: 0; border-radius: 10px; overflow: hidden; background: #e9e4da; }
.private-request a.request-product-thumbnail,
.private-request button.request-product-thumbnail { cursor: pointer; }
.private-request .request-product-thumbnail img { display: block; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.private-request .request-group-title > .request-product-thumbnail { width: 88px; height: 88px; }
.private-request .request-product-info { flex: 1; min-width: 0; }
.private-request .request-product-name { display: inline; margin: 0; padding: 0; border: 0; color: inherit; background: none; font: inherit; text-align: left; line-height: inherit; text-decoration: none; overflow-wrap: anywhere; }
.private-request a.request-product-name,
.private-request button.request-product-name { cursor: pointer; text-decoration: underline; text-decoration-color: #68705f50; text-underline-offset: 4px; }
.private-request a.request-product-name:hover,
.private-request button.request-product-name:hover { text-decoration-color: currentColor; }
.private-request .request-product-info > .request-product-name { font-size: 18px; line-height: 1.5; font-weight: 600; }
.private-request .request-product-sku { display: block; margin-top: 7px; color: var(--muted, #68705f); font-size: 14px; line-height: 1.5; }
.private-request .request-product-quantity { display: flex; flex-direction: column; gap: 3px; flex-shrink: 0; text-align: right; font-size: 14px; line-height: 1.5; color: var(--muted, #68705f); }
.private-request .request-product-quantity strong { font-size: 20px; line-height: 1.4; color: var(--ink, #202820); }
.private-request .request-product-quantity .request-product-total { margin-top: 5px; font-size: 16px; color: var(--ink, #202820); }
.private-request .request-group-price { margin-top: 18px; padding-top: 22px; font-size: 17px; line-height: 1.6; }
.private-request .request-grand-total { margin-top: 28px; padding: 28px 30px; gap: 16px; border-radius: 12px; }
.private-request .request-grand-total > span { font-size: 18px; line-height: 1.5; }
.private-request .request-grand-total > strong { font-size: 28px; line-height: 1.3; }
.private-request .request-grand-total > .request-total-pending { font-size: 18px; font-weight: 400; }
.private-request .private-contact > p { margin-bottom: 16px; font-size: 18px; line-height: 1.6; }
.private-request .private-contact .button { min-height: 54px; font-size: 16px; padding: 16px 24px; }
.private-request > .small-note { font-size: 14px; line-height: 1.7; }
.private-request .request-product-name:focus-visible,
.private-request .request-product-thumbnail:focus-visible { outline: 2px solid var(--olive); outline-offset: 3px; }

@media (max-width: 720px) {
    .private-request { padding-block: 36px 54px; }
    .private-request > .eyebrow { font-size: 14px; }
    .private-request > h1 { font-size: 30px; }
    .private-request .request-status { gap: 12px; font-size: 15px; }
    .private-request .status-pill { font-size: 15px; }
    .private-request .lead-copy { margin-block: 24px 28px; font-size: 17px; }
    .private-request .public-request-group { padding: 22px 18px; }
    .private-request .request-group-title { flex-wrap: wrap; align-items: center; gap: 14px; }
    .private-request .request-group-title > .request-product-thumbnail { width: 64px; height: 64px; }
    .private-request .request-group-title h2 { font-size: 24px; }
    .private-request .request-group-count { width: 100%; margin-top: 4px; padding-top: 16px; border-top: 1px solid #2734261c; flex-direction: row; justify-content: space-between; align-items: center; text-align: left; }
    .private-request .request-group-count > span { font-size: 15px; }
    .private-request .request-group-count > strong { font-size: 26px; }
    .private-request .request-composition-title { margin-top: 24px; font-size: 24px; }
    .private-request .request-product-row { flex-wrap: wrap; gap: 12px; align-items: flex-start; }
    .private-request .request-product-thumbnail { width: 60px; height: 60px; }
    .private-request .request-product-info > .request-product-name { font-size: 17px; }
    .private-request .request-product-quantity { width: calc(100% - 72px); margin-left: 72px; display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 4px 10px; text-align: left; }
    .private-request .request-product-quantity strong { font-size: 18px; }
    .private-request .request-product-quantity .request-product-total { grid-column: 1 / -1; margin-top: 3px; font-size: 16px; }
    .private-request .request-grand-total { padding: 24px 22px; align-items: flex-start; flex-direction: column; }
    .private-request .request-grand-total > strong { font-size: 26px; }
    .private-request .private-contact > p { font-size: 17px; }
}

.guides-page { padding-bottom: 72px; }
.guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.guide-card { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 28px; border: 1px solid var(--line); }
.guide-card-number { color: var(--olive); font-size: 14px; letter-spacing: .12em; }
.guide-card :is(h2, h3) { font-size: 25px; line-height: 1.25; letter-spacing: -.035em; }
.guide-card :is(h2, h3) a:hover { color: var(--terra); }
.guide-card p { font-size: 16px; line-height: 1.7; }
.guide-card > .text-link { margin-top: auto; padding-top: 8px; }
.guide-article { max-width: 800px; margin: 26px auto 0; }
.guide-heading h1 { margin: 20px 0; font-size: clamp(32px, 4vw, 50px); line-height: 1.16; }
.guide-summary { font-size: 20px; line-height: 1.65; }
.guide-date { margin-top: 22px; font-size: 14px; }
.guide-body { margin-top: 36px; font-size: 17px; line-height: 1.85; overflow-wrap: anywhere; }
.guide-body :is(p, ul, ol, blockquote, pre) { margin: 0 0 20px; }
.guide-body :is(h2, h3, h4) { margin: 38px 0 18px; line-height: 1.3; }
.guide-body h2 { font-size: 28px; }
.guide-body h3 { font-size: 23px; }
.guide-body :is(ul, ol) { padding-left: 24px; }
.guide-body ul { list-style-type: disc; }
.guide-body ol { list-style-type: decimal; }
.guide-body li { margin-bottom: 8px; color: var(--muted); }
.guide-body a { color: var(--terra); text-decoration: underline; text-underline-offset: 3px; }
.guide-body blockquote { padding-left: 20px; border-left: 3px solid var(--olive); }
.guide-body pre { overflow-x: auto; }
.guide-related { margin-top: 64px; padding-top: 32px; border-top: 1px solid var(--line); }
.guide-related > h2 { margin-bottom: 24px; font-size: 32px; }
.guide-related .guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 960px) { .guide-grid { grid-template-columns: 1fr; } }
@media (max-width: 700px) {
    .guides-page { padding-bottom: 48px; }
    .guide-article { margin-top: 14px; }
    .guide-summary { font-size: 18px; }
    .guide-body { font-size: 16px; margin-top: 28px; }
    .guide-body h2 { font-size: 25px; }
    .guide-card { padding: 24px; }
    .guide-related .guide-grid { grid-template-columns: 1fr; }
}

