/* R17 local demonstration presentation. No editorial master modified. */
/* Presentation layer only. The approved case, files, film and data remain intact. */
@font-face{font-family:"Inter ADVANS Demos";src:url("/assets/fonts/InterVariable.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--demo-navy:var(--r17-green);--demo-accent:var(--r17-green);--demo-paper:var(--r17-sage);--demo-white:#fff;--demo-line:color-mix(in srgb,var(--r17-green) 18.0%,transparent);--demo-muted:color-mix(in srgb,var(--r17-green) 72.0%,transparent)}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{background:var(--demo-paper);color:var(--demo-navy);font:400 16px/1.65 "Work Sans ADVANS",Inter,Arial,sans-serif;overflow-wrap:break-word}
button,input,select,textarea{font-family:inherit}
a{color:var(--demo-navy);text-underline-offset:.22em}
a:hover{color:var(--demo-accent)}
button,a.action{min-height:44px;border:1px solid var(--demo-navy);border-radius:2px;background:var(--demo-navy);color:var(--demo-white);font-size:14px;font-weight:550;padding:11px 18px;line-height:1.4}
a.action{display:inline-flex;align-items:center;justify-content:center}
button.secondary{border-color:var(--demo-navy);background:transparent;color:var(--demo-navy)}
button:hover,a.action:hover{background:var(--demo-accent);border-color:var(--demo-accent);color:var(--demo-white)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.table-wrap:focus-visible{outline:3px solid var(--demo-accent);outline-offset:4px}
.advans-demo-header{background:var(--demo-white);border-bottom:1px solid var(--demo-line)}
.advans-demo-header-inner{width:min(1200px,calc(100% - 80px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:90px;padding:18px 0}
.advans-demo-home{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;flex-shrink:0}
.advans-demo-home img{display:block;width:134px;height:40px;object-fit:contain}
.advans-demo-return{display:flex;align-items:center;justify-content:flex-end;gap:12px 24px;margin:0;padding:0;border:0;flex-wrap:wrap}
.advans-demo-return a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:550;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.ribbon{background:var(--demo-navy);color:var(--demo-white);padding:12px 24px;font-size:10px;font-weight:550;letter-spacing:.08em;line-height:1.6}
.wrap{width:min(1200px,calc(100% - 80px));max-width:none;padding:0;margin:0 auto}
.wrap>nav{padding:24px 0;border-color:var(--demo-line);font-size:13px;gap:20px}
.brand{font:600 21px/1.3 "Work Sans ADVANS",Inter,Arial,sans-serif;letter-spacing:-.035em}
.wrap>nav>.note{max-width:42ch;text-align:right}
.eyebrow{color:var(--demo-accent);font-size:11px;font-weight:650;letter-spacing:.13em;line-height:1.6}
h1,h2,h3,.price{font-family:"Work Sans ADVANS",Inter,Arial,sans-serif;color:var(--demo-navy)}
h1{font-size:clamp(36px,4.7vw,62px);font-weight:450;line-height:1.08;letter-spacing:-.05em;max-width:16ch;margin:16px 0 24px}
h2{font-size:clamp(25px,2.4vw,34px);font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:10px 0 20px}
h3{font-size:20px;font-weight:550;line-height:1.3;letter-spacing:-.025em}
p{max-width:68ch;margin:0 0 18px}
.hero{padding:52px 0 42px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:end}
.hero aside{border-left:1px solid var(--demo-line);padding-left:28px;font-size:14px}
.hero aside p:last-child{margin-bottom:0}
.note,.muted{color:var(--demo-muted);font-size:13px;line-height:1.65}
.panel{padding:34px 36px;background:var(--demo-white);border:1px solid var(--demo-line);border-radius:2px;margin:24px 0}
.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.panel.grid2{align-items:start}
.actions{gap:12px 22px;align-items:center;margin:22px 0}
.actions>a:not(.action){display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:550;max-width:100%;overflow-wrap:anywhere}
details{border-color:var(--demo-line);padding:18px 0}
summary{font-size:14px;font-weight:600;min-height:28px}
pre{background:var(--demo-paper);color:var(--demo-navy);font-size:12px;line-height:1.75;padding:20px;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
table{font-size:13px;line-height:1.6}
th,td{border-color:var(--demo-line);padding:14px;min-width:120px}
th{font-size:12px;font-weight:650;color:var(--demo-navy)}
.table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain}
.steps{padding-left:24px}
.steps li{padding-left:6px;margin:16px 0;font-size:15px}
footer{margin-top:48px;padding:28px 0 40px;border-color:var(--demo-line);color:var(--demo-muted);font-size:12px;line-height:1.8}
.advans-demo-video{grid-template-columns:minmax(0,7fr) minmax(220px,5fr);align-items:center!important;gap:40px}
.advans-demo-media{justify-self:center;display:flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;margin:0;padding:11px;background:var(--demo-paper);border:1px solid var(--demo-line);border-radius:3px}
.advans-demo-media video{display:block;width:auto;height:auto;max-width:100%;max-height:396px;aspect-ratio:9/16;object-fit:contain;background:var(--demo-white)}
.controls{display:flex;align-items:flex-end;gap:20px;margin:28px 0 16px}
label{font-size:12px;font-weight:600;color:var(--demo-navy)}
input,select,textarea{color:var(--demo-navy);border:1px solid color-mix(in srgb,var(--r17-green) 76%,white);background:var(--demo-white);border-radius:2px;min-height:44px;font-size:15px;line-height:1.5;padding:10px 12px}
input,select{min-width:240px;max-width:100%;margin-top:8px}
.bar{padding:16px 0 26px;border-top:1px solid var(--demo-line);font-size:13px}
.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
.card{border-color:var(--demo-line);padding-top:18px;min-width:0}
.card img{border-radius:2px;display:block;width:100%;aspect-ratio:1.3;object-fit:contain;background:var(--demo-white)}
.card .meta{color:var(--demo-muted);font-size:11px;gap:12px;line-height:1.5}
.card h3{font-size:19px;margin:12px 0 8px}
.card p{font-size:13px;line-height:1.6;min-height:44px}
.price{font-size:25px;font-weight:500;letter-spacing:-.035em;margin:14px 0 12px}
.price small{font-size:12px;font-weight:500;letter-spacing:0}
.card button{font-size:13px;min-height:44px;padding:10px 12px}
.empty{border-color:var(--demo-line);padding:24px;background:var(--demo-white)}
dialog{background:var(--demo-white);color:var(--demo-navy);border:1px solid var(--demo-line);border-radius:3px;padding:32px;max-width:680px;max-height:calc(100dvh - 40px);overflow:auto}
dialog::backdrop{background:rgba(0,0,0,.5)}
dialog h2{clear:left}
dialog .close{min-height:44px}
.dialog-image{width:180px;max-width:100%;object-fit:contain}
textarea{resize:vertical;min-height:180px;width:100%}
@media(max-width:900px){.advans-demo-header-inner,.wrap{width:calc(100% - 48px)}.hero{gap:32px}.panel{padding:28px}.advans-demo-video{grid-template-columns:minmax(0,1fr) minmax(190px,.65fr);gap:28px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}.controls{flex-wrap:wrap}}
@media(max-width:600px){.advans-demo-header-inner,.wrap{width:calc(100% - 40px)}.advans-demo-header-inner{min-height:82px;gap:16px;padding:16px 0;align-items:flex-start}.advans-demo-home img{width:110px;height:36px}.advans-demo-return{display:flex;flex-direction:column;align-items:flex-end;gap:0}.advans-demo-return a{min-height:44px;font-size:11px}.ribbon{font-size:9px;letter-spacing:.05em;padding:10px 20px}.wrap>nav{padding:20px 0;gap:16px;align-items:flex-start;flex-wrap:wrap}.wrap>nav>.note{text-align:left;font-size:11px}.brand{font-size:19px}.hero{display:block;padding:32px 0 20px}.hero h1{font-size:37px;max-width:18ch}.hero aside{margin:26px 0 12px;padding:18px 0 0;border-left:0;border-top:1px solid var(--demo-line);font-size:13px}.panel{padding:24px 20px;margin:20px 0}.panel h2{font-size:26px}.grid2,.advans-demo-video{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}.advans-demo-media{max-width:100%;margin:0 auto}.advans-demo-media video{max-height:296px}.actions{gap:8px 16px}.actions>a:not(.action){font-size:12px}.actions .action{width:100%}.table-wrap{margin-inline:-4px}.products{grid-template-columns:minmax(0,1fr);gap:30px}.card img{aspect-ratio:1.5}.card p{min-height:0}.card h3{font-size:21px}.controls{display:block;margin:24px 0}.controls label{margin:16px 0}.controls input,.controls select{width:100%;min-width:0}.bar{align-items:flex-start;gap:14px;flex-direction:column;padding:18px 0 24px}.bar button{width:100%}.dialog-image{float:none;margin:0 0 20px;width:100%;max-width:220px}dialog{padding:22px;width:calc(100% - 28px);max-height:calc(100dvh - 28px)}.steps{padding-left:20px}.steps li{font-size:14px}footer{margin-top:32px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.advans-demo-header{display:none!important}body{background:white;color:black;font-size:10pt}.wrap{width:100%;padding:0}.hero h1{font-size:28pt}.panel{border-color:#bbb;padding:14px;margin:12px 0;break-inside:avoid}.advans-demo-media{display:none}.ribbon{background:white;color:black;border-bottom:1px solid black}.products{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* R12: clear, neutral demonstration instead of a simulated shop front. */
body.ana-catalog-page,body.ana-case-page{background:#fff;color:var(--r17-green)}
.ana-catalog-page .ribbon,.ana-case-page .ribbon{background:var(--r17-sage);color:var(--r17-green);border-bottom:1px solid color-mix(in srgb,var(--r17-green) 16%,transparent)}
.ana-catalog-page .hero,.ana-case-page .hero{background:transparent;border:0}
.ana-catalog-page .hero h1,.ana-case-page .hero h1{font-size:clamp(32px,4vw,54px);max-width:22ch}
.ana-catalog-page .hero aside{background:var(--r17-sage);border-left:0;padding:24px}
.ana-catalog-page .products{gap:34px 28px}
.ana-catalog-page .card{background:#fff;border:0;border-top:1px solid color-mix(in srgb,var(--r17-green) 16%,transparent);padding:18px 0 0}
.ana-catalog-page .card img{height:auto;aspect-ratio:8/5;background:var(--r17-sage);object-fit:contain;border:0;border-radius:0}
.ana-catalog-page .card button{display:block;width:100%;margin:8px 0;font-size:12px}
.ana-catalog-page .card .price{font-size:23px}
.ana-catalog-page .card .price small{display:inline-block;font-size:11px}
.ana-catalog-page .dialog-image{width:100%;max-width:380px;height:auto;float:none;margin:0 0 24px}
.ana-case-context-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;margin-bottom:20px}
.ana-case-page .hero aside{border:0;padding:0}
.ana-case-page .hero aside p{font-size:12px}
.ana-case-page .panel{border:0;border-top:1px solid color-mix(in srgb,var(--r17-green) 16%,transparent);background:#fff;padding:32px 0;margin:24px 0}
.ana-case-product-photo{float:right;width:260px;max-width:40%;height:auto;margin:0 0 20px 30px}
.ana-process-details{margin:24px 0;border-top:1px solid color-mix(in srgb,var(--r17-green) 16%,transparent);border-bottom:1px solid color-mix(in srgb,var(--r17-green) 16%,transparent);padding:20px 0}
.ana-process-details>summary{font-size:15px;cursor:pointer}
.ana-process-details .panel{border:0;margin:10px 0 0}
@media(max-width:600px){.ana-catalog-page .hero h1,.ana-case-page .hero h1{font-size:34px}.ana-case-product-photo{float:none;width:100%;max-width:360px;margin:0 0 24px}.ana-catalog-page .hero aside{margin:24px 0 0}.ana-catalog-page .products{gap:30px}}

.ana-catalog-page .controls>label{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex:1;max-width:480px}
.ana-catalog-page .controls input,.ana-catalog-page .controls select{margin:0;width:100%}

/* Keep the fictional business exercise visibly connected to the publication. */
body.advans-r17{--demo-navy:var(--r17-green);--demo-accent:var(--r17-green);--demo-paper:var(--r17-paper);--demo-white:#fff;--demo-line:color-mix(in srgb,var(--r17-green) 22%,transparent);--demo-muted:var(--r17-green);background:var(--r17-paper);color:var(--r17-green)}
body.advans-r17 .advans-demo-header{background:var(--r17-paper)}
body.advans-r17 .advans-demo-header-inner{width:min(1280px,calc(100% - 80px))}
body.advans-r17 .advans-demo-home{gap:10px}
body.advans-r17 .advans-demo-home .fv-symbol{width:40px;height:40px}
body.advans-r17 .advans-demo-home .fv-wordmark{width:128px;height:auto}
body.advans-r17 .ribbon{background:var(--r17-green);color:var(--r17-paper);border:0}
body.advans-r17 .wrap{width:min(1280px,calc(100% - 80px))}
body.advans-r17 .hero{padding-block:48px 38px}
body.advans-r17 .hero h1{font-size:clamp(34px,4.3vw,58px);font-weight:450;max-width:21ch}
body.advans-r17 .hero aside{background:var(--r17-sage);padding:24px;border-radius:14px}
body.advans-r17 .hero aside img{border-radius:10px}
body.advans-r17 .panel{border:0;border-top:1px solid var(--demo-line);background:transparent;border-radius:0;padding-block:32px}
body.advans-r17 .panel.grid2{gap:40px}
body.advans-r17 button,body.advans-r17 a.action{border-radius:999px;background:var(--r17-green);color:var(--r17-paper)}
body.advans-r17 button:hover,body.advans-r17 a.action:hover{background:var(--r17-lime);color:var(--r17-green);border-color:var(--r17-lime)}
body.advans-r17 button.secondary{background:transparent;color:var(--r17-green)}
body.advans-r17 input,body.advans-r17 select,body.advans-r17 textarea{border-color:color-mix(in srgb,var(--r17-green) 76%,white);border-radius:8px}
body.advans-r17 .card img{background:var(--r17-sage);border-radius:12px}
body.advans-r17 .card{background:transparent;border-color:var(--demo-line)}
body.advans-r17 .card button{font-size:12px}
body.advans-r17 .advans-demo-media{background:var(--r17-sage);border-radius:12px}
body.advans-r17 .ana-process-details{border-color:var(--demo-line)}
body.advans-r17 dialog{background:var(--r17-paper);border-radius:14px}
body.advans-r17 footer:not(.ha-footer){background:transparent;color:var(--r17-green)}
@media(max-width:900px){body.advans-r17 .advans-demo-header-inner,body.advans-r17 .wrap{width:calc(100% - 48px)}}
@media(max-width:600px){body.advans-r17 .advans-demo-header-inner,body.advans-r17 .wrap{width:calc(100% - 40px)}body.advans-r17 .advans-demo-home .fv-symbol{width:32px;height:32px}body.advans-r17 .advans-demo-home .fv-wordmark{width:92px}body.advans-r17 .advans-demo-home{gap:7px}body.advans-r17 .advans-demo-header-inner{gap:12px}body.advans-r17 .hero{padding-block:30px 20px}body.advans-r17 .hero h1{font-size:clamp(32px,8vw,40px)}body.advans-r17 .panel.grid2{gap:24px}body.advans-r17 .hero aside{padding:22px 18px}body.advans-r17 .products .card button{width:100%}}

/* Same split action as the institutional page, without altering the exercise. */
body.advans-r17 a.action.fv-split{display:inline-flex;align-items:stretch;justify-content:flex-start;gap:2px;min-height:48px;padding:0;border:0;border-radius:0;background:transparent;color:var(--r17-green);text-decoration:none}
body.advans-r17 a.action.fv-split:hover{background:transparent;color:var(--r17-green);border:0}
body.advans-r17 .fv-split .fv-button-label{white-space:normal;text-align:center;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:600px){body.advans-r17 .actions>a.action.fv-split{width:fit-content;max-width:100%}body.advans-r17 .fv-split .fv-button-label{min-width:0;flex:1}body.advans-r17 .fv-split .fv-button-arrow{flex:0 0 48px}}
