/* The laminate guide: photography, short explanations and public clinical records. */
.s-page-solution { padding-bottom:0 !important; }
.s-page-solution .w-book,.s-page-solution .w-quick { display:none !important; }
.s-page-solution #main { --content:1320px; }
.s-page-solution .breadcrumb { max-width:calc(1320px + 2*var(--gutter)); padding-top:28px; }
.l-page { --l-line:#d9e0e5; --l-muted:#677985; --l-blue:#87a0b6; color:#303332; background:#fff; font-size:16px; line-height:1.9; }
.l-page * { min-width:0; }
.l-page a,.l-page summary,.l-page button { transition:color .2s ease; text-decoration:none !important; }
.l-page a:hover,.l-page summary:hover { color:#728da4; }
.l-page p { margin:0 0 20px; }
.l-page p:last-child { margin-bottom:0; }
.l-page h1,.l-page h2,.l-page h3 { margin:0; font-weight:400; word-break:keep-all; overflow-wrap:normal; }
.l-page h2 { font-size:clamp(30px,2.9vw,44px); line-height:1.42; letter-spacing:-.055em; }
.l-page h3 { font-size:23px; line-height:1.5; letter-spacing:-.035em; }
.l-shell { width:100%; max-width:calc(1320px + 2*var(--gutter)); margin-inline:auto; padding-inline:var(--gutter); }
.l-section { padding-block:92px; scroll-margin-top:-72px; }
.l-page .l-label { display:block; margin:0 0 22px; color:#536775; font-size:10px; font-weight:500; letter-spacing:.12em; line-height:1.7; }
.l-page .l-small { color:var(--l-muted); font-size:12px; line-height:1.85; }
.l-page .l-inline-link { display:inline-flex; align-items:center; justify-content:space-between; gap:32px; padding-block:10px; font-size:13px; line-height:1.8; }
.l-inline-link > span { font-size:22px; font-weight:300; }
.l-prose { max-width:540px; }
.l-mobile-break { display:none; }
.l-prose p { margin-bottom:22px; }
.l-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr); column-gap:70px; padding-top:42px; }
.l-hero-copy { align-self:center; padding-block:14px 30px; }
.l-hero h1 { max-width:760px; margin-bottom:34px; font-size:clamp(36px,3.5vw,52px); line-height:1.37; letter-spacing:-.065em; }
.l-hero .l-small { margin-top:32px; }
.l-hero-photo { align-self:start; position:relative; }
.l-hero-photo > img { width:100%; height:570px; object-fit:cover; object-position:50% 38%; }
.l-hero-photo figcaption { display:flex; justify-content:space-between; gap:20px; margin-top:12px; color:#5a6268; font-size:11px; }
.l-contents { grid-column:1/-1; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 36px; margin-top:42px; border-block:1px solid var(--l-line); padding:15px 0; }
.l-contents a { display:flex; align-items:center; gap:40px; min-height:44px; font-size:13px; }
.l-contents a span { color:var(--l-muted); }
.l-film-section { display:grid; grid-template-columns:350px minmax(0,560px); justify-content:center; gap:90px; align-items:center; padding-block:84px; }
.l-film { width:100%; position:relative; }
.l-film-poster { display:block; position:relative; width:100%; aspect-ratio:9/16; overflow:hidden; background:#fff; }
.l-film-poster > img { width:100%; height:100%; object-fit:contain; }
.l-play { display:grid; place-items:center; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:66px; height:66px; color:#303332; background:rgba(255,255,255,.95); border:1px solid #e3e5e4; border-radius:50%; }
.l-play svg { width:26px; height:26px; fill:currentColor; margin-left:3px; }
.l-film-poster:hover .l-play { color:#7896af; }
.l-film-length { position:absolute; left:16px; bottom:16px; padding:4px 10px; background:rgba(30,32,31,.7); color:#fff; font-size:11px; }
.l-native-video { display:block; width:100%; height:auto; aspect-ratio:9/16; background:#151515; object-fit:contain; }
.l-film-error { margin-top:16px !important; font-size:13px; }
.l-film-copy h2 { margin-bottom:30px; }
.l-film-takeaway { margin-block:36px 22px; padding-block:24px; border-block:1px solid var(--l-line); }
.l-film-takeaway .l-label { margin-bottom:12px; }
.l-film-takeaway p { font-size:20px; line-height:1.7; }
.l-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:38px; }
.l-section-head > p { max-width:460px; }
.l-section-head .l-label { margin-bottom:16px; }
.l-case-preview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.l-case-foot { display:flex; justify-content:space-between; align-items:center; gap:28px; padding-top:20px; }
.l-case-foot p { margin:0; }
.l-page .l-after-note { margin-top:28px; }
.l-statement { display:grid; grid-template-columns:1fr 2fr; gap:60px; border-block:1px solid var(--l-line); padding-block:78px; }
.l-statement h2 { font-size:clamp(36px,3.8vw,56px); margin-bottom:32px; }
.l-statement h2 span { color:#7892a8; }
.l-statement .l-prose { max-width:650px; }
.l-lab-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:70px; align-items:center; }
.l-photo > div { width:100%; aspect-ratio:4/3; overflow:hidden; }
.l-photo img { width:100%; height:100%; object-fit:cover; }
.l-photo figcaption { margin-top:12px; font-size:11px; color:var(--l-muted); }
.l-lab-copy { padding-block:12px; }
.l-emphasis { font-size:20px; line-height:1.7; color:#405766; }
.l-visit-notes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px; margin-top:52px; padding-top:30px; border-top:1px solid var(--l-line); }
.l-visit-notes h3 { min-height:3em; margin-bottom:18px; }
.l-visit-notes .l-label { margin-bottom:16px; }
.l-visit-notes p { font-size:14px; }
.l-hours { font-size:30px; letter-spacing:-.02em; color:#577286; }
.l-check-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; border-top:1px solid var(--l-line); }
.l-check-photo { margin-top:36px; }
.l-check-photo > div { aspect-ratio:5/4; }
.l-check-list { align-self:center; list-style:none; padding:0; margin:0; }
.l-check-list li { display:grid; grid-template-columns:30px minmax(0,1fr); gap:20px; padding-block:25px; border-top:1px solid var(--l-line); }
.l-check-list li:first-child { padding-top:0; border:0; }
.l-check-list li:last-child { padding-bottom:0; }
.l-check-list li > span { color:#708a9d; font-size:12px; padding-top:6px; }
.l-check-list h3 { margin-bottom:12px; }
.l-check-list p { font-size:15px; }
.l-options { border-top:1px solid #4f5a60; }
.l-options > div { display:grid; grid-template-columns:1fr 1.65fr 2.1fr; gap:44px; padding:28px 0; border-bottom:1px solid var(--l-line); align-items:start; }
.l-options > .l-options-head { padding:16px 0; font-size:12px; color:var(--l-muted); }
.l-options h3 { font-size:21px; }
.l-options p { margin:0; font-size:15px; }
.l-doctor-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:110px; align-items:center; }
.l-doctor-photo { max-width:490px; }
.l-doctor-photo img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:50% 40%; }
.l-doctor-grid h2 { margin-bottom:30px; }
.l-page .l-doctor-name { font-size:29px; margin-bottom:30px; }
.l-doctor-name span { display:block; margin-top:4px; font-size:12px; color:var(--l-muted); }
.l-credentials { list-style:none; border-top:1px solid var(--l-line); margin:28px 0 18px; padding:22px 0 0; font-size:13px; line-height:2.2; }
.l-decisions { display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.l-decision { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:28px; align-items:start; }
.l-decision .story-copy { display:none; }
.l-decision-copy h3 { font-size:24px; margin-bottom:20px; }
.l-decision-copy .l-label { font-size:10px; margin-bottom:13px; letter-spacing:.025em; }
.l-decision-copy p { font-size:14px; }
.l-decision-reason { border-top:1px solid var(--l-line); padding-top:20px; margin-top:22px; }
.l-decision-copy .l-inline-link { gap:12px; font-size:12px; }
.l-weshenate { border-block:1px solid var(--l-line); }
.l-weshenate-word { font:400 clamp(42px,8.2vw,118px)/1.2 Georgia,'Times New Roman',serif; letter-spacing:-.055em; color:#7d97ac; margin-bottom:52px; }
.l-weshenate-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.l-principles { display:flex; gap:45px; margin-top:30px; font-size:13px; color:#536775; }
.l-principles span + span::before { content:'·'; margin-right:45px; }
.l-process-photos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.l-process-photos .l-photo > div { aspect-ratio:4/3; }
.l-process-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:28px; list-style:none; margin:42px 0 0; padding:0; }
.l-process-steps li { border-top:1px solid var(--l-line); padding-top:20px; position:relative; }
.l-step-number { display:block; font:400 32px/1.2 Georgia,serif; color:#819aad; margin-bottom:24px; }
.l-process-steps h3 { font-size:21px; margin-bottom:12px; }
.l-process-steps p { font-size:14px; }
.l-process-finish { display:flex; align-items:center; justify-content:space-between; gap:30px; border-top:1px solid var(--l-line); margin-top:40px; padding-top:28px; }
.l-process-finish p { font-size:14px; margin:0; }
.l-page .l-serif { font:400 clamp(34px,3vw,42px)/1.16 Georgia,'Times New Roman',serif; letter-spacing:-.055em; }
.l-case-carousel .w-cases-grid > .story { flex-basis:calc((100% - 84px)/4); }
.l-case-carousel .s-case-footer { margin-top:26px; }
.l-case-carousel .s-case-footer > p { margin:0; }
.l-faq-grid { display:grid; grid-template-columns:1fr 1.9fr; gap:100px; border-top:1px solid var(--l-line); }
.l-faq-grid header > p:last-child { font-size:14px; margin-top:24px; }
.l-faq-list { border-top:1px solid #4f5a60; }
.l-faq-list details { border-bottom:1px solid var(--l-line); }
.l-faq-list summary { display:flex; justify-content:space-between; gap:24px; align-items:center; min-height:80px; padding-block:23px; list-style:none; cursor:pointer; font-size:17px; }
.l-faq-list summary::-webkit-details-marker { display:none; }
.l-faq-plus { display:block; flex-shrink:0; font-size:23px; font-weight:300; transition:transform .2s; }
.l-faq-list details[open] .l-faq-plus { font-size:0; }
.l-faq-list details[open] .l-faq-plus::after { content:'−'; font-size:23px; }
.l-faq-answer { max-width:690px; padding:2px 35px 28px 0; font-size:15px; line-height:1.95; }
.l-last { text-align:center; border-top:1px solid var(--l-line); padding-block:94px 84px; }
.l-last h2 { font-size:clamp(32px,3.6vw,52px); margin-bottom:28px; }
.l-last > p:not(.l-label) { max-width:640px; margin-inline:auto; }
.l-sources { font-size:11px; color:var(--l-muted); margin:34px auto 0; max-width:550px; }
.l-sources summary { cursor:pointer; }
.l-sources ul { list-style:none; padding:14px 0 0; }

@media(max-width:1200px) {
  .l-hero { column-gap:40px; grid-template-columns:1.25fr .85fr; }
  .l-hero-photo > img { height:500px; }
  .l-hero h1 { font-size:40px; }
  .l-film-section { grid-template-columns:310px minmax(0,1fr); gap:65px; }
  .l-lab-grid,.l-check-grid,.l-doctor-grid,.l-weshenate-grid,.l-faq-grid { gap:50px; }
  .l-decisions { gap:36px; }
  .l-decision { display:block; }
  .l-decision-card { max-width:320px; margin-bottom:28px; }
  .l-decision-copy { max-width:440px; }
  .l-visit-notes { gap:28px; }
  .l-options > div { gap:28px; }
}
@media(max-width:767px) {
  .l-page { font-size:15px; line-height:1.9; }
  .l-shell { padding-inline:24px; }
  .l-section { padding-block:58px; scroll-margin-top:-40px; }
  .l-page h2 { font-size:30px; line-height:1.48; }
  .l-page h3 { font-size:21px; }
  .l-page .l-label { margin-bottom:18px; font-size:9px; }
  .l-page .l-small { font-size:11px; }
  .l-desktop-break { display:none; }
  .l-mobile-break { display:block; }
  .l-hero { grid-template-columns:1fr; padding-top:24px; }
  .l-hero-copy { padding:0; }
  .l-hero h1 { font-size:clamp(28px,7.4vw,38px); line-height:1.45; margin-bottom:26px; }
  .l-hero .l-small { margin-top:24px; }
  .l-hero-photo { display:none; }
  .l-contents { margin-top:28px; display:grid; grid-template-columns:1fr 1fr; column-gap:30px; row-gap:0; padding-block:8px; }
  .l-contents a { justify-content:space-between; gap:14px; font-size:11px; }
  .l-film-section { grid-template-columns:1fr; gap:26px; padding-top:48px; }
  .l-film { width:min(100%,310px); margin-inline:auto; }
  .l-film-copy { display:contents; }
  .l-film-copy > .l-label { grid-row:1; margin-bottom:-16px; }
  .l-film-copy h2 { grid-row:2; margin:0; }
  .l-film-copy > p:not(.l-label) { grid-row:3; margin:0; }
  .l-film { grid-row:4; }
  .l-film-takeaway { display:none; }
  .l-film-copy > a { justify-self:start; }
  .l-section-head { display:block; margin-bottom:28px; }
  .l-section-head > p { margin-top:20px; font-size:14px; }
  .l-section-head > .l-inline-link { margin-top:15px; }
  .l-case-preview { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:84%; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -webkit-overflow-scrolling:touch; padding-bottom:4px; }
  .l-case-preview::-webkit-scrollbar { display:none; }
  .l-case-preview > article { scroll-snap-align:start; }
  .l-case-foot { align-items:flex-start; gap:14px; flex-direction:column; padding-top:20px; }
  .l-case-foot .l-inline-link { padding-block:2px; }
  .l-statement { display:block; }
  .l-statement h2 { font-size:34px; margin-bottom:24px; }
  .l-lab-grid { grid-template-columns:1fr; gap:28px; }
  .l-lab-copy { padding:0; }
  .l-photo figcaption { font-size:10px; }
  .l-emphasis { font-size:18px; }
  .l-visit-notes { grid-template-columns:1fr; gap:26px; margin-top:30px; padding-top:28px; }
  .l-visit-notes > div + div { border-top:1px solid var(--l-line); padding-top:26px; }
  .l-visit-notes h3 { min-height:0; margin-bottom:14px; }
  .l-visit-notes .l-label { margin-bottom:12px; }
  .l-check-grid { grid-template-columns:1fr; gap:30px; }
  .l-check-photo { margin-top:26px; }
  .l-check-list li { grid-template-columns:24px 1fr; gap:16px; padding-block:22px; }
  .l-check-list p { font-size:14px; }
  .l-options > .l-options-head { display:none; }
  .l-options > div { display:block; padding-block:24px; }
  .l-options h3 { margin-bottom:12px; }
  .l-options p { font-size:14px; }
  .l-options p:last-child { color:#5d6a72; font-size:13px; margin-top:10px; }
  .l-doctor-grid { display:flex; flex-direction:column; gap:30px; }
  .l-doctor-photo { width:100%; max-width:450px; }
  .l-doctor-photo img { aspect-ratio:5/6; }
  .l-doctor-grid h2 { margin-bottom:24px; }
  .l-page .l-doctor-name { margin-bottom:24px; }
  .l-credentials { font-size:12px; line-height:2; }
  .l-credentials li + li { margin-top:6px; }
  .l-decisions { grid-template-columns:1fr; gap:42px; }
  .l-decision { display:grid; grid-template-columns:1fr; gap:24px; }
  .l-decision-card { max-width:none; margin:0; }
  .l-decision-copy { max-width:none; }
  .l-decision-copy h3 { font-size:27px; }
  .l-weshenate-word { font-size:clamp(39px,10.1vw,68px); margin-bottom:32px; }
  .l-weshenate-grid { grid-template-columns:1fr; gap:26px; }
  .l-principles { flex-direction:column; gap:6px; margin-top:22px; }
  .l-principles span + span::before { content:none; }
  .l-process-photos { grid-template-columns:1fr; gap:24px; }
  .l-process-steps { grid-template-columns:1fr; gap:0; margin-top:32px; }
  .l-process-steps li { padding:22px 0 22px 56px; }
  .l-step-number { position:absolute; top:24px; left:0; font-size:28px; }
  .l-process-steps h3 { margin-bottom:8px; }
  .l-process-steps p { font-size:14px; }
  .l-process-finish { display:block; margin-top:4px; }
  .l-process-finish a { margin-top:14px; }
  .l-page .l-serif { font-size:36px; }
  .l-faq-grid { grid-template-columns:1fr; gap:28px; }
  .l-faq-grid header > p:last-child { margin-top:18px; }
  .l-faq-list summary { min-height:76px; padding-block:20px; font-size:16px; gap:16px; }
  .l-faq-answer { padding:0 20px 24px 0; font-size:14px; }
  .l-last h2 { font-size:31px; margin-bottom:24px; }
  .l-last > p:not(.l-label) { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .l-page a,.l-page summary,.l-page button,.l-faq-plus { transition:none; }
  .l-case-preview { scroll-snap-type:none; }
}
@media(max-width:1100px) {
  .l-case-carousel .w-cases-grid { gap:24px; }
  .l-case-carousel .w-cases-grid > .story { flex-basis:calc((100% - 24px)/2); }
}
@media(max-width:767px) {
  .l-case-carousel .w-cases-grid { gap:18px; }
  .l-case-carousel .w-cases-grid > .story { flex-basis:calc((100% - 18px)/2); }
}
@media(max-width:600px) {
  .l-case-carousel .w-cases-grid > .story { flex-basis:82%; }
}
