/* One native disclosure affordance across the landing and quiz.
   Content, keyboard behavior and expanded states stay with HTML details. */
body details>summary,
body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details>summary,
body details.more-stories>summary{
 position:relative;display:block;box-sizing:border-box;list-style:none;
 min-height:56px;padding:14px 58px 14px 16px;border-radius:10px;
 font-family:var(--sans);font-size:17px;line-height:1.5;font-weight:600;
 text-decoration:none;color:#294334;cursor:pointer;touch-action:manipulation;
 transition:background-color .18s ease;
}
body details>summary::-webkit-details-marker{display:none}
body details>summary::marker{content:""}
body details>summary::after,
body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details>summary::after,
body details.more-stories>summary::after{
 content:"";position:absolute;inset:auto 16px auto auto;top:50%;
 width:28px;height:28px;box-sizing:border-box;transform:translateY(-50%);
 border:1px solid #bbc9b4;border-radius:50%;color:#3b5b42;
 background-color:#edf2e7;
 background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);
 background-position:center;background-size:12px 1.5px,1.5px 12px;background-repeat:no-repeat;
 -webkit-mask:none;mask:none;transition:background-color .18s ease,border-color .18s ease;
}
body details[open]>summary::after,
body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details[open]>summary::after,
body details.more-stories[open]>summary::after{
 content:"";transform:translateY(-50%);background-size:12px 1.5px,0 0;
 background-color:#e1ead8;border-color:#9aae91;
}
body details[open]>summary,
body :is(.assessment,.product-benefits,.faq-list,.europe) details[open]>summary{background-color:#edf2e8}
body details>summary:focus-visible{
 outline:3px solid #486748;outline-offset:3px;
}
/* Retire earlier inline plus/arrow marks; keep text and numbered explanations. */
body summary>.disclosure-icon,body summary>.more-stories-icon{display:none}
.product-benefits .construction-part>summary{
 display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;
 padding-left:12px;padding-right:54px;
}
.product-benefits .construction-part .part-explanation{padding:10px 16px 18px 46px}
.product-benefits .part-short,.more-stories-hint{font-weight:400}
.product-benefits .benefit-sources>summary>span{display:none}
.product-benefits .benefit-detail>summary{font-size:16px;padding-left:0;padding-right:42px}
.product-benefits .benefit-detail>summary::after{right:0}
.product-benefits .benefit-detail[open]>summary{background-color:transparent}
.product-benefits .benefit-film>p{padding-top:12px}
.product-benefits .benefit-source-grid{padding-top:16px}
body details.more-stories>summary{min-height:76px;padding-block:18px}
body details.more-stories[open]>summary{border-bottom:1px solid #d2d9cc;border-radius:10px 10px 0 0}
.more-stories{border-radius:12px}
/* Form help is visibly a tappable card, while answers stay immediately beneath it. */
.assessment .installation-details,.assessment .measurement-help,.assessment .estimate-method,
.assessment .auth-panel details,.assessment .photo-guide details,.assessment .reservation-demo details{
 padding:0;margin-block:14px;border:1px solid #ccd6c6;border-radius:12px;background:#fafcf7;
}
.assessment .photo-guide details{background:#f9fbf4}
.assessment .estimate-method{background:#f8faf4}
.assessment details[open]>summary{border-radius:11px 11px 0 0;border-bottom:1px solid #d5dece}
.assessment details>:not(summary){margin-inline:16px}
.assessment details>:last-child{margin-bottom:16px}
.assessment .measurement-guide{padding-top:16px}
.assessment .installation-details .field-grid{padding-block:16px 0}
.assessment .installation-details>label.field{padding-top:16px}
.assessment .installation-details .field-grid>.field{min-width:0}
.europe details[open]>p{padding-inline:16px}
.faq-list details>summary{padding-block:20px;min-height:70px}
.faq-list details>p{padding:14px 16px 20px;margin:0;font-size:17px;line-height:1.6}
/* The same icon on the dark footer, with sufficient foreground contrast. */
body .site-footer details>summary{color:#dce7d5;background:transparent;padding-left:0}
body .site-footer details>summary::after{color:#d4dfcb;border-color:#80947c;background-color:#ffffff0a}
body .site-footer details[open]>summary::after{color:#e7efdc;background-color:#ffffff12;border-color:#9bae90}
body .site-footer details>summary:focus-visible{outline-color:#c5d5b3}
@media(hover:hover){
 body details>summary:hover{background-color:#eef3e9}
 body .site-footer details>summary:hover{background-color:#ffffff08}
}
@media(max-width:720px){
 .assessment details>:not(summary){margin-inline:14px}
 .product-benefits .construction-part>summary{padding-block:12px}
 body details>summary,body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details>summary{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
 body details>summary,body details>summary::after,
 body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details>summary,
 body :is(.assessment,.product-benefits,.faq-list,.europe,.site-footer) details>summary::after,
 body details.more-stories>summary,body details.more-stories>summary::after{transition:none}
}
