.es-page { --es-rose: #9a5f72; --es-ink: #3f3944; }
.es-hero { padding: 36px 0 72px; background: linear-gradient(130deg,#faf5f3,#f1f5f7); }
.es-hero-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 44px; align-items: center; }
.es-page .eyebrow { color: var(--es-rose); }
.es-hero .h1 { font-size: clamp(28px,3.2vw,40px); line-height: 1.6; letter-spacing: -.03em; margin: 18px 0; }
.es-hero .h1 em { color: var(--es-rose); }
.es-lead { font-weight: 700; color: var(--es-ink); font-size: 16px; }
.es-description { color: #596676; font-size: 15px; line-height: 2; }
.es-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 26px; }
.es-actions .btn { white-space: normal; text-align: center; padding: 14px 22px; }
.es-actions .more { margin: 0; }
.es-board { padding: 32px; background: #fff; border: 1px solid #eadce0; border-radius: 24px; box-shadow: 0 14px 40px #9a5f720b; }
.es-board-label { font: 700 10px/1.7 Inter,sans-serif; letter-spacing: .13em; color: var(--es-rose); margin: 0; }
.es-board h2 { font-size: 23px; line-height: 1.65; color: var(--es-ink); margin: 18px 0 24px; }
.es-board-row { display: flex; gap: 18px; align-items: flex-start; border-top: 1px solid #ede6e9; padding: 19px 0; }
.es-board-row>span { font: 600 26px/1.5 Inter,sans-serif; color: #b68998; }
.es-board-row b { color: var(--es-ink); font-size: 16px; }
.es-board-row p { font-size: 12px; color: #667484; margin: 4px 0 0; }
.es-board-note,.es-note { color: #657583; font-size: 12px; line-height: 1.9; margin: 20px 0 0; }
.es-tint { background: #f6f2f3; }
.es-page .sec { padding: 72px 0; }
.es-page .h2 { font-size: clamp(24px,2.8vw,33px); }
.es-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.es-grid-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.es-card { padding: 28px; border: 1px solid #e5dce0; border-radius: 16px; background: #fff; }
.es-card>span,.es-content-flow article>span { font-size: 12px; font-weight: 700; color: var(--es-rose); }
.es-card h3,.es-content-flow h3 { font-size: 19px; line-height: 1.7; margin: 12px 0; }
.es-card h3 small { font-size: 11px; }
.es-card p,.es-content-flow p { font-size: 14px; line-height: 1.95; margin: 0; color: #596676; }
.es-content-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 16px; }
.es-content-flow article { align-self: stretch; padding: 25px; background: #f7f4f5; border-radius: 16px; }
.es-flow-arrow { color: var(--es-rose); font-size: 22px; }
.es-consult { background: #f3ecee; }
.es-consult>div>p:not(.eyebrow) { font-size: 15px; line-height: 2; }
.es-page a:focus-visible { outline: 3px solid #9a5f72; outline-offset: 5px; }
.sector-writing { display: grid; gap: 24px; }
.sector-example { border: 1px solid #e5dce0; border-radius: 16px; background: #fff; overflow: hidden; }
.sector-example>h3 { font-size: 19px; margin: 0; padding: 22px 28px; }
.sector-writing-grid { display: grid; grid-template-columns: 1fr 1.5fr; }
.sector-writing-grid>div { padding: 24px 28px; background: #f2f4f6; }
.sector-writing-grid>div+div { background: #faf6f3; border-left: 3px solid var(--es-rose); }
.sector-writing-grid span { font-size: 12px; font-weight: 700; color: var(--es-rose); }
.sector-writing-grid p,.sector-example-reason,.sector-data-note p { font-size: 14px; line-height: 1.95; margin: 12px 0 0; }
.sector-example .sector-example-reason { margin: 0; padding: 20px 28px; color: #596676; }
.sector-data-note { margin-top: 28px; padding: 28px; background: #edf3f5; border-left: 4px solid var(--es-rose); border-radius: 0 12px 12px 0; }
.sector-data-note h3 { font-size: 20px; line-height: 1.7; margin: 0; }
.sector-hero-art { margin: 0; background: #fff; border-radius: 22px; overflow: hidden; box-shadow: 0 16px 40px #283c4810; }
.sector-hero-art>img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.sector-photo-note { display: block; color: #657583; font-size: 10px; line-height: 1.7; margin-top: 12px; }
.sector-method .card.rule .h3 { font-size: 19px; line-height: 1.7; }
.sector-method .card.rule .p { font-size: 14px; line-height: 1.95; }
.sector-method .fp-priority { margin-bottom: 30px; }
.sector-hero-art figcaption { padding: 22px 24px; }
.sector-hero-art figcaption>b { font-size: 17px; line-height: 1.7; }
.sector-hero-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.sector-hero-tags span { font-size: 11px; color: var(--es-rose); background: #f5f3f1; padding: 5px 9px; border-radius: 6px; }
.sector-card-icon { width: 66px; height: 66px; padding: 10px; background: #f5f3f1; border-radius: 18px; color: var(--es-rose); margin-bottom: 16px; }
.sector-card-icon svg { display: block; width: 100%; height: 100%; }
.sector-message-map { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; margin-bottom: 28px; padding: 24px; border-radius: 16px; background: #fff; }
.sector-message-map>span { display: flex; gap: 16px; align-items: center; font-size: 15px; line-height: 1.8; }
.sector-message-map svg { width: 58px; height: 58px; flex-shrink: 0; color: var(--es-rose); }
.sector-message-map i { font-size: 28px; font-style: normal; color: var(--es-rose); }
.sector-visual-flow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.sector-visual-flow>li { position: relative; border: 1px solid #e5dce0; border-radius: 18px; background: #fff; padding: 24px; }
.sector-visual-flow>li:not(:last-child)::after { content: '→'; position: absolute; top: 59px; right: -26px; color: var(--es-rose); font-size: 26px; }
.sector-flow-art { display: flex; align-items: center; justify-content: center; position: relative; height: 120px; background: #f5f3f1; border-radius: 12px; color: var(--es-rose); }
.sector-flow-art svg { width: 80px; height: 80px; }
.sector-flow-number { position: absolute; left: 14px; top: 10px; font: 700 12px Inter,sans-serif; }
.sector-visual-flow h3 { font-size: 18px; line-height: 1.8; margin: 20px 0 12px; }
.sector-visual-flow p { font-size: 14px; line-height: 1.95; color: #596676; margin: 0; }
.sector-flow-detail { margin-top: 18px; border-top: 1px solid #e5dce0; padding-top: 14px; }
.sector-flow-detail summary { cursor: pointer; color: var(--es-rose); font-weight: 700; font-size: 12px; }
.sector-flow-detail p { margin-top: 14px; }
.sector-cycle { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 22px 0 0; padding: 12px 20px; background: #fff; border: 1px dashed var(--es-rose); border-radius: 12px; font-size: 14px; font-weight: 700; color: var(--es-rose); }
.sector-cycle svg { width: 30px; height: 30px; flex-shrink: 0; }
.sector-note-icon { float: left; color: var(--es-rose); width: 48px; height: 48px; margin: 0 16px 8px 0; }
.sector-data-note p { clear: both; }
.sector-flow-detail summary:focus-visible { outline: 3px solid var(--es-rose); outline-offset: 5px; }
@media(max-width:760px) {
 .sector-method .fp-priority { padding: 26px 18px; border-radius: 20px; }
 .sector-method .fp-heading h3 { font-size: 22px; line-height: 1.65; }
 .sector-method .fp-heading p { font-size: 14px; }
 .es-hero-grid:has(>.sector-hero-art) { display: flex; flex-direction: column; align-items: stretch; gap: 18px; }
 .es-hero-grid:has(>.sector-hero-art)>div:first-child { display: contents; }
 .es-hero-grid:has(>.sector-hero-art) .eyebrow { order: 0; margin-bottom: 0; }
 .sector-page .es-hero-grid:has(>.sector-hero-art) .h1 { order: 1; font-size: clamp(23px,6vw,30px); margin: 0; }
 .es-hero-grid>.sector-hero-art { order: 2; }
 .es-hero-grid:has(>.sector-hero-art) .es-description { order: 3; margin: 0; }
 .es-hero-grid:has(>.sector-hero-art) .es-actions { order: 4; margin-top: 0; }
 .sector-visual-flow { grid-template-columns: minmax(0,1fr); gap: 34px; }
 .sector-visual-flow>li:not(:last-child)::after { content: '↓'; top: auto; right: calc(50% - 10px); bottom: -31px; line-height: 30px; }
 .sector-message-map { grid-template-columns: minmax(0,1fr); gap: 10px; }
 .sector-message-map i { transform: rotate(90deg); justify-self: center; }
 .sector-message-map>span { font-size: 14px; }
 .sector-hero-art figcaption { padding: 20px; }
 .sector-writing-grid { grid-template-columns: minmax(0,1fr); }
 .sector-writing-grid>div,.sector-example>h3,.sector-example .sector-example-reason,.sector-data-note { padding: 22px; }
 .es-hero-grid,.es-grid,.es-grid-two,.es-content-flow { grid-template-columns: minmax(0,1fr); }
 .es-hero { padding-bottom: 40px; }
 .es-board { padding: 26px; }
 .es-page .sec { padding: 48px 0; }
 .es-flow-arrow { text-align: center; transform: rotate(90deg); }
 .es-card { padding: 24px; }
}

/* Article-grounded information architecture for industry detail pages. */
.sector-decisions{display:grid;gap:18px}
.sector-decision{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.4fr);border:1px solid #dedbd5;border-radius:16px;overflow:hidden;background:#fff}
.sector-decision-question{padding:28px 30px;background:var(--es-blush,#f7f5f1)}
.sector-decision-question>span{font-size:11px;letter-spacing:.12em;font-weight:700;color:var(--es-rose)}
.sector-decision-question h3{font-size:20px;line-height:1.65;margin:12px 0 0}
.sector-decision-answer{padding:28px 32px;align-self:center}
.sector-decision-answer p{margin:0;font-size:15px;line-height:1.9}
.sector-decision-answer .sector-decision-title{font-size:18px;font-weight:700;line-height:1.7;margin-bottom:8px}
.sector-reading{display:flex;flex-direction:column;gap:10px;border-top:1px solid #dedbd5;margin-top:28px;padding-top:20px;max-width:100%}
.sector-reading>span{font-size:12px;letter-spacing:.05em;color:#666}
.sector-reading>a{font-size:14px;line-height:1.8;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.sector-reading>a:hover{color:var(--es-rose)}
.sector-reading>a:focus-visible{outline:2px solid currentColor;outline-offset:5px;border-radius:2px}
.es-consult>.wrap>p:not(.eyebrow):not(.es-note){max-width:760px;margin-left:auto;margin-right:auto;line-height:1.9}
@media(max-width:700px){.sector-decision{grid-template-columns:minmax(0,1fr)}.sector-decision-question,.sector-decision-answer{padding:22px}.sector-decision-question h3{font-size:18px}.sector-decision-answer .sector-decision-title{font-size:17px}.sector-reading>a{font-size:13px}}

/* Commercial search intent: clear service title and comparison information. */
.sector-search-page .es-hero .h1{font-size:clamp(27px,3.1vw,42px);line-height:1.5;letter-spacing:-.025em}
.sector-benefit{font-weight:700;font-size:21px;line-height:1.8;margin:18px 0;color:var(--es-rose)}
.sector-service-summary{margin-top:34px;border-top:1px solid #ddd9d4;padding-top:24px}
.sector-service-summary>p{font-size:14px;line-height:1.9;margin:0 0 16px}
.sector-service-summary nav{display:flex;gap:10px;flex-wrap:wrap}
.sector-service-summary nav a{background:#fff;border:1px solid #dedbd5;border-radius:8px;padding:9px 13px;font-size:13px;text-decoration:none}
.sector-service-summary nav a:hover{color:var(--es-rose);border-color:currentColor}
.sector-service-summary nav a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.sector-search-page section[id]{scroll-margin-top:100px}
.sector-plans .es-card .sector-plan-price{font-size:17px;line-height:1.4;margin:16px 0}
.sector-plans .es-card .sector-plan-price b{font-size:44px;color:var(--es-rose)}
.sector-plans .es-card .sector-plan-price span{font-size:12px;margin-left:8px;color:#666;letter-spacing:0}
.sector-plan-annual{padding-top:15px;margin-top:18px!important;border-top:1px solid #e1ded9;font-weight:700}
.sector-production-flow{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:0}
.sector-production-flow li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:20px;padding:24px 0;border-bottom:1px solid #dedbd5}
.sector-production-flow li>span{font-size:24px;font-weight:700;color:var(--es-rose)}
.sector-production-flow h3{margin:0 0 8px;font-size:20px}
.sector-production-flow p{margin:0;font-size:15px;line-height:1.9}
.sector-parent-link{padding-top:24px;padding-bottom:24px;font-size:14px;line-height:1.9}
.sector-parent-link a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){
 .sector-search-page .es-hero-grid:has(>.sector-hero-art) .sector-benefit{order:2;margin:0;font-size:17px}
 .sector-search-page .es-hero-grid>.sector-hero-art{order:3}
 .sector-search-page .es-hero-grid:has(>.sector-hero-art) .es-description{order:4}
 .sector-search-page .es-hero-grid:has(>.sector-hero-art) .es-actions{order:5}
 .sector-search-page .es-hero .h1,.sector-search-page .es-hero-grid:has(>.sector-hero-art) .h1{font-size:26px;line-height:1.55}
 .sector-benefit{font-size:17px}.sector-service-summary{margin-top:24px}
 .sector-service-summary nav{gap:8px}.sector-service-summary nav a{font-size:12px;padding:8px 10px}
 .sector-production-flow li{grid-template-columns:34px minmax(0,1fr);gap:12px}
 .sector-production-flow h3{font-size:18px}
}

/* Realistic hair-salon website examples: photos + actual sample customer copy. */
.salon-preview-label{margin:4px 0 20px;padding:16px 20px;background:#f3f0ec;border-left:3px solid var(--es-rose)}
.salon-preview-label>span{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--es-rose)}
.salon-preview-label p{margin:7px 0 0;font-size:12px;line-height:1.8;color:#655c56}
.salon-preview{border:1px solid #ded7cf;border-radius:16px;overflow:hidden;background:#fcfaf6;box-shadow:0 18px 50px #233a4710;color:#393a32}
.salon-preview-bar{display:flex;align-items:center;gap:16px;padding:17px 24px;background:#ede9e1;border-bottom:1px solid #ded7cf;font-size:11px;letter-spacing:.07em;color:#655c56}
.salon-preview-dots{display:flex;gap:6px}.salon-preview-dots i{width:7px;height:7px;border-radius:50%;background:#c5bbb1}
.salon-preview-brand{margin-left:auto;font-family:Georgia,serif;letter-spacing:.17em;font-size:12px;color:#4c4a40}
.salon-example{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:stretch}
.salon-example-photo{position:relative;min-height:390px;overflow:hidden;background:#e6dfd3}
.salon-example-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:45% 50%}
.salon-example-photo>span{position:absolute;bottom:20px;left:22px;font-size:10px;letter-spacing:.16em;background:#fffdf4eb;padding:7px 10px;color:#4b493f}
.salon-example-copy{padding:42px 38px;align-self:center}
.salon-overline{font-family:Georgia,serif;font-size:11px;letter-spacing:.2em;color:#8c765c;margin:0 0 14px}
.salon-preview h3{font-size:24px;line-height:1.75;font-weight:500;letter-spacing:.025em;margin:0 0 18px;color:#393a32}
.salon-example-copy>p:not(.salon-overline):not(.salon-stylist-name){font-size:14px;line-height:2;margin:0 0 20px;color:#646459}
.salon-tags{display:flex;gap:7px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 20px}
.salon-tags li{font-size:10px;padding:5px 8px;border:1px solid #d4cabc;color:#6b614f;border-radius:3px}
.salon-style-details{margin:0 0 18px;font-size:12px;line-height:1.8}
.salon-style-details>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;padding:7px 0;border-bottom:1px solid #e5dfd5}
.salon-style-details dt{color:#827766}.salon-style-details dd{margin:0}
.salon-text-link{display:inline-block;font-size:12px;line-height:1.8;text-decoration:none;border-bottom:1px solid #8c765c;padding:6px 0;color:#5d5844}
.salon-text-link span{margin-left:12px}.salon-text-link:hover{color:#937446}.salon-text-link:focus-visible{outline:2px solid #937446;outline-offset:4px}
.salon-design-note{margin:0;padding:18px 24px;background:#f0ece5;font-size:12px;line-height:1.9;border-top:1px solid #e3dbd0;border-bottom:1px solid #e3dbd0;color:#6a6257}
.salon-design-note b{font-weight:700;margin-right:10px;color:#514a3e}
.salon-example-stylist{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.salon-example-stylist .salon-example-photo img{object-position:30% 50%}
.salon-stylist-name{font-size:25px;font-family:Georgia,serif;margin:0 0 18px;color:#4e4b3e}
.salon-stylist-name span{font-family:inherit;font-size:10px;letter-spacing:.14em;margin-left:10px;color:#8c765c}
.salon-menu{padding:40px 36px;background:#fffdf8;scroll-margin-top:100px}
.salon-menu-heading>p:not(.salon-overline){font-size:13px;line-height:1.9;color:#646459}
.salon-menu-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:30px;margin-top:24px}
.salon-menu-list{margin:0}.salon-menu-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #dfd7ca}
.salon-menu-list dt{font-size:14px;font-weight:700}.salon-menu-list dt span{display:block;font-size:10px;font-weight:400;line-height:1.8;margin-top:6px;color:#837965}
.salon-menu-list dd{margin:0;font-size:17px;font-family:Georgia,serif;white-space:nowrap;color:#544934}
.salon-menu-condition{font-size:11px;line-height:1.9;margin:18px 0 0;color:#7b7262}
.salon-booking-example{padding:25px;background:#eeeadf;border-radius:6px}
.salon-booking-example h4{font-size:16px;line-height:1.8;margin:0 0 10px}.salon-booking-example>p:not(.salon-overline){font-size:12px;line-height:1.9;margin:0 0 20px;color:#646459}
.salon-booking-example dl{margin:0}.salon-booking-example dl>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:11px 0}
.salon-booking-example dd{margin:0}.salon-booking-example .salon-total{border-top:1px solid #cfc5b2;padding-top:15px;align-items:center}.salon-total dd{font-size:24px;font-family:Georgia,serif}
.salon-booking-example button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:15px 18px;margin:20px 0 8px;background:#62654e;color:#fff;border:0;border-radius:4px;font:inherit;font-size:12px;opacity:1;cursor:default}
.salon-booking-example small{display:block;font-size:10px;color:#817969;text-align:center}
.salon-preview-after{margin-top:22px;font-size:14px;line-height:1.9}.salon-preview-after p{margin:0 0 12px}
@media(max-width:760px){
 .salon-preview-bar{padding:14px 16px;gap:10px;font-size:10px}.salon-preview-brand{display:none}
 .salon-preview-label{padding:14px 16px}.salon-preview-label p{font-size:11px}
 .salon-example,.salon-example-stylist{grid-template-columns:minmax(0,1fr)}
 .salon-example-photo{min-height:0;aspect-ratio:4/3}.salon-example-photo img{object-position:50% 40%}
 .salon-example-copy{padding:26px 22px}.salon-preview h3{font-size:20px;line-height:1.8}
 .salon-example-copy>p:not(.salon-overline):not(.salon-stylist-name){font-size:13px}
 .salon-example-stylist .salon-example-photo{grid-row:1}
 .salon-design-note{padding:16px 20px;font-size:11px}.salon-design-note b{display:block;margin-bottom:3px}
 .salon-style-details>div{grid-template-columns:104px minmax(0,1fr);gap:8px}
 .salon-menu{padding:28px 22px}.salon-menu-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .salon-menu-list dt{font-size:12px}.salon-menu-list dd{font-size:16px}.salon-booking-example{padding:22px}
}

/* Photo-led production process, scoped to the hair-salon example. */
.sector-photo-process{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 30px}
.sector-photo-step{position:relative;min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e4ded8;border-radius:14px;box-shadow:0 8px 25px #19374a06}
.sector-process-photo{position:relative;aspect-ratio:3/2;overflow:hidden;background:#ede8e2;border-radius:13px 13px 0 0}
.sector-process-photo img{width:100%;height:100%;object-fit:cover;display:block}
.sector-process-photo>span{position:absolute;left:20px;top:20px;display:flex;align-items:center;gap:10px;background:#fffdf8f2;padding:8px 13px;border-radius:5px;font-size:10px;letter-spacing:.13em;color:#805a66}
.sector-process-photo b{font-size:22px;letter-spacing:.03em}
.sector-process-copy{padding:25px 28px 28px;flex:1;display:flex;flex-direction:column}
.sector-process-copy .sector-process-stage{font-size:12px;color:var(--es-rose);font-weight:700;letter-spacing:.05em;margin:0 0 8px}
.sector-process-copy h3{font-size:22px;line-height:1.6;margin:0 0 13px;letter-spacing:-.02em}
.sector-process-copy>p:not(.sector-process-stage){font-size:14px;line-height:1.95;margin:0 0 24px;color:#536579}
.sector-process-outcome{margin-top:auto;background:#f5f2ee;border-left:3px solid #ab7785;padding:13px 15px;display:grid;gap:5px}
.sector-process-outcome span{font-size:10px;color:#8b6671;letter-spacing:.08em}
.sector-process-outcome strong{font-size:12px;font-weight:600;line-height:1.7}
.sector-photo-step:nth-child(odd)::after{content:'→';position:absolute;right:-29px;top:calc(50% - 17px);width:28px;text-align:center;font-size:21px;color:#a77685}
@media(max-width:760px){
 .sector-photo-process{grid-template-columns:minmax(0,1fr);gap:34px}
 .sector-process-copy{padding:23px 22px}.sector-process-copy h3{font-size:21px}
 .sector-process-copy>p:not(.sector-process-stage){font-size:13px;margin-bottom:20px}
 .sector-process-photo>span{left:15px;top:15px;padding:6px 11px}
 .sector-photo-step:nth-child(odd)::after,.sector-photo-step:nth-child(2)::after{content:'↓';top:auto;right:auto;bottom:-33px;left:calc(50% - 12px);width:24px;height:32px;font-size:22px;position:absolute;color:#a77685}
}

/* Industry-specific full homepage design samples. */
.sector-design-sample{background:#f4f6f7}
.sector-sample-figure{margin:0}
.sector-sample-open{display:block;border:1px solid #dbe1e6;border-radius:12px;overflow:hidden;text-decoration:none;background:#fff;box-shadow:0 14px 45px #18364712;transition:box-shadow .2s}
.sector-sample-open:hover{box-shadow:0 16px 50px #18364725}
.sector-sample-open:focus-visible{outline:3px solid var(--es-rose);outline-offset:5px}
.sector-sample-bar{display:flex;align-items:center;gap:18px;padding:12px 18px;background:#fff;color:#77818a;font-size:10px;border-bottom:1px solid #e3e6e8;letter-spacing:.1em}
.sector-sample-bar>span{color:#c3c8cc;font-size:9px;letter-spacing:.2em}.sector-sample-bar b{font-weight:500}.sector-sample-bar em{margin-left:auto;font-style:normal;color:#19394b;letter-spacing:0;font-size:12px}
.sector-sample-open img{display:block;width:100%;height:auto}
.sector-sample-figure figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:14px;font-size:12px;color:#5c6c7b;line-height:1.7}
.sector-sample-points{list-style:none;margin:24px 0 0;padding:0;display:flex;gap:12px;flex-wrap:wrap}
.sector-sample-points li{background:#fff;border:1px solid #dce2e6;padding:9px 13px;border-radius:5px;font-size:12px;color:#345163;line-height:1.7}
.sector-sample-points li::before{content:'✓';color:var(--es-rose);margin-right:8px}
@media(max-width:760px){.sector-sample-bar{padding:11px 12px;gap:10px;font-size:9px}.sector-sample-bar em{font-size:10px}.sector-sample-figure figcaption{flex-direction:column;gap:3px;font-size:11px}.sector-sample-points{gap:8px;margin-top:18px}.sector-sample-points li{font-size:11px;padding:7px 10px}}

/* Compact sample components alternate with their business rationale. */
.salon-parts{display:grid;gap:64px;margin-top:30px}
.salon-part-row{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:64px;align-items:center}
.salon-part-row:nth-child(even){grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)}
.salon-part-row:nth-child(even) .salon-part-sample{grid-column:2;grid-row:1}
.salon-part-row:nth-child(even) .salon-part-reason{grid-column:1;grid-row:1}
.salon-part-row+.salon-part-row{padding-top:64px;border-top:1px solid #dedbd5}
.salon-part-sample{min-width:0;width:100%;scroll-margin-top:100px;border-radius:12px}
.salon-part-sample .salon-preview-bar{padding:12px 16px;gap:12px;font-size:10px}
.salon-part-photo{height:192px;position:relative;overflow:hidden;background:#e6dfd3}
.salon-part-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 10%}
.salon-part-portrait img{object-position:50% 8%}
.salon-part-photo>span{position:absolute;bottom:12px;left:16px;font-size:9px;letter-spacing:.12em;background:#fffdf4eb;padding:5px 8px;color:#4b493f}
.salon-part-demo-copy{padding:23px 25px}
.salon-part-demo-copy .salon-overline{font-size:9px;margin-bottom:10px}
.salon-part-demo-copy h4{font-size:18px;line-height:1.75;font-weight:500;color:#393a32;margin:0 0 12px}
.salon-part-demo-copy>p:not(.salon-overline):not(.salon-part-name):not(.salon-part-conditions){font-size:12px;line-height:1.9;color:#646459;margin:0 0 14px}
.salon-part-demo-copy .salon-style-details{font-size:11px;margin-bottom:8px}
.salon-part-demo-copy .salon-style-details>div{grid-template-columns:92px minmax(0,1fr);gap:8px;padding:6px 0}
.salon-part-demo-copy .salon-text-link{font-size:11px;padding:5px 0}
.salon-part-name{font-family:Georgia,serif;font-size:21px;margin:0 0 10px}.salon-part-name span{font-size:9px;letter-spacing:.12em;margin-left:8px;color:#8c765c}
.salon-part-demo-copy .salon-menu-list>div{padding:10px 0;gap:12px}
.salon-part-demo-copy .salon-menu-list dt{font-size:12px}.salon-part-demo-copy .salon-menu-list dt span{font-size:10px;margin-top:2px}
.salon-part-demo-copy .salon-menu-list dd{font-size:16px}
.salon-part-conditions{font-size:11px;line-height:1.8;margin:13px 0;color:#7b7262}
.salon-part-total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;background:#eeeadf;border-radius:4px}
.salon-part-total>span{font-size:10px;line-height:1.8}.salon-part-total strong{font-size:23px;font-family:Georgia,serif;white-space:nowrap;font-weight:400}.salon-part-total small{font-size:10px}
.salon-part-booking{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 15px;margin-top:12px;background:#62654e;color:#fff;border:0;border-radius:4px;font:inherit;font-size:12px;opacity:1;cursor:default}
.salon-part-demo-note{display:block;text-align:center;font-size:10px;margin-top:6px;color:#817969}
.salon-part-number{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--es-rose);margin:0 0 17px}
.salon-part-reason h3{font-size:26px;line-height:1.65;letter-spacing:-.02em;margin:0 0 20px;color:#19344b}
.salon-part-reason>p:not(.salon-part-number):not(.salon-part-material){font-size:14px;line-height:2;color:#536579;margin:0 0 24px}
.salon-part-reason ul{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:18px}
.salon-part-reason li{padding-left:18px;border-left:2px solid #b9909c}
.salon-part-reason li strong{display:block;font-size:15px;line-height:1.7;margin-bottom:5px}
.salon-part-reason li span{display:block;font-size:13px;line-height:1.9;color:#536579}
.salon-part-material{font-size:11px;line-height:1.9;color:#65717d;margin:0;padding-top:16px;border-top:1px solid #dcdad6}
.salon-part-material b{display:block;font-size:11px;color:#9a5f72;margin-bottom:4px}
@media(max-width:1000px) and (min-width:761px){.salon-part-row,.salon-part-row:nth-child(even){gap:32px;grid-template-columns:repeat(2,minmax(0,1fr))}.salon-part-demo-copy{padding:20px}.salon-part-reason h3{font-size:23px}.salon-part-total{flex-wrap:wrap}}
@media(max-width:760px){
 .salon-parts{gap:40px;margin-top:24px}
 .salon-part-row,.salon-part-row:nth-child(even){grid-template-columns:minmax(0,1fr);gap:26px}
 .salon-part-row:nth-child(even) .salon-part-sample,.salon-part-row:nth-child(even) .salon-part-reason{grid-column:auto;grid-row:auto}
 .salon-part-row+.salon-part-row{padding-top:40px}
 .salon-part-sample{max-width:480px;margin:0 auto}
 .salon-part-photo{height:auto;aspect-ratio:16/9}
 .salon-part-demo-copy{padding:22px}
 .salon-part-reason h3{font-size:23px;margin-bottom:15px}
 .salon-part-number{margin-bottom:10px}
 .salon-part-reason>p:not(.salon-part-number):not(.salon-part-material){font-size:13px;margin-bottom:20px}
 .salon-part-reason li strong{font-size:14px}.salon-part-reason li span{font-size:12px}
 .salon-part-total{flex-wrap:wrap}
}

/* Show the completed website beside the opening copy, not in a separate section. */
.es-hero-grid:has(>.sector-hero-sample){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.sector-hero-sample{min-width:0;scroll-margin-top:110px}
.sector-hero-sample .sector-sample-bar{padding:11px 14px;gap:10px;font-size:9px}
.sector-hero-sample .sector-sample-bar em{font-size:10px}
.sector-hero-sample figcaption{font-size:11px;gap:8px;flex-wrap:wrap;margin-top:12px}
.sector-hero-sample-note{font-size:10px;line-height:1.8;color:#75818a;margin:8px 0 0}
@media(max-width:760px){
 .es-hero-grid:has(>.sector-hero-sample){display:flex;flex-direction:column;align-items:stretch;gap:18px}
 .es-hero-grid:has(>.sector-hero-sample)>div:first-child{display:contents}
 .es-hero-grid:has(>.sector-hero-sample) .eyebrow{order:0;margin-bottom:0}
 .es-hero-grid:has(>.sector-hero-sample) .h1{order:1;margin:0}
 .es-hero-grid:has(>.sector-hero-sample) .sector-benefit{order:2;margin:0;font-size:17px}
 .es-hero-grid>.sector-hero-sample{order:3;margin:0}
 .es-hero-grid:has(>.sector-hero-sample) .es-description{order:4;margin:0}
 .es-hero-grid:has(>.sector-hero-sample) .es-actions{order:5;margin-top:0}
}
.sector-search-page .es-hero-grid:has(>.sector-hero-sample) .h1{font-size:clamp(26px,2.4vw,34px);line-height:1.55}
