.partner-page a,.partner-page .family-name { text-decoration:none; }
.partner-page #site-nav a::after { content:none; }
.partner-page :where(#site-nav a,.stream-footer > a) { transform-origin:left center; transition:color 160ms ease,transform 160ms ease; }
.partner-page :where(#site-nav a,.stream-footer > a):is(:focus-visible,:active) { color:#8f4828; }
.partner-guide { color:var(--pine-deep); padding-block:clamp(1.5rem,4vw,3rem) clamp(3rem,7vw,6rem); }
.partner-guide .breadcrumbs { margin:0 0 clamp(1.5rem,4vw,3rem); }
.partner-guide :is(h1,h2,h3,p,li,dt,dd,a) { overflow-wrap:anywhere; }
.partner-guide :is(h1,h2,h3) { text-wrap:balance; }
.partner-guide h1 { font:400 clamp(2.65rem,4.8vw,5.2rem)/1.06 var(--display); letter-spacing:-.025em; margin:0; max-width:18ch; }
.partner-guide:lang(ko) h1 { max-width:19ch; font-size:clamp(2.25rem,4.2vw,4.6rem); }
.partner-guide h2 { font:600 clamp(1.7rem,2.8vw,2.8rem)/1.18 var(--serif); margin:0; }
.partner-guide h3 { font:600 clamp(1.25rem,1.65vw,1.6rem)/1.25 var(--serif); margin:0; }
.partner-guide p { margin:0; }
.partner-guide p + p { margin-top:.75rem; }
.partner-guide :is(h2,h3) + p { margin-top:.85rem; }
.partner-guide :is(a,button):focus-visible { outline:3px solid #317176; outline-offset:4px; }
.partner-guide a { text-decoration:none; }
.partner-guide :where(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a) { transform-origin:left center; transition:color 160ms ease,transform 160ms ease; }
.partner-guide .breadcrumbs a { display:inline-block; }
.partner-guide .partner-brief-link { transform-origin:center; }
.partner-guide :is(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a):is(:focus-visible,:active) { color:#8f4828; }
.partner-guide .button { min-height:48px; font-size:1rem; white-space:normal; text-align:center; }
.partner-hero { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr); gap:clamp(2rem,6vw,6rem); align-items:start; padding-bottom:clamp(2rem,6vw,5rem); border-bottom:2px solid var(--pine); }
.partner-hero > *, .partner-grid > *, .partner-scope > *, .partner-contact > * { min-width:0; }
.partner-eyebrow { font-size:.95rem; line-height:1.6; margin-bottom:1.1rem !important; color:#52654d; }
.partner-lead { font-size:clamp(1.1rem,1.65vw,1.4rem); line-height:1.6; max-width:52ch; margin-top:1.4rem !important; }
.partner-text-link { display:inline-flex; align-items:center; min-height:44px; max-width:100%; }
.partner-intro > .partner-text-link { margin-top:1.1rem; }
.partner-offer { padding:clamp(1.25rem,3vw,2.5rem); background:#e5ecda; border-top:4px solid #829773; }
.partner-offer h2 { font-size:clamp(1.3rem,1.9vw,1.8rem); }
.partner-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:.25rem .65rem; margin:1.2rem 0 !important; }
.partner-price strong { font-family:var(--display); font-size:clamp(2.6rem,4vw,4.25rem); font-weight:400; line-height:1.15; letter-spacing:-.025em; }
.partner-price span { font-size:.95rem; }
.partner-offer dl { margin:0 0 1.5rem; }
.partner-offer dl > div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.3rem 1rem; padding:.75rem 0; border-top:1px solid #bdcbb7; }
.partner-offer dt { color:#52654d; }
.partner-offer dd { margin:0; text-align:end; }
.partner-offer .button { width:100%; background:var(--pine-deep); color:var(--paper-light); border-color:var(--pine-deep); }
.partner-offer .button:hover { background:#315741; }
.partner-offer .partner-offer-included { margin:0 0 1rem; font-size:.95rem; line-height:1.6; }
.partner-brief-link { display:flex; align-items:center; justify-content:center; min-height:44px; margin-top:.65rem; font-size:.95rem; line-height:1.5; text-align:center; }
.partner-section { margin-top:clamp(2.5rem,6vw,5rem); }
.partner-section > h2 { max-width:26ch; }
.partner-section > p { max-width:70ch; }
.partner-commerce { padding:clamp(1.5rem,4vw,3rem); background:var(--pine-deep); color:#f6f8ef; }
.partner-commerce > .partner-eyebrow { color:#d1debc; margin-bottom:.7rem !important; }
.partner-commerce > h2 { max-width:28ch; }
.partner-commerce-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem 2rem; list-style:none; margin:2rem 0; padding:0; }
.partner-commerce-grid > li { min-width:0; border-top:1px solid #728770; padding-top:1rem; }
.partner-commerce-grid .partner-commerce-stage { color:#d1debc; font-size:.9rem; margin-bottom:.6rem; }
.partner-commerce-grid h3 { font-size:clamp(1.25rem,1.8vw,1.6rem); line-height:1.3; }
.partner-commerce-grid h3 + p { line-height:1.7; }
.partner-commerce .button { background:#f0f4e7; border-color:#f0f4e7; color:var(--pine-deep); }
.partner-commerce .button:is(:hover,:focus-visible) { background:#d9e9c3; border-color:#d9e9c3; }
.partner-commerce:lang(ko) { word-break:keep-all; }
.partner-scope { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(1.5rem,5vw,5rem); }
.partner-scope p { max-width:46ch; }
.partner-scope dl { margin:0; }
.partner-scope dl > div { padding:1rem 0; border-bottom:1px solid var(--line); }
.partner-scope dl > div:first-child { padding-top:0; }
.partner-scope dt { font-weight:600; font-size:1.1rem; }
.partner-scope dd { margin:.35rem 0 0; }
.partner-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,2rem); margin-top:1.5rem; }
.partner-card { padding:clamp(1.25rem,2.5vw,2rem); background:var(--paper-light); border-top:3px solid #829773; }
.partner-card:nth-child(2) { border-color:#bda26d; }
.partner-card:nth-child(3) { border-color:#67968b; }
.partner-example { display:flex; flex-direction:column; align-items:flex-start; }
.partner-example h3 { margin:.3rem 0 .75rem; }
.partner-example h3 a { display:inline-block; min-height:44px; }
.partner-example > .partner-text-link { margin-top:auto; padding-top:1rem; }
.partner-region { color:#52654d; font-size:.95rem; }
.partner-option { border-top:1px solid var(--line); padding-top:1.25rem; }
.partner-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,2rem); counter-reset:partner-step; list-style:none; margin:1.5rem 0 0; padding:0; }
.partner-steps li { min-width:0; counter-increment:partner-step; border-top:1px solid var(--line); padding-top:1rem; }
.partner-steps li::before { content:counter(partner-step,decimal-leading-zero); display:block; color:#52654d; font-size:.95rem; margin-bottom:.7rem; }
.partner-contact { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:1.5rem; padding:clamp(1.3rem,3.5vw,3rem); margin-top:clamp(2.5rem,6vw,5rem); background:#e5ecda; scroll-margin-top:2rem; }
.partner-contact ul { padding-left:1.25rem; margin:1rem 0 0; }
.partner-contact li + li { margin-top:.25rem; }
.partner-contact-action { display:flex; align-items:center; flex-wrap:wrap; gap:.25rem 1.25rem; padding-top:1rem; border-top:1px solid #bdcbb7; font-size:.95rem; }
.partner-inquiry[hidden] { display:none !important; }
.partner-inquiry { grid-column:1 / -1; border-top:1px solid #bdcbb7; padding-top:clamp(1.5rem,3vw,2.5rem); }
.partner-inquiry-lead { max-width:70ch; margin-bottom:1.5rem !important; }
.partner-inquiry-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:start; }
.partner-inquiry-form > * { min-width:0; }
.partner-inquiry-fields { display:grid; gap:1rem; }
.partner-inquiry-field { display:grid; gap:.4rem; }
.partner-inquiry :is(label,legend) { font-weight:600; line-height:1.5; }
.partner-inquiry :is(input:not([type="checkbox"]),textarea) { display:block; width:100%; min-width:0; max-width:100%; min-height:48px; padding:.65rem .75rem; border:1px solid #829773; border-radius:0; background:var(--paper-light); color:var(--pine-deep); font:inherit; line-height:1.6; }
.partner-inquiry textarea { resize:vertical; }
.partner-inquiry :is(input,textarea):focus-visible { outline:3px solid #317176; outline-offset:3px; }
.partner-inquiry-languages { min-width:0; margin:0; padding:0; border:0; }
.partner-inquiry-languages legend { margin-bottom:.35rem; }
.partner-inquiry-languages label { display:inline-flex; align-items:center; gap:.5rem; min-height:44px; margin-right:1rem; font-weight:400; cursor:pointer; }
.partner-inquiry-languages input { width:20px; height:20px; margin:0; accent-color:var(--pine-deep); }
.partner-inquiry-base { font-size:.95rem; color:#3c5338; }
.partner-inquiry-preview { display:grid; gap:.65rem; }
.partner-inquiry-preview textarea { min-height:33rem; background:#f8faf3; }
.partner-inquiry-actions { display:flex; flex-wrap:wrap; gap:.65rem; align-items:stretch; }
.partner-inquiry-actions .button { background:var(--pine-deep); color:var(--paper-light); border-color:var(--pine-deep); }
.partner-inquiry-copy { min-height:48px; max-width:100%; padding:.65rem 1rem; background:transparent; color:var(--pine-deep); border:1px solid var(--pine-deep); font:inherit; line-height:1.4; cursor:pointer; }
.partner-inquiry-copy:hover { background:var(--paper-light); }
.partner-inquiry-status { min-height:1.6em; font-size:.95rem; }
.partner-showcase { padding-bottom:clamp(2rem,5vw,4rem); border-bottom:1px solid var(--line); }
.partner-showcase > .partner-eyebrow { margin-bottom:.7rem !important; }
.partner-sample-spread { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); align-items:center; gap:clamp(1.5rem,4vw,4rem); margin-top:2rem; }
.partner-sample-spread > * { min-width:0; }
.partner-sample-photo { margin:0; }
.partner-sample-photo > a { display:block; aspect-ratio:4/3; overflow:hidden; background:#dce9df; }
.partner-sample-photo img { width:100%; height:100%; object-fit:cover; transform:scale(1.3); transform-origin:75% 100%; }
#commerce-sample .partner-sample-photo > a { aspect-ratio:2/3; }
#commerce-sample .partner-sample-spread { align-items:start; }
#commerce-sample .partner-sample-photo img { transform:none; }
#commerce-sample .partner-sample-actions { margin-top:1.5rem; }
.partner-sample-photo figcaption { font-size:.78rem; line-height:1.5; color:#52654d; margin-top:.55rem; }
.partner-sample-photo figcaption a { display:inline-flex; align-items:center; min-height:44px; }
.partner-sample-story h3 { font-size:clamp(1.75rem,3.2vw,3.3rem); line-height:1.12; margin-top:.75rem; }
.partner-sample-story > p { line-height:1.7; }
.partner-sample-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; border-top:1px solid var(--line); margin:1.5rem 0; padding-top:1rem; }
.partner-sample-facts dt { font-size:.85rem; color:#52654d; }
.partner-sample-facts dd { margin:.4rem 0 0; font:400 clamp(2.25rem,3vw,3.3rem)/1.05 var(--display); }
.partner-sample-facts dd span { font:400 1rem var(--serif); }
.partner-sample-actions { display:flex; flex-wrap:wrap; gap:.65rem; }
.partner-sample-actions .button { background:var(--pine-deep); color:var(--paper-light); border:1px solid var(--pine-deep); padding-inline:1rem; }
.partner-sample-actions .partner-button-light { background:transparent; color:var(--pine-deep); }
.partner-delivery-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(1.5rem,4vw,4rem); margin-top:1.5rem; }
.partner-delivery-grid > * { min-width:0; padding:clamp(1.25rem,3vw,2rem); background:var(--paper-light); border-top:3px solid #829773; }
.partner-copy-sample blockquote { margin:1.2rem 0; padding:0; border:0; font:inherit; font-size:1.08rem; line-height:1.8; }
.partner-downloads { display:flex; flex-direction:column; align-items:flex-start; gap:.25rem; }
.partner-qr-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1.25rem; }
.partner-qr-grid figure { min-width:0; margin:0; }
.partner-qr-grid figure > a { display:block; width:160px; max-width:100%; background:white; }
.partner-qr-grid img { display:block; width:100%; height:auto; image-rendering:pixelated; }
.partner-qr-grid figcaption { margin-top:.75rem; font-size:.88rem; }
.partner-qr-grid figcaption strong { display:block; font-weight:600; }
.partner-qr-grid .partner-text-link { line-height:1.45; }
.partner-placement { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:clamp(1.5rem,5vw,5rem); align-items:center; padding-block:clamp(2rem,4vw,3.5rem); border-block:1px solid var(--line); }
.partner-placement > * { min-width:0; }
.partner-placement-preview { padding:clamp(1.25rem,3vw,2rem); background:#e5ecda; border-left:4px solid #829773; }
.partner-placement-period { display:block; font:400 clamp(3rem,4vw,4rem)/1 var(--display); margin-bottom:1.2rem; }
.partner-placement-period > span { font:400 1rem var(--serif); }
.partner-placement-preview .partner-text-link { margin-top:.7rem; }
.partner-guide:lang(ko) :is(.partner-sample-story,.partner-delivery-grid,.partner-placement) { word-break:keep-all; }
@media screen and (hover:hover) and (pointer:fine) {
  .partner-page :where(#site-nav a,.stream-footer > a):hover { color:#8f4828; }
  .partner-guide :is(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a):hover { color:#8f4828; }
}
@media screen and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .partner-page :where(#site-nav a,.stream-footer > a):hover { transform:scale(1.03); }
  .partner-guide :is(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a):hover { transform:scale(1.03); }
}
@media (prefers-reduced-motion:reduce) {
  .partner-page :where(#site-nav a,.stream-footer > a) { transition:none; transform:none; }
  .partner-guide :is(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a) { transition:none; transform:none; }
}
@media print {
  .partner-page :where(#site-nav a,.stream-footer > a):is(:any-link,:focus-visible,:active) { color:inherit; transform:none; transition:none; }
  .partner-guide :is(.partner-text-link,.partner-brief-link,.partner-example h3 a,.partner-sample-photo figcaption a,.breadcrumbs a):is(:any-link,:focus-visible,:active) { color:inherit; text-decoration:none; transform:none; transition:none; }
}
@media (max-width:900px) {
  .partner-hero { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:2rem; }
  .partner-grid { gap:1rem; }
}
@media (max-width:760px) {
  .partner-commerce-grid { grid-template-columns:minmax(0,1fr); }
  .partner-hero, .partner-scope, .partner-grid, .partner-steps, .partner-contact, .partner-inquiry-form { grid-template-columns:minmax(0,1fr); }
  .partner-guide h1 { max-width:22ch; }
  .partner-guide:lang(ko) h1 { max-width:none; }
  .partner-hero { gap:1.5rem; }
  .partner-lead { margin-top:1rem !important; }
  .partner-contact-action .button { width:100%; }
  .partner-sample-spread, .partner-delivery-grid, .partner-placement { grid-template-columns:minmax(0,1fr); }
  .partner-sample-spread { gap:1.25rem; }
  .partner-sample-story h3 { max-width:24ch; }
  .partner-sample-actions .button { flex:1 1 10rem; }
  .partner-delivery-grid { gap:1.25rem; }
  .partner-inquiry-actions > * { flex:1 1 12rem; }
}
