/* Our Story page, from the supplied About Us reference. */
.dos-story-page{width:78%;max-width:1160px;text-align:center;padding:250px 0 300px}
.dos-story-page h1{font-family:'Fraunces',Georgia,serif;font-size:48px;font-weight:750;line-height:1.1;margin:0 0 48px}
.dos-story-page .rte{font-family:'Fraunces',Georgia,serif;font-size:clamp(22px,2.35vw,35px);font-weight:650;line-height:1.15}
.dos-story-page .rte p{margin:0 0 10px}
.dos-story-page .brand-page-image{width:65%;aspect-ratio:750/1230;background:#faf8f6;border:1px solid #aa8f9a;border-radius:48px;overflow:hidden;margin:140px auto 0}
.dos-story-page .brand-page-image img{width:100%;height:100%;object-fit:cover}
.template-story .header-inner{min-height:112px;width:86%}.template-story .header-inner .brand img{width:88px;height:auto}.template-story .category-nav{padding:0 8%;gap:24px;justify-content:space-between}.template-story .category-nav a{font-family:'Fraunces',Georgia,serif;font-size:16px;font-style:italic;font-weight:750}
.template-story .service-benefits{border-radius:25px 25px 0 0;padding:110px 0}.template-story .benefits-grid .icon{width:30px;height:30px}
@media(max-width:1024px){.dos-story-page{padding:160px 0 180px}.dos-story-page h1{font-size:40px}.dos-story-page .brand-page-image{margin-top:100px}.template-story .category-nav{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.template-story .category-nav a{flex:0 0 auto;white-space:nowrap;font-size:13px}}
@media(max-width:767px){.dos-story-page{width:calc(100% - 40px);padding:80px 0 100px}.dos-story-page h1{font-size:30px;margin-bottom:28px}.dos-story-page .rte{font-size:18px;line-height:1.35}.dos-story-page .rte p{margin-bottom:14px}.dos-story-page .brand-page-image{width:88%;margin-top:48px;border-radius:28px}.template-story .header-inner{min-height:80px}.template-story .header-inner .brand img{width:56px}.template-story .category-nav{padding:0 20px;gap:28px}.template-story .category-nav a{font-size:11px;min-height:58px}.template-story .service-benefits{padding:60px 0}.template-story .benefits-grid{grid-template-columns:1fr;gap:28px}.template-story .benefits-grid .rte,.template-story .benefits-grid>div>p{display:none}.template-story .benefits-grid .icon{width:26px;height:26px}}
/* Consistent guarantee icon rendering on Our Story. */
.template-story .benefits-grid .icon{display:inline-block;width:30px;height:30px;fill:none;stroke:#48172d;stroke-width:2;vertical-align:middle;overflow:visible}
@media(max-width:767px){.template-story .benefits-grid .icon{width:26px;height:26px}}

.story-return-links{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 64px;font:500 14px 'Fraunces',Georgia,serif}.story-return-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.story-return-links a:hover{text-decoration:underline}.template-story .dos-story-page{padding-top:100px}@media(max-width:767px){.template-story .dos-story-page{padding-top:32px}.story-return-links{margin-bottom:48px;font-size:13px}}

/* Flamingos and subtle geometric motifs from the revised Story reference. */
.dos-story-page{position:relative;isolation:isolate}.dos-story-page>h1,.dos-story-page>.rte,.dos-story-page>.brand-page-image,.dos-story-page>.story-return-links{position:relative;z-index:1}
.story-decorations{position:absolute;top:0;bottom:0;left:calc((100vw - 100%)/-2);width:100vw;pointer-events:none;z-index:0;overflow:hidden}
.story-flamingo{position:absolute;background-image:url('dos-story-reference.png');background-repeat:no-repeat}
.story-flamingo--right{right:0;top:140px;width:175px;height:480px;background-size:862.285714% 797.5%;background-position:100% 9.856631%}
.story-flamingo--left{left:0;top:48%;width:235px;height:290px;background-size:642.127659% 1320%;background-position:0% 36.065574%}
.story-flamingo--bottom{right:18%;bottom:0;width:337px;height:284px;background-size:447.774481% 1347.887324%;background-position:75.59727% 69.102709%}
.story-motif{position:absolute;display:block;width:86px;height:145px;opacity:.07;background:repeating-conic-gradient(#48172d 0% 25%,transparent 0% 50%) 0 0/42px 42px;clip-path:polygon(20% 0,80% 0,80% 32%,100% 32%,100% 65%,80% 65%,80% 100%,20% 100%,20% 65%,0 65%,0 32%,20% 32%)}
.motif-one{left:3%;top:110px}.motif-two{right:4%;top:560px}.motif-three{left:16%;top:44%}.motif-four{right:12%;bottom:500px}
@media(max-width:1024px){.story-flamingo--right{transform:scale(.65);transform-origin:top right;top:100px}.story-flamingo--left{transform:scale(.65);transform-origin:center left}.story-flamingo--bottom{transform:scale(.75);transform-origin:bottom right;right:10%}.story-motif{transform:scale(.7)}}
@media(max-width:767px){.story-flamingo--right{opacity:.35;transform:scale(.4);top:80px}.story-flamingo--left{transform:scale(.4);top:55%;opacity:.6}.story-flamingo--bottom{transform:scale(.5);right:0}.story-motif{transform:scale(.45)}.motif-two{top:430px}.motif-four{bottom:300px}.dos-story-page .rte{position:relative;z-index:2}}
/* Official supplied motif; retain its intrinsic color and opacity. */
.story-motif{width:101px;height:151px;background:url('motif.svg') center/contain no-repeat;clip-path:none;opacity:1}

/* Portrait campaign film fills the Story box without cropping or stretching. */
.dos-story-page .brand-page-image{aspect-ratio:9/16;position:relative;background:#000;overflow:hidden}
.dos-story-page .brand-page-image .story-campaign-video{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit;background:#000}
.dos-story-page .brand-page-image>img{width:100%;height:100%;object-fit:contain}
.story-video-setup{position:absolute;bottom:16px;left:16px;right:16px;background:#fff;color:#48172d;padding:12px;font-size:14px}
@media(max-width:767px){.dos-story-page .brand-page-image{width:100%;max-width:440px;aspect-ratio:9/16}}

/* Keep the flamingo heads visible while their bodies skim the page edges. */
.story-flamingo--right{right:-12px;top:140px;transform:none;opacity:1}
.story-flamingo--left{left:-12px}
.story-flamingo--bottom{bottom:0;right:18%}
@media(max-width:1024px){.story-flamingo--right{right:-8px;top:100px;transform:scale(.8);transform-origin:top right}.story-flamingo--left{left:-8px;transform:scale(.8);transform-origin:center left}.story-flamingo--bottom{transform:scale(.75);right:10%}}
@media(max-width:767px){.story-flamingo--right{right:-5px;top:110px;transform:scale(.5);opacity:1}.story-flamingo--left{left:-5px;top:55%;transform:scale(.5);opacity:1}.story-flamingo--bottom{transform:scale(.5);right:0}}

/* Full-page decoration canvas: the content inset must not clip the flamingos. */
.template-story .dos-story-page{width:100%;max-width:none;padding-inline:max(11%,calc((100% - 1160px)/2));overflow:visible}
.story-decorations{left:0;width:100%;overflow:visible}
.story-flamingo--right{right:0}
.story-flamingo--left{left:0}
@media(max-width:1024px){.story-flamingo--right{right:0}.story-flamingo--left{left:0}}
@media(max-width:767px){.template-story .dos-story-page{width:100%;padding-inline:20px}.story-flamingo--right{right:0}.story-flamingo--left{left:0}}


/* Keep the original flamingo and remove the video frame border. */
.story-flamingo--bottom{clip-path:none}
.dos-story-page .brand-page-image{border:0}

/* New lower flamingo sits flush with the right edge above the guarantees. */
.story-flamingo--base-right{right:0;bottom:0;width:200px;height:242.424px;background-image:url("story-flamingo-placement.png");background-size:567.424242% 263.125%;background-position:100% 20.306513%;clip-path:none}
@media(max-width:767px){.story-flamingo--base-right{width:132px;height:160px}}

/* Fluid Story layout from narrow phones through wide desktop screens. */
.template-story .dos-story-page{padding-top:clamp(32px,6vw,88px);padding-bottom:clamp(180px,20vw,300px);padding-inline:max(clamp(20px,10vw,160px),calc((100% - 1100px)/2))}
.dos-story-page h1{font-size:clamp(26px,3.1vw,44px);line-height:1.15;margin-bottom:clamp(24px,3vw,40px)}
.dos-story-page .rte{font-size:clamp(16px,2vw,29px);line-height:1.35}
.dos-story-page .rte p{margin-bottom:16px}
.story-return-links{font-size:clamp(12px,1.1vw,14px);margin-bottom:clamp(32px,4vw,60px);flex-wrap:wrap}
.dos-story-page .brand-page-image{width:min(100%,650px);max-width:650px;margin-top:clamp(40px,7vw,110px);border-radius:clamp(22px,3vw,42px);aspect-ratio:9/16}
.story-flamingo--base-right{width:clamp(110px,16vw,200px);height:auto;aspect-ratio:132/160}
.template-story .header-inner{min-height:clamp(76px,8vw,112px);gap:12px}
.template-story .service-benefits{padding-block:clamp(60px,8vw,110px)}
@media(max-width:767px){
.template-story .dos-story-page{padding-inline:24px;padding-bottom:190px}
.dos-story-page .rte{font-size:17px;line-height:1.45}
.dos-story-page .brand-page-image{width:100%;max-width:440px}
.story-flamingo--right{top:78px;transform:scale(.38)}
.story-flamingo--left{top:auto;bottom:35%;transform:scale(.4)}
.motif-one{left:0;top:80px}.motif-two{right:0;top:45%}.motif-three{left:0;top:64%}.motif-four{right:22%;bottom:70px}
.template-story .benefits-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.template-story .benefits-grid h2{font-size:14px;line-height:1.3}
.template-story .site-footer .footer-grid{min-width:0}
}
@media(max-width:374px){
.template-story .dos-story-page{padding-inline:18px}
.dos-story-page h1{font-size:25px}
.dos-story-page .rte{font-size:16px}
.story-return-links{gap:12px}
.story-flamingo--right{transform:scale(.3)}
}

/* Tighter Story copy rhythm across screen sizes. */
.dos-story-page .rte{line-height:1.2}
.dos-story-page .rte p{margin-bottom:10px}
@media(max-width:767px){.dos-story-page .rte{line-height:1.28}.dos-story-page .rte p{margin-bottom:10px}}

/* Give the final motif its own space beside the lower mobile flamingo. */
@media(max-width:767px){.story-decorations .motif-four{right:auto;left:22%;bottom:22px;transform:scale(.45);transform-origin:bottom center}}

/* Align Story copy with the campaign video's centered width. */
.dos-story-page .rte{width:min(100%,650px);max-width:650px;margin-inline:auto;padding-inline:0}
@media(max-width:767px){.dos-story-page .rte{max-width:440px}}


/* Exclude neighboring reference text from the right flamingo crop. */
.story-flamingo--right{clip-path:polygon(0 0,100% 0,100% 100%,45% 100%,45% 62%,25% 56%,20% 42%,0 30% )}


/* Preserve the full bird; cover only the neighboring text below its body. */
.story-flamingo--right{clip-path:none}
.story-flamingo--right::after{content:'';position:absolute;left:0;top:68%;width:28%;height:32%;background:#f3ece7;pointer-events:none}


/* Limit cleanup to the small lettering strip, clear of the flamingo. */
.story-flamingo--right::after{top:70%;width:12%;height:19%;background:#F4EDE8}


/* Cover the remaining reference-text glyph beside the bird's body. */
.story-flamingo--right::before{content:'';position:absolute;left:0;top:45%;width:12%;height:8%;background:#f3ece7;pointer-events:none}

